- 24 Feb, 2018 7 commits
-
-
Sergei Golubchik authored
set m_last_part to something meaningful when opening partitions
-
Sergei Golubchik authored
just as SHOW CREATE TABLE omits them from the index definition
-
Sergei Golubchik authored
copy the corresponding line from mysql_prepare_insert()
-
Sergei Golubchik authored
MDEV-15395 Wrong result or Assertion `old_part_id == m_last_part' failed in ha_partition::update_row on slave RBR cannot work with system versioning on the master. row_end column is either system time (not @@timestamp) with microsecond precision or transaction id. Either way, it'll certainly be different on the slave. So if the master row contains row_end column, it won't match on the slave. And if we ignore row_end when comparing, then some other row might match instead.
-
Sergei Golubchik authored
-
Sergei Golubchik authored
and few indentation changes
-
Sergei Golubchik authored
-
- 23 Feb, 2018 33 commits
-
-
Sergei Golubchik authored
-
Elena Stepanova authored
-
Sergei Golubchik authored
Remove 1668efb7 that introduced a special magic behavior for UNIX_TIMESTAMP() in the AS OF context
-
Sergei Golubchik authored
and delete few garbage-in-garbage-out tests
-
Sergei Golubchik authored
-
Aleksey Midenkov authored
-
Sergei Golubchik authored
-
Aleksey Midenkov authored
Vers SQL: force VERS_ALTER_HISTORY_KEEP behavior in the slave thread
-
Aleksey Midenkov authored
MDEV-15191 Assertion `bit < (map)->n_bits' failed in bitmap_is_set upon INSERT MDEV-15036 Assertion `!is_set() || (m_status == DA_OK_BULK && is_bulk_op())' in Diagnostics_area::set_ok_status or unexpected ER_RANGE_NOT_INCREASING_ERROR
-
Eugene Kosov authored
Vers_parse_info::fix_alter_info(): disallow DROP SYSTEM VERSIONING for system_time partitioned tables.
-
Sergei Golubchik authored
add a test case
-
Sergei Golubchik authored
-
Sergei Golubchik authored
-
Eugene Kosov authored
vers_insert_history_row(): do not insert rows with zero or negative lifetime. mysql_update(): properly handle error from vers_insert_history_row()
-
Aleksey Midenkov authored
Vers SQL: TRT fix getting TRX_ID by COMMIT_TS Fixed wrong assumption that records are ordered by COMMIT_TS. This is anyway a quick hack until tempesta-tech#314 is done. See also FIXME and TODO in TR_table::query(MYSQL_TIME, bool). Test: SEES case for trx_id.test [closes #456]
-
Sergei Golubchik authored
Lots of changes: * calculate the current history partition in ::external_lock(), not in ::write_row() or ::update_row() * remove dynamically collected per-partition row_end stats * no full table scan in open_table_from_share to calculate these stats, no manual MDL/thr_locks in open_table_from_share * no shared stats in TABLE_SHARE = no mutexes or condition waits when calculating current history partition * always compare timestamps, don't convert them to MYSQL_TIME (avoid DST ambiguity, and it's faster too) * correct interval handling, 1 month = 1 month, not 30 * 24 * 3600 seconds * save/restore first partition start time, and count intervals from there * only allow to drop first partitions if INTERVAL * when adding new history partitions, split the data in the last history parition, if it was overflowed * show partition boundaries in INFORMATION_SCHEMA.PARTITIONS
-
Sergei Golubchik authored
-
Sergei Golubchik authored
-
Sergei Golubchik authored
-
Sergei Golubchik authored
partition_info had a bunch of function pointers to avoid if()'s when invoking part_type specific functionality (like get_part_id, etc). But check_range_constants() and check_list_constants() were still invoked conditionally, with if()'s. Create partition_info::check_constants function pointer, get rid of if()'s Also remove alloc argument of check_range_constants(), added in 26a3ff0a. Broken system versioning will be fixed in following commits.
-
Sergei Golubchik authored
use include/have_xxx.inc when some feature needs to be present (because --xxx in the opt file will fail if the xxx is not compiled in) set variables in the test, not on the command line, to avoid unnecessary server restarts (they're must slower than SET).
-
Aleksey Midenkov authored
* TIMESTAMP precedence fixed.
-
Aleksey Midenkov authored
Unit-based history point (vers_history_point_t; Vers_history_point).
-
Aleksey Midenkov authored
Update partition stats on ha_partition::write_row()
-
Sergei Golubchik authored
-
Sergei Golubchik authored
SQL: DROP PERIOD FOR SYSTEM_TIME syntax and remove ER_VERS_SYS_FIELD_EXISTS originally by: Eugene Kosov
-
Sergei Golubchik authored
also, don't rotate versioning partitions for DELETE HISTORY originally by: Aleksey Midenkov
-
Sergei Golubchik authored
implement log-term TODO item, convert redundant if()-s into asserts.
-
Sergei Golubchik authored
don't allow to discover WITH SYSTEM VERSIONING clause originally by: Aleksey Midenkov
-
Sergei Golubchik authored
table might be NULL in ha_partition::engine_name() (test case pushed into 5.5)
-
Sergei Golubchik authored
-
Sergei Golubchik authored
-
Sergey Vojtovich authored
There is only one lock_sys. Allocate it statically in order to avoid dereferencing a pointer whenever accessing it. Also, align some members to their own cache line in order to avoid false sharing. lock_sys_t::create(): The deferred constructor. lock_sys_t::close(): The early destructor.
-