failed in TABLE_SHARE* tdc_acquire_share(THD*, const char*,
const char*, const char*, uint, uint, TABLE**)
Removed false assertions.
When multiple threads acquire the same previously unused share,
only one thread shall remove share from unused list (the one that
has was_unused == true). Other threads will ignore this step and
may continue even if share is not yet removed from unused list.
Added partition_exchange test.
Do not set HA_OPTION_PACK_RECORD for InnoDB specific row formats
(e.g. COMPACT, REDUNDANT). Adjusted mysql_compare_tables() accordingly.
information function. This solve the problem of uninitialised zone
that was detected by valgrind.
modified:
storage/connect/myconn.cpp
storage/connect/odbconn.cpp
storage/connect/tabfmt.cpp
storage/connect/tabutil.cpp
storage/connect/tabwmi.cpp
Following variables do not require LOCK_open protection anymore:
- table_def_cache (renamed to tdc_hash) is protected by rw-lock
LOCK_tdc_hash;
- table_def_shutdown_in_progress doesn't need LOCK_open protection;
- last_table_id use atomics;
- TABLE_SHARE::ref_count (renamed to TABLE_SHARE::tdc.ref_count)
is protected by TABLE_SHARE::tdc.LOCK_table_share;
- TABLE_SHARE::next, ::prev (renamed to tdc.next and tdc.prev),
oldest_unused_share, end_of_unused_share are protected by
LOCK_unused_shares;
- TABLE_SHARE::m_flush_tickets (renamed to tdc.m_flush_tickets)
is protected by TABLE_SHARE::tdc.LOCK_table_share;
- refresh_version (renamed to tdc_version) use atomics.
when deleting one key of a INI table with layout=Row. The same happens
for layout=column but this is normal as one line is one section.
modified:
storage/connect/tabsys.cpp
- Should fix a valgrind warning in CHRBLK::GetValPtrEx
modified:
storage/connect/valblk.cpp
* use sql_mode_for_dates() where appropriate.
* always specify an argument for sql_mode_for_dates()
(future-proof. easier to notice and fix if the caller
will start using thd from a local variable or an argument)
modified:
storage/connect/ha_connect.cc
storage/connect/ha_connect.h
storage/connect/plgdbsem.h
- Fiw a bug making records_in_range sometimes return a negative
value.
modified:
storage/connect/xindex.cpp
remove unused HA_CAN_EXPORT
(with the merge of "FLUSH TABLE <table_list> FOR EXPORT",
this functionality should be added back, but differently -
no table flag, handler::extra() returns an error instead)
special columns are processed. This will be documented.
Also some code cleanup and some changes to prepare the indexing of
nullable columns (not achieve yet)
modified:
storage/connect/colblk.cpp
storage/connect/colblk.h
storage/connect/connect.cc
storage/connect/connect.h
storage/connect/ha_connect.cc
storage/connect/ha_connect.h
storage/connect/macutil.cpp
storage/connect/mycat.cc
storage/connect/plgdbsem.h
storage/connect/reldef.cpp
storage/connect/reldef.h
storage/connect/table.cpp
storage/connect/tabmysql.cpp
storage/connect/tabmysql.h
storage/connect/tabodbc.h
storage/connect/tabtbl.cpp
storage/connect/tabutil.h
storage/connect/value.h
storage/connect/xindex.cpp
storage/connect/xindex.h
storage/connect/xtable.h
MDEV-4797 - Spider crash on show create table spider table and replication
multi source to one of the partitions
MDEV-4747 - Spider: add missing install_spider.sql
innodb_ft_user_stopword_table to DEFAULT
Setting plugin string variable with PLUGIN_VAR_MEMALLOC flag
to NULL causes server crash.
mysql-test/suite/sys_vars/r/innodb_ft_user_stopword_table_basic.result:
Reset innodb_ft_user_stopword_table. Also tests MDEV-4801.
mysql-test/suite/sys_vars/t/innodb_ft_user_stopword_table_basic.test:
Reset innodb_ft_user_stopword_table. Also tests MDEV-4801.
sql/sql_plugin.cc:
When we got NULL value, do not strdup(NULL).
Temorary fix for a number of replication tests (rpl.rpl_temp_table_mix_row
rpl.rpl_trunc_temp rpl.rpl_current_user rpl.rpl_gtid_master_promote):
- THD::decide_logging_format() should not assume that mysql.gtid_slave_pos is
a non-replicated table. This used to cause unintended behavior for COMMIT
statement: replication would switch to row-based, etc.
The question of what should be done when a user issues a statement that
explicitly modifies mysql.gtid_slave_pos table remains open.