Commit graph

177340 commits

Author SHA1 Message Date
kevg
9355e3e966 SQL: CREATE TABLE LIKE for versioned tables [fixes #146] 2017-05-05 20:36:29 +03:00
kevg
17745222a1 SQL: incorrect check on specific JOIN query [fixes #145] 2017-05-05 20:36:29 +03:00
kevg
204b54d2d9 SQL: create versioned tmp table from query [fixes #144] 2017-05-05 20:36:28 +03:00
kevg
b8bfc06b26 SQL, Tests: temporal_current_timestamp for setting default AS OF timestamp [closes #117] 2017-05-05 20:36:28 +03:00
Aleksey Midenkov
fc7da4dd4f IB, SQL: InnoDB partitioning [closes #118]
* native InnoDB partitioning for BY SYSTEM_TIME partitions.
2017-05-05 20:36:28 +03:00
kevg
fb801289f3 IB, Tests: ALTER with ALGORITHM=INPLACE for InnoDB [closes #87] 2017-05-05 20:36:28 +03:00
kevg
bcc8ba78bc SQL, Tests: versioning for nested queries and CTE [closes #74] 2017-05-05 20:36:27 +03:00
kevg
c9b2980c4f Scripts: fix Travis label in README.md 2017-05-05 20:36:27 +03:00
kevg
7aa3ebdd18 SQL, Tests: FOR SYSTEM_TIME for VIEWs [closes #98] 2017-05-05 20:36:27 +03:00
kevg
5853266fab Style: condition rewrite 2017-05-05 20:36:27 +03:00
Aleksey Midenkov
e7ac369a72 Scripts: print_warnings deps fix 2017-05-05 20:36:26 +03:00
kevg
94f83b262d SQL: fix assertion failure in parser [closes #119] 2017-05-05 20:36:26 +03:00
Aleksey Midenkov
64be66b6c0 Scripts: suppress warnings via suppress.warnings file [closes #78] 2017-05-05 20:36:26 +03:00
kevg
8be01458a3 Scripts: try to fix Travis 2017-05-05 20:36:26 +03:00
kevg
daa9bc8bdf Scripts: by default test versioning too 2017-05-05 20:36:26 +03:00
kevg
8378ddad2d Tests: disable tests failing in 10.3 2017-05-05 20:36:26 +03:00
Aleksey Midenkov
26a3ff0a22 SQL: (0.6) Pruning for VERSIONING partitions [closes #97]
* based on RANGE pruning by COLUMNS (sys_trx_end) condition
* removed DEFAULT; AS OF NOW is always last; current VERSIONING as last non-empty (or first empty)
* Min/Max stats in TABLE_SHARE
* ALTER TABLE ADD PARTITION adds before AS OF NOW partition
2017-05-05 20:36:25 +03:00
kevg
e069de7d9d SQL: TRUNCATE FOR SYSTEM_TIME BEFORE [closes #111] 2017-05-05 20:36:25 +03:00
Aleksey Midenkov
3a64d55aed Parser, SQL: table-specific FOR SYSTEM_TIME [closes #116]
* Syntax sugar: query-global QUERY FOR SYSTEM_TIME
2017-05-05 20:36:25 +03:00
kevg
57692d7117 SQL, IB: ALTER ADD AUTO_INCREMENT for versioned tables [closes #112] 2017-05-05 20:36:24 +03:00
kevg
c9e4ac4b72 0.6: truncate history feature [closes #96] 2017-05-05 20:36:24 +03:00
kevg
4c37011582 Tests: disabled failing (in 10.2) tests 2017-05-05 20:36:24 +03:00
kevg
abb2f9488d IB: skip sys_trx_start when comparing master and slave rows [closes #107] 2017-05-05 20:36:24 +03:00
Aleksey Midenkov
4383e16cbe IB: skip check_ref on historical record [fixes #101] 2017-05-05 20:36:23 +03:00
Aleksey Midenkov
ea60760e47 SQL: missed FOR SYSTEM_TIME ALL for FOR_SYSTEM_TIME_UNSPECIFIED
[fixes #105]
2017-05-05 20:36:23 +03:00
Aleksey Midenkov
27d9e762a9 SQL: prohibit write-locking of historic rows [fixes #102] 2017-05-05 20:36:23 +03:00
Aleksey Midenkov
46badf17c4 IB: FK cascade delete when parent versioned [fixes #101] 2017-05-05 20:36:23 +03:00
Aleksey Midenkov
412dd1e1f3 SQL: FOR SYSTEM_TIME support in VIEW expression [fixes #99] 2017-05-05 20:36:23 +03:00
Aleksey Midenkov
2157c6bfbc IB: misc cleanup 2017-05-05 20:36:22 +03:00
Aleksey Midenkov
e45b85eb3e SQL: replication from unversioned to versioned [fixes #94] 2017-05-05 20:36:22 +03:00
kevg
ef10ef98ab SQL: UPDATE on row-based replication [closes: #94] 2017-05-05 20:36:22 +03:00
kevg
41d9840850 SQL: remove unneded return value 2017-05-05 20:36:22 +03:00
Aleksey Midenkov
e851c140f4 SQL: (0.5) Versioned partitions [closes #77]
* one `AS OF NOW`, multiple `VERSIONING` partitions;
* rotation of `VERSIONING` partitions by record count, time period;
* rotation is multi-threaded;
* conventional subpartitions as bottom level for versioned partitions;
* `DEFAULT` keyword selects first `VERSIONING` partition;
* ALTER TABLE ADD/DROP partition;
* REBUILD PARTITION basic operation.
2017-05-05 20:36:21 +03:00
kevg
dc4ef66fee SQL: optimize FOR SYSTEM_TIME ALL queries [closes #85] 2017-05-05 20:36:21 +03:00
kevg
1dc021360b Scripts: valgrind with test suite 2017-05-05 20:36:21 +03:00
kevg
1742561b4e fix use-after-free [closes #89] 2017-05-05 20:36:21 +03:00
kevg
a17b8f707f 0.5: basic support for ALTER TABLE for InnoDB and other storage engines [closes #57] 2017-05-05 20:36:21 +03:00
kevg
65e900ff04 IB: remove unused function 2017-05-05 20:36:20 +03:00
Aleksey Midenkov
695c5aabad SQL: error on FOR SYSTEM_TIME without any versioned tables
[fixes #88]
2017-05-05 20:36:20 +03:00
kevg
1bedafb733 fix build and some warnings 2017-05-05 20:36:20 +03:00
kevg
48d924693f IB: do not insert into VTQ on optimized fields only update [closes #80] 2017-05-05 20:36:20 +03:00
Aleksey Midenkov
dd3099a00d SQL: unsupported engine fix for VTQ funcs 2017-05-05 20:36:19 +03:00
Aleksey Midenkov
6c516e77d5 IB: notify VTQ on innobase_commit_ordered() [fixes #79] 2017-05-05 20:36:19 +03:00
Aleksey Midenkov
eff649eba4 Parser: syntax extension FOR SYSTEM_TIME ALL 2017-05-05 20:36:19 +03:00
Aleksey Midenkov
9a7a9ae9b9 Scripts: capture_warnings.sh fix 2017-05-05 20:36:19 +03:00
kevg
53d9e614ae Scripts: reprint warnings fix 2017-05-05 20:36:19 +03:00
Aleksey Midenkov
a1c36f2e15 SQL: default NULL for sys fields + misc fixes
* sys fields are NULL by default (with exceptions, see comment about NOT_NULL_FLAG in #77);
* error codes renamed, messages cleared out;
* SHOW CREATE TABLE fixed;
* set_max() fix;
* redundant flag setters/getters removed;
* flags are set in sql_yacc.yy, redundant copy_info_about_generated_fields() eliminated.
2017-05-05 20:36:18 +03:00
kevg
b98f09fcbf Scripts: Three modes of warning printing.
WARN_MODE=early
print warnings at compilation stage

WARN_MODE=late
print warnings at build finish stage

WARN_MODE=both
print both at early and at later stages
2017-05-05 20:36:18 +03:00
Aleksey Midenkov
303d72a0f4 SQL: redundant error codes reduced
Replaced codes:

ER_NO_VERSIONED_FIELDS_IN_VERSIONED_TABLE
ER_MISSING_WITH_SYSTEM_VERSIONING
ER_SYS_START_NOT_SPECIFIED
ER_SYS_END_NOT_SPECIFIED
ER_MISSING_PERIOD_FOR_SYSTEM_TIME
ER_PERIOD_FOR_SYSTEM_TIME_CONTAINS_WRONG_START_COLUMN
ER_PERIOD_FOR_SYSTEM_TIME_CONTAINS_WRONG_END_COLUMN
ER_SYS_START_AND_SYS_END_SAME
ER_SYS_START_MORE_THAN_ONCE
ER_SYS_END_MORE_THAN_ONCE

with:

ER_VERS_WRONG_PARAMS
ER_VERS_FIELD_WRONG_TYPE
2017-05-05 20:36:18 +03:00
kevg
52a6812595 Scripts: flag to disable warnings reprinting 2017-05-05 20:36:18 +03:00