After review fix
Copy from internal state to share state only when in lock write
mode (happens only when lock table x write has been performed since
update_state_info is only called when holding a TL_READ_NO_INSERT
lock normally. Previous patch would have failed in combination with
delayed writes.
Ensure that 'null_value' is not accessed before val() is called in FIELD() functions
Fixed initialization of key maps. This fixes some problems with keys when you have more than 64 keys
Fixed that ROLLUP don't always create a temporary table. This fix ensures that func_gconcat.test results are now predictable
Analyze table corrupts the state on
data_file_length, records, index_file_length...
by writing the shared state when there is an updated internal
state due to inserts or deletes
Fixed by synching the shared state with the internal state before
writing it to disk
Added test cases of 2 error cases and a normal case in new
analyze test case
- support additional platforms (OpenBSD, Darwin)
- make use of /proc/cpuinfo CPU flag information
(needed to distinguish EMT64 Xeons from normal ones)
- chose the right CPU related options depending on
GCC version and target architecture
- check if the chosen CPU type is actually supported
by the GCC version , fallback to CPUs predecessor
until test compile succeeds
adding test
field.cc:
bug#10714 Inserting double value into utf8 column crashes server:
sprintf was executed with too big length, which caused
crash on some Windows platforms.
set_var.cc:
variables.result
variables.test
Bug #10904 Illegal mix of collations between a system variable and a constant
Changing coercibility of system variables to SYSCONST,
to be the same with USER(), DATABASE(), etc.
1.) Added a new option to mysql_lock_tables() for ignoring FLUSH TABLES.
Used the new option in create_table_from_items().
It is necessary to prevent the SELECT table from being reopend.
It would get new storage assigned for its fields, while the
SELECT part of the command would still use the old (freed) storage.
2.) Protected the CREATE TABLE and CREATE TABLE ... SELECT commands
against a global read lock. This prevents a deadlock in
CREATE TABLE ... SELECT in conjunction with FLUSH TABLES WITH READ LOCK
and avoids the creation of new tables during a global read lock.
3.) Replaced set_protect_against_global_read_lock() and
unset_protect_against_global_read_lock() by
wait_if_global_read_lock() and start_waiting_global_read_lock()
in the INSERT DELAYED handling.