mirror of
				https://github.com/MariaDB/server.git
				synced 2025-10-31 02:46:29 +01:00 
			
		
		
		
	
		
			
				
	
	
		
			134 lines
		
	
	
	
		
			2.7 KiB
		
	
	
	
		
			Text
		
	
	
	
	
	
			
		
		
	
	
			134 lines
		
	
	
	
		
			2.7 KiB
		
	
	
	
		
			Text
		
	
	
	
	
	
| --echo #
 | |
| --echo # Start of 10.4 tests
 | |
| --echo #
 | |
| 
 | |
| --echo #
 | |
| --echo # MDEV-18153 Assertion `0' or Assertion `btr_validate_index(index, 0)' failed in row_upd_sec_index_entry or error code 126: Index is corrupted upon UPDATE with TIME_ROUND_FRACTIONAL
 | |
| --echo #
 | |
| 
 | |
| SET sql_mode=DEFAULT;
 | |
| 
 | |
| --echo # OK: same FSP + virtual index
 | |
| 
 | |
| CREATE TABLE t1 (
 | |
|   t DATETIME(4),
 | |
|   d DATETIME,
 | |
|   v DATETIME(4) AS (t) VIRTUAL,
 | |
|   KEY(v,d)
 | |
| );
 | |
| DROP TABLE t1;
 | |
| 
 | |
| CREATE TABLE t1 (
 | |
|   t DATETIME(4),
 | |
|   d DATETIME,
 | |
|   v DATETIME(4) AS ('2001-01-01 10:20:30.1234') VIRTUAL,
 | |
|   KEY(v,d)
 | |
| );
 | |
| DROP TABLE t1;
 | |
| 
 | |
| 
 | |
| --echo # OK: lower FSP + no virtual index
 | |
| 
 | |
| CREATE TABLE t1 (
 | |
|   t DATETIME(4),
 | |
|   d DATETIME,
 | |
|   v DATETIME(3) AS (t) VIRTUAL
 | |
| );
 | |
| DROP TABLE t1;
 | |
| 
 | |
| 
 | |
| CREATE TABLE t1 (
 | |
|   t DATETIME(4),
 | |
|   d DATETIME,
 | |
|   v DATETIME(3) AS ('2001-01-01 10:20:30.1234') VIRTUAL
 | |
| );
 | |
| DROP TABLE t1;
 | |
| 
 | |
| 
 | |
| --echo # NOT OK: lower FSP + virtual index
 | |
| 
 | |
| --error ER_GENERATED_COLUMN_FUNCTION_IS_NOT_ALLOWED
 | |
| CREATE TABLE t1 (
 | |
|   t DATETIME(4),
 | |
|   d DATETIME,
 | |
|   v DATETIME(3) AS (t) VIRTUAL,
 | |
|   KEY(v,d)
 | |
| );
 | |
| 
 | |
| --error ER_GENERATED_COLUMN_FUNCTION_IS_NOT_ALLOWED
 | |
| CREATE TABLE t1 (
 | |
|   t DATETIME(4),
 | |
|   d DATETIME,
 | |
|   v DATETIME(3) AS (COALESCE(t)) VIRTUAL,
 | |
|   KEY(v,d)
 | |
| );
 | |
| 
 | |
| --error ER_GENERATED_COLUMN_FUNCTION_IS_NOT_ALLOWED
 | |
| CREATE TABLE t1 (
 | |
|   t DATETIME(4),
 | |
|   d DATETIME,
 | |
|   v DATETIME(3) AS ('2001-01-01 10:20:30.1234') VIRTUAL,
 | |
|   KEY(v,d)
 | |
| );
 | |
| 
 | |
| 
 | |
| --echo # OK: lower FSP + ROUND + virtual index
 | |
| SET sql_mode=DEFAULT;
 | |
| CREATE TABLE t1 (
 | |
|   t DATETIME(4),
 | |
|   d DATETIME,
 | |
|   v DATETIME(3) AS (ROUND(t,3)) VIRTUAL,
 | |
|   KEY(v,d)
 | |
| );
 | |
| INSERT IGNORE INTO t1 (t,d) VALUES ('2006-03-01 12:44:34.0496','2029-10-10 21:27:53');
 | |
| SELECT * FROM t1;
 | |
| SET SQL_MODE= 'TIME_ROUND_FRACTIONAL';
 | |
| UPDATE IGNORE t1 SET d = NOW();
 | |
| DROP TABLE t1;
 | |
| SET sql_mode=DEFAULT;
 | |
| 
 | |
| 
 | |
| --echo # OK: lower FSP + TRUNCATE + virtual index
 | |
| SET sql_mode=DEFAULT;
 | |
| CREATE TABLE t1 (
 | |
|   t DATETIME(4),
 | |
|   d DATETIME,
 | |
|   v DATETIME(3) AS (TRUNCATE(t,3)) VIRTUAL,
 | |
|   KEY(v,d)
 | |
| );
 | |
| INSERT IGNORE INTO t1 (t,d) VALUES ('2006-03-01 12:44:34.0496','2029-10-10 21:27:53');
 | |
| SELECT * FROM t1;
 | |
| SET SQL_MODE= 'TIME_ROUND_FRACTIONAL';
 | |
| UPDATE IGNORE t1 SET d = NOW();
 | |
| DROP TABLE t1;
 | |
| SET sql_mode=DEFAULT;
 | |
| 
 | |
| --echo #
 | |
| --echo # MDEV-20423 Assertion `0' failed or `btr_validate_index(index, 0, false)' in row_upd_sec_index_entry or error code 126: Index is corrupted upon DELETE with TIME_ROUND_FRACTIONAL
 | |
| --echo #
 | |
| 
 | |
| --error ER_GENERATED_COLUMN_FUNCTION_IS_NOT_ALLOWED
 | |
| CREATE TABLE t1 (
 | |
|   a DATETIME(6),
 | |
|   v VARCHAR(30) GENERATED ALWAYS AS (CAST(a AS DATETIME(3))) VIRTUAL,
 | |
|   KEY (v)
 | |
| );
 | |
| 
 | |
| CREATE TABLE t1 (
 | |
|   a DATETIME(6),
 | |
|   v VARCHAR(30) GENERATED ALWAYS AS (TRUNCATE(a,3)) VIRTUAL,
 | |
|   KEY (v)
 | |
| );
 | |
| DROP TABLE t1;
 | |
| 
 | |
| CREATE TABLE t1 (
 | |
|   a DATETIME(6),
 | |
|   v VARCHAR(30) GENERATED ALWAYS AS (ROUND(a,3)) VIRTUAL,
 | |
|   KEY (v)
 | |
| );
 | |
| DROP TABLE t1;
 | |
| 
 | |
| 
 | |
| --echo #
 | |
| --echo # End of 10.4 tests
 | |
| --echo #
 | 
