Marko Mäkelä
fbe2712705
Merge 10.4 into 10.5
...
The functional changes of commit 5836191c8f
(MDEV-21168) are omitted due to MDEV-742 having addressed the issue.
2020-04-25 21:57:52 +03:00
Marko Mäkelä
af91266498
Merge 10.3 into 10.4
...
In main.index_merge_myisam we remove the test that was added in
commit a2d24def8c
because
it duplicates the test case that was added in
commit 5af12e4635
.
2020-04-16 12:12:26 +03:00
Aleksey Midenkov
105b879d0f
MDEV-21941 RENAME doesn't work for system time or period fields
...
- Ignore system-invisible fields (as well as for setting default value);
- Handle rename of system time and period fields.
2020-04-04 00:53:37 +03:00
Aleksey Midenkov
ba34f409ad
MDEV-21688 Assertion or ER_WARN_DATA_OUT_OF_RANGE upon ALTER on previously versioned table
...
Earlier skip of history row. Cleanup of dead code for VTMD.
2020-04-02 20:48:38 +03:00
Marko Mäkelä
09afd3da1a
Merge 10.3 into 10.4
2019-10-10 21:30:40 +03:00
Aleksey Midenkov
647a38818a
MDEV-16130 wrong error message adding AS ROW START to versioned table
2019-10-10 00:20:34 +03:00
Aleksey Midenkov
6684989801
versioning test suite fixes
...
Preparation for MDEV-16210:
replace.test:
key_type combinations: PK and UNIQUE.
foreign.test:
Preparation for key_type combinations.
Other fixes:
* Merged versioning.update2 into versioning.update;
* Removed test2 database and done individual drop instead.
2019-10-10 00:20:34 +03:00
Marko Mäkelä
60c04be659
Merge 10.3 into 10.4
2019-09-12 12:16:40 +03:00
Nikita Malyavin
f6a7730c45
MDEV-16490: It's possible to make a system versioned table without any versioning field
...
* do not allow versioned table to be without versioned (non-system) fields
* prohibit changing field versioning, when removing table versioning
* handle CREATE...SELECT as well
2019-09-09 20:14:47 +03:00
Sergei Golubchik
244f0e6dd8
Merge branch '10.3' into 10.4
2019-09-06 11:53:10 +02:00
Monty
a071e0e029
Merge branch '10.2' into 10.3
2019-09-03 13:17:32 +03:00
Marko Mäkelä
1d15a28e52
Merge 10.3 into 10.4
2019-08-14 18:06:51 +03:00
Aleksey Midenkov
39db116562
MDEV-18862 Unfortunate error message upon attempt to drop system versioning
...
Fix error code.
2019-08-14 11:58:58 +03:00
Aleksey Midenkov
0b74c8832d
MDEV-19127 Assertion `row_start_field' failed in vers_prepare_keys upon ALTER TABLE
...
Prevent conflicting clauses at parser level.
Clear HA_VERSIONED_TABLE flag for DROP SYSTEM VERSIONING (for the sake
of strictness).
2019-08-11 12:32:08 +03:00
Aleksey Midenkov
638e78853f
MDEV-18862 Unfortunate error message upon attempt to drop system versioning
...
Special case for DROP PERIOD when system fields are implicit.
2019-08-11 12:32:08 +03:00
Aleksey Midenkov
5851e668d7
MDEV-19304 Segfault in ALTER TABLE after UPDATE for SIMULTANEOUS_ASSIGNMENT
...
For MODE_SIMULTANEOUS_ASSIGNMENT it is required to return back field
offsets from record[1] to record[0]. 'continue' in warning branch did
skip of rfield->move_field_offset() call.
2019-08-11 12:32:08 +03:00
Sergei Golubchik
d199591cf2
generalize the error message
2019-05-18 20:34:03 +02:00
Marko Mäkelä
0bc4260226
Merge 10.3 into 10.4
2019-03-26 17:43:59 +02:00
Aleksey Midenkov
a138d061b5
MDEV-18869 Assertion `!((field)->vcol_info && (field)->stored_in_db())' failed in innodb_col_no upon altering table with system versioning
...
WITH/WITHOUT SYSTEM VERSIONING is not supported for generated columns
at parser level (see definition of field_def rule).
2019-03-26 15:04:06 +02:00
Sergei Golubchik
4abb8216a0
MDEV-17658 change the structure of mysql.user table
...
Implement User_table_json.
Fix scripts to use mysql.global_priv.
Fix tests.
2018-12-12 00:31:44 +01:00
Aleksey Midenkov
7c0779da7c
MDEV-16102 Wrong ER_DUP_ENTRY upon ADD UNIQUE KEY on versioned table
...
* ignore CHECK constraint for historical rows;
* FOREIGN KEY test case.
TODO:
MDEV-16301 IB: use real table name for error messages on ALTER
Closes tempesta-tech/mariadb#491
Closes #748
2018-06-30 16:12:45 +02:00
Aleksey Midenkov
b1e75d290e
MDEV-14823, MDEV-15956 Versioning error messages fixes
...
MDEV-14823 Wrong error message upon selecting from a system_time partition
MDEV-15956 Strange ER_UNSUPPORTED_ACTION_ON_GENERATED_COLUMN upon ALTER on versioning column
2018-05-12 10:16:46 +02:00
Eugene Kosov
fe10bf870c
MDEV-15893 Rename VTQ to TRT
2018-05-12 10:16:46 +02:00
Aleksey Midenkov
689f83d0ce
MDEV-14790 System versioning for system tables does not work as expected
...
disallow system versioning for tables in mysql database
2018-04-10 13:12:36 +02:00
Sergei Golubchik
9fa715b84d
MDEV-14798 Add, drop system versioning semantic and syntax
...
SQL: DROP PERIOD FOR SYSTEM_TIME syntax
and remove ER_VERS_SYS_FIELD_EXISTS
originally by: Eugene Kosov
2018-02-23 15:33:22 +01:00
Sergei Golubchik
4fd48678ae
ALTER TABLE ... DROP COLUMN sys_start
...
update all unique keys, not just PK
2018-02-12 14:14:35 +01:00
Sergei Golubchik
dfd42ed990
ALTER TABLE ... DROP COLUMN sys_start should rename a "dropped" column
2018-02-12 14:14:35 +01:00
Sergei Golubchik
c847089e6e
Cannot DROP VERSIONING without dropping all visible AS ROW fields
2018-02-12 13:46:08 +01:00
Sergei Golubchik
f3a49e7020
Don't allow adding AS ROW START column to a not versioned table
2018-02-12 13:46:08 +01:00
Sergei Golubchik
bc0ac28f69
ALTER TABLE ... DROP VERSIONING
...
don't add columns to the drop list, INVISIBLE_SYSTEM columns
cannot be recognized as specified by the user
2018-02-12 13:46:07 +01:00
Sergei Golubchik
5d3bae242c
remove dead VERS_EXPERIMENTAL code
...
changed to use DBUG keywords instead,
so that the code is compiled and tested
added tests.
2018-01-13 02:01:34 +01:00
Eugene Kosov
f96b1a4e39
MDEV-14798 Add, drop system versioning semantic and syntax
2018-01-12 21:20:23 +01:00
Sergei Golubchik
b85efdc3af
rename system_time columns
...
sys_trx_start -> row_start
sys_trx_end -> row_end
2018-01-09 15:49:07 +03:00
Sergei Golubchik
ca4dbcff69
Tests: system columns *not* being auto-renamed (create, alter)
...
it's correct, they preserve their documented names
2018-01-09 14:18:39 +03:00
Sergei Golubchik
35b679b924
SQL: error messages
...
remove unused error messages
reword ER_VERS_SYS_FIELD_NOT_HIDDEN->ER_VERS_SYS_FIELD_EXISTS
2018-01-09 14:16:47 +03:00
Eugene Kosov
dbf21ff396
MDEV-14787 CREATE does not allow tables with versioning columns only, but ALTER does
2018-01-03 15:51:23 +03:00
Eugene Kosov
157150cfcf
MDEV-14769 Temporary table can be altered into system versioning + system_versioning_alter_history has no effect
2018-01-01 23:37:02 +03:00
Eugene Kosov
0fe67f2ef9
MDEV-14744 Assertion `table->versioned() == m_prebuilt->table->versioned()' failed in ha_innobase::open
2017-12-29 00:23:07 +03:00
Eugene Kosov
d8aabb44b5
SQL: prohibit ALTER ... AS ROW START|END [ fixes #429 ]
2017-12-25 13:38:03 +03:00
Eugene Kosov
a04a283469
MDEV-14692 Server crash in MDL_ticket::has_stronger_or_equal_type
...
SQL: disable system-versioning stuff on TEMPORARY tables
2017-12-21 10:14:25 +03:00
Eugene Kosov
acdfacee75
IB: TRT is not updated on ADD SYSTEM VERSIONING [ fixes #413 ]
2017-12-20 22:46:28 +03:00
Eugene Kosov
4bc268d406
MDEV-14632 Assertion `!((new_col->prtype ^ col->prtype) & ~256U)' failed in row_log_table_apply_convert_mrec
...
SQL, IB: proper fix is to disable unimplemented Online DDL for system-versioned tables inside InnoDB
2017-12-20 19:42:15 +03:00
Eugene Kosov
b13f1cc59a
MDEV-14681 Bogus ER_UNSUPPORTED_EXTENSION
2017-12-20 16:41:42 +03:00
Aleksey Midenkov
fc21529f14
MDEV-14683 Possible redundancy in error codes
...
ER_VERS_GENERATED_ALWAYS_NOT_EMPTY vs ER_VERS_ALTER_SYSTEM_FIELD
Related to #310 (91ba4f04be
).
2017-12-19 21:55:40 +03:00
Aleksey Midenkov
ee68d019d1
SQL: removed VERS_HIDDEN_FLAG [ closes #409 ]
2017-12-19 16:12:56 +03:00
Aleksey Midenkov
b55a149194
Timestamp-based versioning for InnoDB [ closes #209 ]
...
* Removed integer_fields check
* Reworked Vers_parse_info::check_sys_fields()
* Misc renames
* versioned as vers_sys_type_t
* Removed versioned_by_sql(), versioned_by_engine()
versioned() works as before;
versioned(VERS_TIMESTAMP) is versioned_by_sql();
versioned(VERS_TRX_ID) is versioned_by_engine().
* create_tmp_table() fix
* Foreign constraints for timestamp-based
* Range auto-specifier fix
* SQL: 1-row partition rotation fix [fixes #260 ]
* Fix 'drop system versioning, algorithm=inplace'
2017-12-18 19:03:51 +03:00
Eugene Kosov
9b55cc73f1
SQL, IB: unversioned fields with ALTER TABLE [ fixes #401 ]
2017-12-15 20:37:36 +03:00
Aleksey Midenkov
4624e565f3
System Versioning 1.0 pre6
...
Merge remote-tracking branch 'mariadb/bb-10.3-temporal-serg' into trunk
2017-12-15 18:12:18 +03:00
Sergei Golubchik
f149013393
rename versioning_* variables
2017-12-14 11:31:44 +01:00
Sergei Golubchik
a1141e226d
fix nullable autoinc test w/o versioning
2017-12-13 21:44:31 +01:00