Uploaded image for project: 'MariaDB Server'
  1. MariaDB Server
  2. MDEV-31050

No Duplicate entry error on ALTER TABLE ADD UNIQUE KEY for Aria table

Details

    Description

      I originally came across this during RQG Replication testing for MDEV-16329, but I think this is more an issue with the Aria engine rather than Replication. In the test case below, rpl_end.inc will time out because the slave SQL thread has stopped with the 1062 error as it cannot execute the ALTER statement that was successful on the primary.

      With MyISAM and InnoDB, the ALTER TABLE is not allowed on the primary with ER_DUP_ENTRY (1062). If the CREATE TABLE statement defines the key as UNIQUE, then ER_DUP_ENTRY (1062) will occur upon INSERT with the Aria engine.

      --source include/master-slave.inc
      --source include/have_aria.inc
       
      --connection master
      USE test;
      # No replication error with MyISAM and InnoDB
      # Need ROW_FORMAT DYNAMIC for replication error
      CREATE TABLE t9 (`col_int_nokey` SMALLINT UNSIGNED DEFAULT 0 ) ROW_FORMAT DYNAMIC ENGINE=Aria;
      LOCK TABLE t9 WRITE;
      INSERT INTO t9 () VALUES (),(),();
      FLUSH TABLES;
      ALTER TABLE t9 ADD UNIQUE (`col_int_nokey`), ALGORITHM=COPY;
      # or fails with the following in bb-11.0-oalter (1d16113)
      # ALTER ONLINE TABLE t9 ADD UNIQUE (`col_int_nokey`);
      --connection slave
      --connection master
      DROP table t9;
      --source include/rpl_end.inc
      

      Last_SQL_Errno	1062
      Last_SQL_Error	Error 'Duplicate entry '0' for key 'col_int_nokey'' on query. Default database: 'test'. Query: 'ALTER TABLE t9 ADD UNIQUE (`col_int_nokey`), ALGORITHM=COPY'
      ...
      Wrong value for Last_SQL_Errno. Expected '0', got '1062'
      

      MDEV-18745 looked similar based on the queries.

      Attachments

        Issue Links

          Activity

            I can't see how is this supposed to be connected with online alter table. I'm getting the same on the fresh 11.0:

            1 nik@foo ~/mariadb/bld/mysql-test (git)-[remotes/origin/bb-11.0-oalter~71] % git co 11.0
            M	include/my_pthread.h
            Previous HEAD position was 7c5e90ba17b rename tests
            Switched to branch '11.0'
            Your branch is up to date with 'origin/11.0'.
            nik@foo ~/mariadb/bld/mysql-test (git)-[11.0] % git pull
            remote: Enumerating objects: 1803, done.
            remote: Counting objects: 100% (1686/1686), done.
            remote: Compressing objects: 100% (416/416), done.
            remote: Total 1803 (delta 1299), reused 1602 (delta 1256), pack-reused 117
            Receiving objects: 100% (1803/1803), 7.12 MiB | 4.30 MiB/s, done.
            Resolving deltas: 100% (1311/1311), completed with 545 local objects.
            Already up to date.
            nik@foo ~/mariadb/bld/mysql-test (git)-[11.0] % ./ninja && ./mtr --mem gcol.virt 
            ninja: Entering directory `..'
            [0/1] Re-running CMake...
            -- Running cmake version 3.26.2
            -- MariaDB 11.0.2
            -- Packaging as: mariadb-11.0.2-Linux-x86_64
            -- Updating submodules
            Submodule path 'storage/columnstore/columnstore': checked out '58da5eea954dbbce8c954c323dd2c8247e54303e'
            == Configuring MariaDB Connector/C
            -- SYSTEM_LIBS: dl;m;dl;m;/usr/lib/libssl.so;/usr/lib/libcrypto.so;/usr/lib/libz.so
            -- Dynamic column API support: ON
            -- Configuring done (1.1s)
            -- Generating done (0.2s)
            -- Build files have been written to: /home/nik/mariadb/bld
            [322/1091] [BISON][gen_mariadb_cc_hh] Building parser with bison 3.8.2
            /home/nik/mariadb/bld/sql/yy_mariadb.cc:35600: warning: suspicious sequence in the output: b4_bin [-Wother]
            [324/1091] [BISON][gen_oracle_cc_hh] Building parser with bison 3.8.2
            /home/nik/mariadb/bld/sql/yy_oracle.cc:35003: warning: suspicious sequence in the output: b4_bin [-Wother]
            [1091/1091] Linking CXX executable sql/mariadbd
            ./ninja  4390.52s user 315.64s system 1158% cpu 6:46.18 total
            Logging: /home/nik/mariadb/mysql-test/mariadb-test-run.pl  --mem gcol.virt
            VS config: 
            vardir: /home/nik/mariadb/bld/mysql-test/var
            Checking leftover processes...
            Removing old var directory...
            Creating var directory '/home/nik/mariadb/bld/mysql-test/var'...
             - symlinking 'var' to '/dev/shm/var_auto_2e61'
            Checking supported features...
            MariaDB Version 11.0.2-MariaDB-debug
             - SSL connections supported
             - binaries are debug compiled
            Collecting tests...
            Installing system database...
             
            ==============================================================================
             
            TEST                                      RESULT   TIME (ms) or COMMENT
            --------------------------------------------------------------------------
             
            worker[1] Using MTR_BUILD_THREAD 300, with reserved ports 16000..16019
            include/master-slave.inc
            [connection master]
            connection master;
            USE test;
            CREATE TABLE t9 (`col_int_nokey` SMALLINT UNSIGNED DEFAULT 0 ) ROW_FORMAT DYNAMIC ENGINE=Aria;
            LOCK TABLE t9 WRITE;
            INSERT INTO t9 () VALUES (),(),();
            FLUSH TABLES;
            ALTER TABLE t9 ADD UNIQUE (`col_int_nokey`), ALGORITHM=COPY, lock=exclusive;
            select * from t9;
            col_int_nokey
            connection slave;
            connection master;
            DROP table t9;
            include/rpl_end.inc
            gcol.virt 'innodb,mix'                   [ fail ]
                    Test ended at 2023-04-14 18:48:46
             
            CURRENT_TEST: gcol.virt
            analyze: sync_with_master
            mysqltest: In included file "./include/rpl_sync.inc": 
            included from ./include/rpl_end.inc at line 80:
            included from /home/nik/mariadb/mysql-test/suite/gcol/t/virt.test at line 26:
            At line 157: sync_slave_with_master failed: 'select master_pos_wait('master-bin.000001', 1228, 300, '')' returned NULL indicating slave SQL thread failure
             
             
             == /home/nik/mariadb/bld/mysql-test/var/tmp/analyze-sync_with_master-mysqld.2.err ==
             
            ############################## default ##############################
             
            **** SHOW WARNINGS on default ****
            SHOW WARNINGS;
            Level	Code	Message
             
            **** SELECT replication-related variables on default ****
            SELECT NOW(), @@SERVER_ID;
            NOW()	@@SERVER_ID
            2023-04-14 18:48:46	2
             
            **** SHOW SLAVE STATUS on default ****
            SHOW SLAVE STATUS;
            Slave_IO_State	Waiting for master to send event
            Master_Host	127.0.0.1
            Master_User	root
            Master_Port	16000
            Connect_Retry	1
            Master_Log_File	master-bin.000001
            Read_Master_Log_Pos	1228
            Relay_Log_File	slave-relay-bin.000002
            Relay_Log_Pos	1176
            Relay_Master_Log_File	master-bin.000001
            Slave_IO_Running	Yes
            Slave_SQL_Running	No
            Replicate_Rewrite_DB	
            Replicate_Do_DB	
            Replicate_Ignore_DB	
            Replicate_Do_Table	
            Replicate_Ignore_Table	
            Replicate_Wild_Do_Table	
            Replicate_Wild_Ignore_Table	
            Last_Errno	1062
            Last_Error	Error 'Duplicate entry '0' for key 'col_int_nokey'' on query. Default database: 'test'. Query: 'ALTER TABLE t9 ADD UNIQUE (`col_int_nokey`), ALGORITHM=COPY, lock=exclusive'
            Skip_Counter	0
            Exec_Master_Log_Pos	876
            Relay_Log_Space	1837
            Until_Condition	None
            Until_Log_File	
            Until_Log_Pos	0
            Master_SSL_Allowed	No
            Master_SSL_CA_File	
            Master_SSL_CA_Path	
            Master_SSL_Cert	
            Master_SSL_Cipher	
            Master_SSL_Key	
            Seconds_Behind_Master	NULL
            Master_SSL_Verify_Server_Cert	No
            Last_IO_Errno	0
            Last_IO_Error	
            Last_SQL_Errno	1062
            Last_SQL_Error	Error 'Duplicate entry '0' for key 'col_int_nokey'' on query. Default database: 'test'. Query: 'ALTER TABLE t9 ADD UNIQUE (`col_int_nokey`), ALGORITHM=COPY, lock=exclusive'
            Replicate_Ignore_Server_Ids	
            Master_Server_Id	1
            Master_SSL_Crl	
            Master_SSL_Crlpath	
            Using_Gtid	Slave_Pos
            Gtid_IO_Pos	0-1-5
            Replicate_Do_Domain_Ids	
            Replicate_Ignore_Domain_Ids	
            Parallel_Mode	optimistic
            SQL_Delay	0
            SQL_Remaining_Delay	NULL
            Slave_SQL_Running_State	
            Slave_DDL_Groups	3
            Slave_Non_Transactional_Groups	1
            Slave_Transactional_Groups	0
             
            **** SHOW MASTER STATUS on default ****
            SHOW MASTER STATUS;
            File	slave-bin.000001
            Position	875
            Binlog_Do_DB	
            Binlog_Ignore_DB	
             
            **** SHOW SLAVE HOSTS on default ****
            SHOW SLAVE HOSTS;
             
            **** SHOW PROCESSLIST on default ****
            SHOW PROCESSLIST;
            Id	User	Host	db	Command	Time	State	Info	Progress
            7	system user		NULL	Slave_IO	0	Waiting for master to send event	NULL	0.000
            11	root	localhost	NULL	Query	0	starting	SHOW PROCESSLIST	0.000
             
            **** SHOW BINARY LOGS on default ****
            SHOW BINARY LOGS;
            Log_name	File_size
            slave-bin.000001	875
             
            **** SHOW BINLOG EVENTS on default ****
            binlog_name = 'slave-bin.000001'
            SHOW BINLOG EVENTS IN 'slave-bin.000001';
            Log_name	Pos	Event_type	Server_id	End_log_pos	Info
            slave-bin.000001	4	Format_desc	2	256	Server ver: 11.0.2-MariaDB-debug-log, Binlog ver: 4
            slave-bin.000001	256	Gtid_list	2	285	[]
            slave-bin.000001	285	Binlog_checkpoint	2	328	slave-bin.000001
            slave-bin.000001	328	Gtid	1	370	GTID 0-1-1
            slave-bin.000001	370	Query	1	539	use `test`; CREATE TABLE t9 (`col_int_nokey` SMALLINT UNSIGNED DEFAULT 0 ) ROW_FORMAT DYNAMIC ENGINE=Aria
            slave-bin.000001	539	Gtid	1	581	BEGIN GTID 0-1-2
            slave-bin.000001	581	Query	1	681	use `test`; INSERT INTO t9 () VALUES (),(),()
            slave-bin.000001	681	Query	1	754	COMMIT
            slave-bin.000001	754	Gtid	1	796	GTID 0-1-3
            slave-bin.000001	796	Query	1	875	use `test`; FLUSH TABLES
             
            **** SHOW RELAYLOG EVENTS on default ****
            relaylog_name = 'slave-relay-bin.000002'
            SHOW RELAYLOG EVENTS IN 'slave-relay-bin.000002';
            Log_name	Pos	Event_type	Server_id	End_log_pos	Info
            slave-relay-bin.000002	4	Format_desc	2	256	Server ver: 11.0.2-MariaDB-debug-log, Binlog ver: 4
            slave-relay-bin.000002	256	Rotate	1	0	master-bin.000001;pos=4
            slave-relay-bin.000002	304	Format_desc	1	256	Server ver: 11.0.2-MariaDB-debug-log, Binlog ver: 4
            slave-relay-bin.000002	556	Gtid_list	1	285	[]
            slave-relay-bin.000002	585	Binlog_checkpoint	1	329	master-bin.000001
            slave-relay-bin.000002	629	Gtid	1	371	GTID 0-1-1
            slave-relay-bin.000002	671	Query	1	540	use `test`; CREATE TABLE t9 (`col_int_nokey` SMALLINT UNSIGNED DEFAULT 0 ) ROW_FORMAT DYNAMIC ENGINE=Aria
            slave-relay-bin.000002	840	Gtid	1	582	BEGIN GTID 0-1-2
            slave-relay-bin.000002	882	Query	1	682	use `test`; INSERT INTO t9 () VALUES (),(),()
            slave-relay-bin.000002	982	Query	1	755	COMMIT
            slave-relay-bin.000002	1055	Gtid	1	797	GTID 0-1-3
            slave-relay-bin.000002	1097	Query	1	876	use `test`; FLUSH TABLES
            slave-relay-bin.000002	1176	Gtid	1	918	GTID 0-1-4
            slave-relay-bin.000002	1218	Query	1	1069	use `test`; ALTER TABLE t9 ADD UNIQUE (`col_int_nokey`), ALGORITHM=COPY, lock=exclusive
            slave-relay-bin.000002	1369	Gtid	1	1111	GTID 0-1-5
            slave-relay-bin.000002	1411	Query	1	1228	use `test`; DROP TABLE `t9` /* generated by server */
            connection default;
             
             == /home/nik/mariadb/bld/mysql-test/var/tmp/analyze-sync_with_master-mysqld.1.err ==
             
            ############################## default ##############################
             
            **** SHOW WARNINGS on default ****
            SHOW WARNINGS;
            Level	Code	Message
             
            **** SELECT replication-related variables on default ****
            SELECT NOW(), @@SERVER_ID;
            NOW()	@@SERVER_ID
            2023-04-14 18:48:46	1
             
            **** SHOW SLAVE STATUS on default ****
            SHOW SLAVE STATUS;
             
            **** SHOW MASTER STATUS on default ****
            SHOW MASTER STATUS;
            File	master-bin.000001
            Position	1228
            Binlog_Do_DB	
            Binlog_Ignore_DB	
             
            **** SHOW SLAVE HOSTS on default ****
            SHOW SLAVE HOSTS;
            Server_id	2
            Host	127.0.0.1
            Port	16001
            Master_id	1
             
            **** SHOW PROCESSLIST on default ****
            SHOW PROCESSLIST;
            Id	User	Host	db	Command	Time	State	Info	Progress
            8	root	localhost:42166	NULL	Binlog Dump	0	Master has sent all binlog to slave; waiting for more updates	NULL	0.000
            11	root	localhost	NULL	Query	0	starting	SHOW PROCESSLIST	0.000
             
            **** SHOW BINARY LOGS on default ****
            SHOW BINARY LOGS;
            Log_name	File_size
            master-bin.000001	1228
             
            **** SHOW BINLOG EVENTS on default ****
            binlog_name = 'master-bin.000001'
            SHOW BINLOG EVENTS IN 'master-bin.000001';
            Log_name	Pos	Event_type	Server_id	End_log_pos	Info
            master-bin.000001	4	Format_desc	1	256	Server ver: 11.0.2-MariaDB-debug-log, Binlog ver: 4
            master-bin.000001	256	Gtid_list	1	285	[]
            master-bin.000001	285	Binlog_checkpoint	1	329	master-bin.000001
            master-bin.000001	329	Gtid	1	371	GTID 0-1-1
            master-bin.000001	371	Query	1	540	use `test`; CREATE TABLE t9 (`col_int_nokey` SMALLINT UNSIGNED DEFAULT 0 ) ROW_FORMAT DYNAMIC ENGINE=Aria
            master-bin.000001	540	Gtid	1	582	BEGIN GTID 0-1-2
            master-bin.000001	582	Query	1	682	use `test`; INSERT INTO t9 () VALUES (),(),()
            master-bin.000001	682	Query	1	755	COMMIT
            master-bin.000001	755	Gtid	1	797	GTID 0-1-3
            master-bin.000001	797	Query	1	876	use `test`; FLUSH TABLES
            master-bin.000001	876	Gtid	1	918	GTID 0-1-4
            master-bin.000001	918	Query	1	1069	use `test`; ALTER TABLE t9 ADD UNIQUE (`col_int_nokey`), ALGORITHM=COPY, lock=exclusive
            master-bin.000001	1069	Gtid	1	1111	GTID 0-1-5
            master-bin.000001	1111	Query	1	1228	use `test`; DROP TABLE `t9` /* generated by server */
             
            **** SHOW RELAYLOG EVENTS on default ****
            relaylog_name = 'No such row'
            SHOW RELAYLOG EVENTS IN 'No such row';
            Log_name	Pos	Event_type	Server_id	End_log_pos	Info
            connection default;
             
             
             
             - saving '/home/nik/mariadb/bld/mysql-test/var/log/gcol.virt-innodb,mix/' to '/home/nik/mariadb/bld/mysql-test/var/log/gcol.virt-innodb,mix/'
             
            Only  1  of 3 completed.
            --------------------------------------------------------------------------
            The servers were restarted 0 times
            Spent 0.000 of 4 seconds executing testcases
             
            Failure: Failed 1/1 tests, 0.00% were successful.
             
            Failing test(s): gcol.virt
             
            The log files in var/log may give you some hint of what went wrong.
             
            If you want to report this error, please read first the documentation
            at http://dev.mysql.com/doc/mysql/en/mysql-test-suite.html
             
            mysql-test-run: *** ERROR: there were failing test cases
            

            nikitamalyavin Nikita Malyavin added a comment - I can't see how is this supposed to be connected with online alter table. I'm getting the same on the fresh 11.0: 1 nik@foo ~/mariadb/bld/mysql-test (git)-[remotes/origin/bb-11.0-oalter~71] % git co 11.0 M include/my_pthread.h Previous HEAD position was 7c5e90ba17b rename tests Switched to branch '11.0' Your branch is up to date with 'origin/11.0'. nik@foo ~/mariadb/bld/mysql-test (git)-[11.0] % git pull remote: Enumerating objects: 1803, done. remote: Counting objects: 100% (1686/1686), done. remote: Compressing objects: 100% (416/416), done. remote: Total 1803 (delta 1299), reused 1602 (delta 1256), pack-reused 117 Receiving objects: 100% (1803/1803), 7.12 MiB | 4.30 MiB/s, done. Resolving deltas: 100% (1311/1311), completed with 545 local objects. Already up to date. nik@foo ~/mariadb/bld/mysql-test (git)-[11.0] % ./ninja && ./mtr --mem gcol.virt ninja: Entering directory `..' [0/1] Re-running CMake... -- Running cmake version 3.26.2 -- MariaDB 11.0.2 -- Packaging as: mariadb-11.0.2-Linux-x86_64 -- Updating submodules Submodule path 'storage/columnstore/columnstore': checked out '58da5eea954dbbce8c954c323dd2c8247e54303e' == Configuring MariaDB Connector/C -- SYSTEM_LIBS: dl;m;dl;m;/usr/lib/libssl.so;/usr/lib/libcrypto.so;/usr/lib/libz.so -- Dynamic column API support: ON -- Configuring done (1.1s) -- Generating done (0.2s) -- Build files have been written to: /home/nik/mariadb/bld [322/1091] [BISON][gen_mariadb_cc_hh] Building parser with bison 3.8.2 /home/nik/mariadb/bld/sql/yy_mariadb.cc:35600: warning: suspicious sequence in the output: b4_bin [-Wother] [324/1091] [BISON][gen_oracle_cc_hh] Building parser with bison 3.8.2 /home/nik/mariadb/bld/sql/yy_oracle.cc:35003: warning: suspicious sequence in the output: b4_bin [-Wother] [1091/1091] Linking CXX executable sql/mariadbd ./ninja 4390.52s user 315.64s system 1158% cpu 6:46.18 total Logging: /home/nik/mariadb/mysql-test/mariadb-test-run.pl --mem gcol.virt VS config: vardir: /home/nik/mariadb/bld/mysql-test/var Checking leftover processes... Removing old var directory... Creating var directory '/home/nik/mariadb/bld/mysql-test/var'... - symlinking 'var' to '/dev/shm/var_auto_2e61' Checking supported features... MariaDB Version 11.0.2-MariaDB-debug - SSL connections supported - binaries are debug compiled Collecting tests... Installing system database...   ==============================================================================   TEST RESULT TIME (ms) or COMMENT --------------------------------------------------------------------------   worker[1] Using MTR_BUILD_THREAD 300, with reserved ports 16000..16019 include/master-slave.inc [connection master] connection master; USE test; CREATE TABLE t9 (`col_int_nokey` SMALLINT UNSIGNED DEFAULT 0 ) ROW_FORMAT DYNAMIC ENGINE=Aria; LOCK TABLE t9 WRITE; INSERT INTO t9 () VALUES (),(),(); FLUSH TABLES; ALTER TABLE t9 ADD UNIQUE (`col_int_nokey`), ALGORITHM=COPY, lock=exclusive; select * from t9; col_int_nokey connection slave; connection master; DROP table t9; include/rpl_end.inc gcol.virt 'innodb,mix' [ fail ] Test ended at 2023-04-14 18:48:46   CURRENT_TEST: gcol.virt analyze: sync_with_master mysqltest: In included file "./include/rpl_sync.inc": included from ./include/rpl_end.inc at line 80: included from /home/nik/mariadb/mysql-test/suite/gcol/t/virt.test at line 26: At line 157: sync_slave_with_master failed: 'select master_pos_wait('master-bin.000001', 1228, 300, '')' returned NULL indicating slave SQL thread failure     == /home/nik/mariadb/bld/mysql-test/var/tmp/analyze-sync_with_master-mysqld.2.err ==   ############################## default ##############################   **** SHOW WARNINGS on default **** SHOW WARNINGS; Level Code Message   **** SELECT replication-related variables on default **** SELECT NOW(), @@SERVER_ID; NOW() @@SERVER_ID 2023-04-14 18:48:46 2   **** SHOW SLAVE STATUS on default **** SHOW SLAVE STATUS; Slave_IO_State Waiting for master to send event Master_Host 127.0.0.1 Master_User root Master_Port 16000 Connect_Retry 1 Master_Log_File master-bin.000001 Read_Master_Log_Pos 1228 Relay_Log_File slave-relay-bin.000002 Relay_Log_Pos 1176 Relay_Master_Log_File master-bin.000001 Slave_IO_Running Yes Slave_SQL_Running No Replicate_Rewrite_DB Replicate_Do_DB Replicate_Ignore_DB Replicate_Do_Table Replicate_Ignore_Table Replicate_Wild_Do_Table Replicate_Wild_Ignore_Table Last_Errno 1062 Last_Error Error 'Duplicate entry '0' for key 'col_int_nokey'' on query. Default database: 'test'. Query: 'ALTER TABLE t9 ADD UNIQUE (`col_int_nokey`), ALGORITHM=COPY, lock=exclusive' Skip_Counter 0 Exec_Master_Log_Pos 876 Relay_Log_Space 1837 Until_Condition None Until_Log_File Until_Log_Pos 0 Master_SSL_Allowed No Master_SSL_CA_File Master_SSL_CA_Path Master_SSL_Cert Master_SSL_Cipher Master_SSL_Key Seconds_Behind_Master NULL Master_SSL_Verify_Server_Cert No Last_IO_Errno 0 Last_IO_Error Last_SQL_Errno 1062 Last_SQL_Error Error 'Duplicate entry '0' for key 'col_int_nokey'' on query. Default database: 'test'. Query: 'ALTER TABLE t9 ADD UNIQUE (`col_int_nokey`), ALGORITHM=COPY, lock=exclusive' Replicate_Ignore_Server_Ids Master_Server_Id 1 Master_SSL_Crl Master_SSL_Crlpath Using_Gtid Slave_Pos Gtid_IO_Pos 0-1-5 Replicate_Do_Domain_Ids Replicate_Ignore_Domain_Ids Parallel_Mode optimistic SQL_Delay 0 SQL_Remaining_Delay NULL Slave_SQL_Running_State Slave_DDL_Groups 3 Slave_Non_Transactional_Groups 1 Slave_Transactional_Groups 0   **** SHOW MASTER STATUS on default **** SHOW MASTER STATUS; File slave-bin.000001 Position 875 Binlog_Do_DB Binlog_Ignore_DB   **** SHOW SLAVE HOSTS on default **** SHOW SLAVE HOSTS;   **** SHOW PROCESSLIST on default **** SHOW PROCESSLIST; Id User Host db Command Time State Info Progress 7 system user NULL Slave_IO 0 Waiting for master to send event NULL 0.000 11 root localhost NULL Query 0 starting SHOW PROCESSLIST 0.000   **** SHOW BINARY LOGS on default **** SHOW BINARY LOGS; Log_name File_size slave-bin.000001 875   **** SHOW BINLOG EVENTS on default **** binlog_name = 'slave-bin.000001' SHOW BINLOG EVENTS IN 'slave-bin.000001'; Log_name Pos Event_type Server_id End_log_pos Info slave-bin.000001 4 Format_desc 2 256 Server ver: 11.0.2-MariaDB-debug-log, Binlog ver: 4 slave-bin.000001 256 Gtid_list 2 285 [] slave-bin.000001 285 Binlog_checkpoint 2 328 slave-bin.000001 slave-bin.000001 328 Gtid 1 370 GTID 0-1-1 slave-bin.000001 370 Query 1 539 use `test`; CREATE TABLE t9 (`col_int_nokey` SMALLINT UNSIGNED DEFAULT 0 ) ROW_FORMAT DYNAMIC ENGINE=Aria slave-bin.000001 539 Gtid 1 581 BEGIN GTID 0-1-2 slave-bin.000001 581 Query 1 681 use `test`; INSERT INTO t9 () VALUES (),(),() slave-bin.000001 681 Query 1 754 COMMIT slave-bin.000001 754 Gtid 1 796 GTID 0-1-3 slave-bin.000001 796 Query 1 875 use `test`; FLUSH TABLES   **** SHOW RELAYLOG EVENTS on default **** relaylog_name = 'slave-relay-bin.000002' SHOW RELAYLOG EVENTS IN 'slave-relay-bin.000002'; Log_name Pos Event_type Server_id End_log_pos Info slave-relay-bin.000002 4 Format_desc 2 256 Server ver: 11.0.2-MariaDB-debug-log, Binlog ver: 4 slave-relay-bin.000002 256 Rotate 1 0 master-bin.000001;pos=4 slave-relay-bin.000002 304 Format_desc 1 256 Server ver: 11.0.2-MariaDB-debug-log, Binlog ver: 4 slave-relay-bin.000002 556 Gtid_list 1 285 [] slave-relay-bin.000002 585 Binlog_checkpoint 1 329 master-bin.000001 slave-relay-bin.000002 629 Gtid 1 371 GTID 0-1-1 slave-relay-bin.000002 671 Query 1 540 use `test`; CREATE TABLE t9 (`col_int_nokey` SMALLINT UNSIGNED DEFAULT 0 ) ROW_FORMAT DYNAMIC ENGINE=Aria slave-relay-bin.000002 840 Gtid 1 582 BEGIN GTID 0-1-2 slave-relay-bin.000002 882 Query 1 682 use `test`; INSERT INTO t9 () VALUES (),(),() slave-relay-bin.000002 982 Query 1 755 COMMIT slave-relay-bin.000002 1055 Gtid 1 797 GTID 0-1-3 slave-relay-bin.000002 1097 Query 1 876 use `test`; FLUSH TABLES slave-relay-bin.000002 1176 Gtid 1 918 GTID 0-1-4 slave-relay-bin.000002 1218 Query 1 1069 use `test`; ALTER TABLE t9 ADD UNIQUE (`col_int_nokey`), ALGORITHM=COPY, lock=exclusive slave-relay-bin.000002 1369 Gtid 1 1111 GTID 0-1-5 slave-relay-bin.000002 1411 Query 1 1228 use `test`; DROP TABLE `t9` /* generated by server */ connection default;   == /home/nik/mariadb/bld/mysql-test/var/tmp/analyze-sync_with_master-mysqld.1.err ==   ############################## default ##############################   **** SHOW WARNINGS on default **** SHOW WARNINGS; Level Code Message   **** SELECT replication-related variables on default **** SELECT NOW(), @@SERVER_ID; NOW() @@SERVER_ID 2023-04-14 18:48:46 1   **** SHOW SLAVE STATUS on default **** SHOW SLAVE STATUS;   **** SHOW MASTER STATUS on default **** SHOW MASTER STATUS; File master-bin.000001 Position 1228 Binlog_Do_DB Binlog_Ignore_DB   **** SHOW SLAVE HOSTS on default **** SHOW SLAVE HOSTS; Server_id 2 Host 127.0.0.1 Port 16001 Master_id 1   **** SHOW PROCESSLIST on default **** SHOW PROCESSLIST; Id User Host db Command Time State Info Progress 8 root localhost:42166 NULL Binlog Dump 0 Master has sent all binlog to slave; waiting for more updates NULL 0.000 11 root localhost NULL Query 0 starting SHOW PROCESSLIST 0.000   **** SHOW BINARY LOGS on default **** SHOW BINARY LOGS; Log_name File_size master-bin.000001 1228   **** SHOW BINLOG EVENTS on default **** binlog_name = 'master-bin.000001' SHOW BINLOG EVENTS IN 'master-bin.000001'; Log_name Pos Event_type Server_id End_log_pos Info master-bin.000001 4 Format_desc 1 256 Server ver: 11.0.2-MariaDB-debug-log, Binlog ver: 4 master-bin.000001 256 Gtid_list 1 285 [] master-bin.000001 285 Binlog_checkpoint 1 329 master-bin.000001 master-bin.000001 329 Gtid 1 371 GTID 0-1-1 master-bin.000001 371 Query 1 540 use `test`; CREATE TABLE t9 (`col_int_nokey` SMALLINT UNSIGNED DEFAULT 0 ) ROW_FORMAT DYNAMIC ENGINE=Aria master-bin.000001 540 Gtid 1 582 BEGIN GTID 0-1-2 master-bin.000001 582 Query 1 682 use `test`; INSERT INTO t9 () VALUES (),(),() master-bin.000001 682 Query 1 755 COMMIT master-bin.000001 755 Gtid 1 797 GTID 0-1-3 master-bin.000001 797 Query 1 876 use `test`; FLUSH TABLES master-bin.000001 876 Gtid 1 918 GTID 0-1-4 master-bin.000001 918 Query 1 1069 use `test`; ALTER TABLE t9 ADD UNIQUE (`col_int_nokey`), ALGORITHM=COPY, lock=exclusive master-bin.000001 1069 Gtid 1 1111 GTID 0-1-5 master-bin.000001 1111 Query 1 1228 use `test`; DROP TABLE `t9` /* generated by server */   **** SHOW RELAYLOG EVENTS on default **** relaylog_name = 'No such row' SHOW RELAYLOG EVENTS IN 'No such row'; Log_name Pos Event_type Server_id End_log_pos Info connection default;       - saving '/home/nik/mariadb/bld/mysql-test/var/log/gcol.virt-innodb,mix/' to '/home/nik/mariadb/bld/mysql-test/var/log/gcol.virt-innodb,mix/'   Only 1 of 3 completed. -------------------------------------------------------------------------- The servers were restarted 0 times Spent 0.000 of 4 seconds executing testcases   Failure: Failed 1/1 tests, 0.00% were successful.   Failing test(s): gcol.virt   The log files in var/log may give you some hint of what went wrong.   If you want to report this error, please read first the documentation at http://dev.mysql.com/doc/mysql/en/mysql-test-suite.html   mysql-test-run: *** ERROR: there were failing test cases
            nikitamalyavin Nikita Malyavin added a comment - - edited

            Okay, uncommenting the ONLINE version doesn't change things on the latest bb-11.0-oalter (b2b5c9354b6e)

            angelique.sklavounos Please confirm the problem you noticed is not there anymore

            nik@foo ~/mariadb/bld/mysql-test (git)-[bb-11.0-oalter] % ./ninja && ./mtr --mem gcol.virt 
            ninja: Entering directory `..'
            [175/175] Linking CXX executable tests/async_queries
            ./ninja  24.37s user 13.13s system 983% cpu 3.812 total
            Logging: /home/nik/mariadb/mysql-test/mariadb-test-run.pl  --mem gcol.virt
            VS config: 
            vardir: /home/nik/mariadb/bld/mysql-test/var
            Checking leftover processes...
            Removing old var directory...
            Creating var directory '/home/nik/mariadb/bld/mysql-test/var'...
             - symlinking 'var' to '/dev/shm/var_auto_w9Bu'
            Checking supported features...
            MariaDB Version 11.0.1-MariaDB-debug
             - SSL connections supported
             - binaries are debug compiled
            Collecting tests...
            Installing system database...
             
            ==============================================================================
             
            TEST                                      RESULT   TIME (ms) or COMMENT
            --------------------------------------------------------------------------
             
            worker[1] Using MTR_BUILD_THREAD 300, with reserved ports 16000..16019
            include/master-slave.inc
            [connection master]
            connection master;
            USE test;
            CREATE TABLE t9 (`col_int_nokey` SMALLINT UNSIGNED DEFAULT 0 ) ROW_FORMAT DYNAMIC ENGINE=Aria;
            LOCK TABLE t9 WRITE;
            INSERT INTO t9 () VALUES (),(),();
            FLUSH TABLES;
            ALTER ONLINE TABLE t9 ADD UNIQUE (`col_int_nokey`);
            select * from t9;
            col_int_nokey
            connection slave;
            connection master;
            DROP table t9;
            include/rpl_end.inc
            gcol.virt 'innodb,mix'                   [ fail ]
                    Test ended at 2023-04-14 19:01:47
             
            CURRENT_TEST: gcol.virt
            analyze: sync_with_master
            mysqltest: In included file "./include/rpl_sync.inc": 
            included from ./include/rpl_end.inc at line 80:
            included from /home/nik/mariadb/mysql-test/suite/gcol/t/virt.test at line 26:
            At line 157: sync_slave_with_master failed: 'select master_pos_wait('master-bin.000001', 1203, 300, '')' returned NULL indicating slave SQL thread failure
             
             
             == /home/nik/mariadb/bld/mysql-test/var/tmp/analyze-sync_with_master-mysqld.1.err ==
             
            ############################## default ##############################
             
            **** SHOW WARNINGS on default ****
            SHOW WARNINGS;
            Level	Code	Message
             
            **** SELECT replication-related variables on default ****
            SELECT NOW(), @@SERVER_ID;
            NOW()	@@SERVER_ID
            2023-04-14 19:01:47	1
             
            **** SHOW SLAVE STATUS on default ****
            SHOW SLAVE STATUS;
             
            **** SHOW MASTER STATUS on default ****
            SHOW MASTER STATUS;
            File	master-bin.000001
            Position	1203
            Binlog_Do_DB	
            Binlog_Ignore_DB	
             
            **** SHOW SLAVE HOSTS on default ****
            SHOW SLAVE HOSTS;
            Server_id	2
            Host	127.0.0.1
            Port	16001
            Master_id	1
             
            **** SHOW PROCESSLIST on default ****
            SHOW PROCESSLIST;
            Id	User	Host	db	Command	Time	State	Info	Progress
            8	root	localhost:54014	NULL	Binlog Dump	0	Master has sent all binlog to slave; waiting for more updates	NULL	0.000
            11	root	localhost	NULL	Query	0	starting	SHOW PROCESSLIST	0.000
             
            **** SHOW BINARY LOGS on default ****
            SHOW BINARY LOGS;
            Log_name	File_size
            master-bin.000001	1203
             
            **** SHOW BINLOG EVENTS on default ****
            binlog_name = 'master-bin.000001'
            SHOW BINLOG EVENTS IN 'master-bin.000001';
            Log_name	Pos	Event_type	Server_id	End_log_pos	Info
            master-bin.000001	4	Format_desc	1	256	Server ver: 11.0.1-MariaDB-debug-log, Binlog ver: 4
            master-bin.000001	256	Gtid_list	1	285	[]
            master-bin.000001	285	Binlog_checkpoint	1	329	master-bin.000001
            master-bin.000001	329	Gtid	1	371	GTID 0-1-1
            master-bin.000001	371	Query	1	540	use `test`; CREATE TABLE t9 (`col_int_nokey` SMALLINT UNSIGNED DEFAULT 0 ) ROW_FORMAT DYNAMIC ENGINE=Aria
            master-bin.000001	540	Gtid	1	582	BEGIN GTID 0-1-2
            master-bin.000001	582	Query	1	682	use `test`; INSERT INTO t9 () VALUES (),(),()
            master-bin.000001	682	Query	1	755	COMMIT
            master-bin.000001	755	Gtid	1	797	GTID 0-1-3
            master-bin.000001	797	Query	1	876	use `test`; FLUSH TABLES
            master-bin.000001	876	Gtid	1	918	GTID 0-1-4
            master-bin.000001	918	Query	1	1044	use `test`; ALTER ONLINE TABLE t9 ADD UNIQUE (`col_int_nokey`)
            master-bin.000001	1044	Gtid	1	1086	GTID 0-1-5
            master-bin.000001	1086	Query	1	1203	use `test`; DROP TABLE `t9` /* generated by server */
             
            **** SHOW RELAYLOG EVENTS on default ****
            relaylog_name = 'No such row'
            SHOW RELAYLOG EVENTS IN 'No such row';
            Log_name	Pos	Event_type	Server_id	End_log_pos	Info
            connection default;
             
             == /home/nik/mariadb/bld/mysql-test/var/tmp/analyze-sync_with_master-mysqld.2.err ==
             
            ############################## default ##############################
             
            **** SHOW WARNINGS on default ****
            SHOW WARNINGS;
            Level	Code	Message
             
            **** SELECT replication-related variables on default ****
            SELECT NOW(), @@SERVER_ID;
            NOW()	@@SERVER_ID
            2023-04-14 19:01:47	2
             
            **** SHOW SLAVE STATUS on default ****
            SHOW SLAVE STATUS;
            Slave_IO_State	Waiting for master to send event
            Master_Host	127.0.0.1
            Master_User	root
            Master_Port	16000
            Connect_Retry	1
            Master_Log_File	master-bin.000001
            Read_Master_Log_Pos	1203
            Relay_Log_File	slave-relay-bin.000002
            Relay_Log_Pos	1176
            Relay_Master_Log_File	master-bin.000001
            Slave_IO_Running	Yes
            Slave_SQL_Running	No
            Replicate_Rewrite_DB	
            Replicate_Do_DB	
            Replicate_Ignore_DB	
            Replicate_Do_Table	
            Replicate_Ignore_Table	
            Replicate_Wild_Do_Table	
            Replicate_Wild_Ignore_Table	
            Last_Errno	1062
            Last_Error	Error 'Duplicate entry '0' for key 'col_int_nokey'' on query. Default database: 'test'. Query: 'ALTER ONLINE TABLE t9 ADD UNIQUE (`col_int_nokey`)'
            Skip_Counter	0
            Exec_Master_Log_Pos	876
            Relay_Log_Space	1812
            Until_Condition	None
            Until_Log_File	
            Until_Log_Pos	0
            Master_SSL_Allowed	No
            Master_SSL_CA_File	
            Master_SSL_CA_Path	
            Master_SSL_Cert	
            Master_SSL_Cipher	
            Master_SSL_Key	
            Seconds_Behind_Master	NULL
            Master_SSL_Verify_Server_Cert	No
            Last_IO_Errno	0
            Last_IO_Error	
            Last_SQL_Errno	1062
            Last_SQL_Error	Error 'Duplicate entry '0' for key 'col_int_nokey'' on query. Default database: 'test'. Query: 'ALTER ONLINE TABLE t9 ADD UNIQUE (`col_int_nokey`)'
            Replicate_Ignore_Server_Ids	
            Master_Server_Id	1
            Master_SSL_Crl	
            Master_SSL_Crlpath	
            Using_Gtid	Slave_Pos
            Gtid_IO_Pos	0-1-5
            Replicate_Do_Domain_Ids	
            Replicate_Ignore_Domain_Ids	
            Parallel_Mode	optimistic
            SQL_Delay	0
            SQL_Remaining_Delay	NULL
            Slave_SQL_Running_State	
            Slave_DDL_Groups	3
            Slave_Non_Transactional_Groups	1
            Slave_Transactional_Groups	0
             
            **** SHOW MASTER STATUS on default ****
            SHOW MASTER STATUS;
            File	slave-bin.000001
            Position	875
            Binlog_Do_DB	
            Binlog_Ignore_DB	
             
            **** SHOW SLAVE HOSTS on default ****
            SHOW SLAVE HOSTS;
             
            **** SHOW PROCESSLIST on default ****
            SHOW PROCESSLIST;
            Id	User	Host	db	Command	Time	State	Info	Progress
            7	system user		NULL	Slave_IO	0	Waiting for master to send event	NULL	0.000
            11	root	localhost	NULL	Query	0	starting	SHOW PROCESSLIST	0.000
             
            **** SHOW BINARY LOGS on default ****
            SHOW BINARY LOGS;
            Log_name	File_size
            slave-bin.000001	875
             
            **** SHOW BINLOG EVENTS on default ****
            binlog_name = 'slave-bin.000001'
            SHOW BINLOG EVENTS IN 'slave-bin.000001';
            Log_name	Pos	Event_type	Server_id	End_log_pos	Info
            slave-bin.000001	4	Format_desc	2	256	Server ver: 11.0.1-MariaDB-debug-log, Binlog ver: 4
            slave-bin.000001	256	Gtid_list	2	285	[]
            slave-bin.000001	285	Binlog_checkpoint	2	328	slave-bin.000001
            slave-bin.000001	328	Gtid	1	370	GTID 0-1-1
            slave-bin.000001	370	Query	1	539	use `test`; CREATE TABLE t9 (`col_int_nokey` SMALLINT UNSIGNED DEFAULT 0 ) ROW_FORMAT DYNAMIC ENGINE=Aria
            slave-bin.000001	539	Gtid	1	581	BEGIN GTID 0-1-2
            slave-bin.000001	581	Query	1	681	use `test`; INSERT INTO t9 () VALUES (),(),()
            slave-bin.000001	681	Query	1	754	COMMIT
            slave-bin.000001	754	Gtid	1	796	GTID 0-1-3
            slave-bin.000001	796	Query	1	875	use `test`; FLUSH TABLES
             
            **** SHOW RELAYLOG EVENTS on default ****
            relaylog_name = 'slave-relay-bin.000002'
            SHOW RELAYLOG EVENTS IN 'slave-relay-bin.000002';
            Log_name	Pos	Event_type	Server_id	End_log_pos	Info
            slave-relay-bin.000002	4	Format_desc	2	256	Server ver: 11.0.1-MariaDB-debug-log, Binlog ver: 4
            slave-relay-bin.000002	256	Rotate	1	0	master-bin.000001;pos=4
            slave-relay-bin.000002	304	Format_desc	1	256	Server ver: 11.0.1-MariaDB-debug-log, Binlog ver: 4
            slave-relay-bin.000002	556	Gtid_list	1	285	[]
            slave-relay-bin.000002	585	Binlog_checkpoint	1	329	master-bin.000001
            slave-relay-bin.000002	629	Gtid	1	371	GTID 0-1-1
            slave-relay-bin.000002	671	Query	1	540	use `test`; CREATE TABLE t9 (`col_int_nokey` SMALLINT UNSIGNED DEFAULT 0 ) ROW_FORMAT DYNAMIC ENGINE=Aria
            slave-relay-bin.000002	840	Gtid	1	582	BEGIN GTID 0-1-2
            slave-relay-bin.000002	882	Query	1	682	use `test`; INSERT INTO t9 () VALUES (),(),()
            slave-relay-bin.000002	982	Query	1	755	COMMIT
            slave-relay-bin.000002	1055	Gtid	1	797	GTID 0-1-3
            slave-relay-bin.000002	1097	Query	1	876	use `test`; FLUSH TABLES
            slave-relay-bin.000002	1176	Gtid	1	918	GTID 0-1-4
            slave-relay-bin.000002	1218	Query	1	1044	use `test`; ALTER ONLINE TABLE t9 ADD UNIQUE (`col_int_nokey`)
            slave-relay-bin.000002	1344	Gtid	1	1086	GTID 0-1-5
            slave-relay-bin.000002	1386	Query	1	1203	use `test`; DROP TABLE `t9` /* generated by server */
            connection default;
             
             
             
             - saving '/home/nik/mariadb/bld/mysql-test/var/log/gcol.virt-innodb,mix/' to '/home/nik/mariadb/bld/mysql-test/var/log/gcol.virt-innodb,mix/'
             
            Only  1  of 3 completed.
            --------------------------------------------------------------------------
            The servers were restarted 0 times
            Spent 0.000 of 5 seconds executing testcases
             
            Failure: Failed 1/1 tests, 0.00% were successful.
             
            Failing test(s): gcol.virt
             
            The log files in var/log may give you some hint of what went wrong.
             
            If you want to report this error, please read first the documentation
            at http://dev.mysql.com/doc/mysql/en/mysql-test-suite.html
             
            mysql-test-run: *** ERROR: there were failing test cases
            
            

            nikitamalyavin Nikita Malyavin added a comment - - edited Okay, uncommenting the ONLINE version doesn't change things on the latest bb-11.0-oalter (b2b5c9354b6e) angelique.sklavounos Please confirm the problem you noticed is not there anymore nik@foo ~/mariadb/bld/mysql-test (git)-[bb-11.0-oalter] % ./ninja && ./mtr --mem gcol.virt ninja: Entering directory `..' [175/175] Linking CXX executable tests/async_queries ./ninja 24.37s user 13.13s system 983% cpu 3.812 total Logging: /home/nik/mariadb/mysql-test/mariadb-test-run.pl --mem gcol.virt VS config: vardir: /home/nik/mariadb/bld/mysql-test/var Checking leftover processes... Removing old var directory... Creating var directory '/home/nik/mariadb/bld/mysql-test/var'... - symlinking 'var' to '/dev/shm/var_auto_w9Bu' Checking supported features... MariaDB Version 11.0.1-MariaDB-debug - SSL connections supported - binaries are debug compiled Collecting tests... Installing system database...   ==============================================================================   TEST RESULT TIME (ms) or COMMENT --------------------------------------------------------------------------   worker[1] Using MTR_BUILD_THREAD 300, with reserved ports 16000..16019 include/master-slave.inc [connection master] connection master; USE test; CREATE TABLE t9 (`col_int_nokey` SMALLINT UNSIGNED DEFAULT 0 ) ROW_FORMAT DYNAMIC ENGINE=Aria; LOCK TABLE t9 WRITE; INSERT INTO t9 () VALUES (),(),(); FLUSH TABLES; ALTER ONLINE TABLE t9 ADD UNIQUE (`col_int_nokey`); select * from t9; col_int_nokey connection slave; connection master; DROP table t9; include/rpl_end.inc gcol.virt 'innodb,mix' [ fail ] Test ended at 2023-04-14 19:01:47   CURRENT_TEST: gcol.virt analyze: sync_with_master mysqltest: In included file "./include/rpl_sync.inc": included from ./include/rpl_end.inc at line 80: included from /home/nik/mariadb/mysql-test/suite/gcol/t/virt.test at line 26: At line 157: sync_slave_with_master failed: 'select master_pos_wait('master-bin.000001', 1203, 300, '')' returned NULL indicating slave SQL thread failure     == /home/nik/mariadb/bld/mysql-test/var/tmp/analyze-sync_with_master-mysqld.1.err ==   ############################## default ##############################   **** SHOW WARNINGS on default **** SHOW WARNINGS; Level Code Message   **** SELECT replication-related variables on default **** SELECT NOW(), @@SERVER_ID; NOW() @@SERVER_ID 2023-04-14 19:01:47 1   **** SHOW SLAVE STATUS on default **** SHOW SLAVE STATUS;   **** SHOW MASTER STATUS on default **** SHOW MASTER STATUS; File master-bin.000001 Position 1203 Binlog_Do_DB Binlog_Ignore_DB   **** SHOW SLAVE HOSTS on default **** SHOW SLAVE HOSTS; Server_id 2 Host 127.0.0.1 Port 16001 Master_id 1   **** SHOW PROCESSLIST on default **** SHOW PROCESSLIST; Id User Host db Command Time State Info Progress 8 root localhost:54014 NULL Binlog Dump 0 Master has sent all binlog to slave; waiting for more updates NULL 0.000 11 root localhost NULL Query 0 starting SHOW PROCESSLIST 0.000   **** SHOW BINARY LOGS on default **** SHOW BINARY LOGS; Log_name File_size master-bin.000001 1203   **** SHOW BINLOG EVENTS on default **** binlog_name = 'master-bin.000001' SHOW BINLOG EVENTS IN 'master-bin.000001'; Log_name Pos Event_type Server_id End_log_pos Info master-bin.000001 4 Format_desc 1 256 Server ver: 11.0.1-MariaDB-debug-log, Binlog ver: 4 master-bin.000001 256 Gtid_list 1 285 [] master-bin.000001 285 Binlog_checkpoint 1 329 master-bin.000001 master-bin.000001 329 Gtid 1 371 GTID 0-1-1 master-bin.000001 371 Query 1 540 use `test`; CREATE TABLE t9 (`col_int_nokey` SMALLINT UNSIGNED DEFAULT 0 ) ROW_FORMAT DYNAMIC ENGINE=Aria master-bin.000001 540 Gtid 1 582 BEGIN GTID 0-1-2 master-bin.000001 582 Query 1 682 use `test`; INSERT INTO t9 () VALUES (),(),() master-bin.000001 682 Query 1 755 COMMIT master-bin.000001 755 Gtid 1 797 GTID 0-1-3 master-bin.000001 797 Query 1 876 use `test`; FLUSH TABLES master-bin.000001 876 Gtid 1 918 GTID 0-1-4 master-bin.000001 918 Query 1 1044 use `test`; ALTER ONLINE TABLE t9 ADD UNIQUE (`col_int_nokey`) master-bin.000001 1044 Gtid 1 1086 GTID 0-1-5 master-bin.000001 1086 Query 1 1203 use `test`; DROP TABLE `t9` /* generated by server */   **** SHOW RELAYLOG EVENTS on default **** relaylog_name = 'No such row' SHOW RELAYLOG EVENTS IN 'No such row'; Log_name Pos Event_type Server_id End_log_pos Info connection default;   == /home/nik/mariadb/bld/mysql-test/var/tmp/analyze-sync_with_master-mysqld.2.err ==   ############################## default ##############################   **** SHOW WARNINGS on default **** SHOW WARNINGS; Level Code Message   **** SELECT replication-related variables on default **** SELECT NOW(), @@SERVER_ID; NOW() @@SERVER_ID 2023-04-14 19:01:47 2   **** SHOW SLAVE STATUS on default **** SHOW SLAVE STATUS; Slave_IO_State Waiting for master to send event Master_Host 127.0.0.1 Master_User root Master_Port 16000 Connect_Retry 1 Master_Log_File master-bin.000001 Read_Master_Log_Pos 1203 Relay_Log_File slave-relay-bin.000002 Relay_Log_Pos 1176 Relay_Master_Log_File master-bin.000001 Slave_IO_Running Yes Slave_SQL_Running No Replicate_Rewrite_DB Replicate_Do_DB Replicate_Ignore_DB Replicate_Do_Table Replicate_Ignore_Table Replicate_Wild_Do_Table Replicate_Wild_Ignore_Table Last_Errno 1062 Last_Error Error 'Duplicate entry '0' for key 'col_int_nokey'' on query. Default database: 'test'. Query: 'ALTER ONLINE TABLE t9 ADD UNIQUE (`col_int_nokey`)' Skip_Counter 0 Exec_Master_Log_Pos 876 Relay_Log_Space 1812 Until_Condition None Until_Log_File Until_Log_Pos 0 Master_SSL_Allowed No Master_SSL_CA_File Master_SSL_CA_Path Master_SSL_Cert Master_SSL_Cipher Master_SSL_Key Seconds_Behind_Master NULL Master_SSL_Verify_Server_Cert No Last_IO_Errno 0 Last_IO_Error Last_SQL_Errno 1062 Last_SQL_Error Error 'Duplicate entry '0' for key 'col_int_nokey'' on query. Default database: 'test'. Query: 'ALTER ONLINE TABLE t9 ADD UNIQUE (`col_int_nokey`)' Replicate_Ignore_Server_Ids Master_Server_Id 1 Master_SSL_Crl Master_SSL_Crlpath Using_Gtid Slave_Pos Gtid_IO_Pos 0-1-5 Replicate_Do_Domain_Ids Replicate_Ignore_Domain_Ids Parallel_Mode optimistic SQL_Delay 0 SQL_Remaining_Delay NULL Slave_SQL_Running_State Slave_DDL_Groups 3 Slave_Non_Transactional_Groups 1 Slave_Transactional_Groups 0   **** SHOW MASTER STATUS on default **** SHOW MASTER STATUS; File slave-bin.000001 Position 875 Binlog_Do_DB Binlog_Ignore_DB   **** SHOW SLAVE HOSTS on default **** SHOW SLAVE HOSTS;   **** SHOW PROCESSLIST on default **** SHOW PROCESSLIST; Id User Host db Command Time State Info Progress 7 system user NULL Slave_IO 0 Waiting for master to send event NULL 0.000 11 root localhost NULL Query 0 starting SHOW PROCESSLIST 0.000   **** SHOW BINARY LOGS on default **** SHOW BINARY LOGS; Log_name File_size slave-bin.000001 875   **** SHOW BINLOG EVENTS on default **** binlog_name = 'slave-bin.000001' SHOW BINLOG EVENTS IN 'slave-bin.000001'; Log_name Pos Event_type Server_id End_log_pos Info slave-bin.000001 4 Format_desc 2 256 Server ver: 11.0.1-MariaDB-debug-log, Binlog ver: 4 slave-bin.000001 256 Gtid_list 2 285 [] slave-bin.000001 285 Binlog_checkpoint 2 328 slave-bin.000001 slave-bin.000001 328 Gtid 1 370 GTID 0-1-1 slave-bin.000001 370 Query 1 539 use `test`; CREATE TABLE t9 (`col_int_nokey` SMALLINT UNSIGNED DEFAULT 0 ) ROW_FORMAT DYNAMIC ENGINE=Aria slave-bin.000001 539 Gtid 1 581 BEGIN GTID 0-1-2 slave-bin.000001 581 Query 1 681 use `test`; INSERT INTO t9 () VALUES (),(),() slave-bin.000001 681 Query 1 754 COMMIT slave-bin.000001 754 Gtid 1 796 GTID 0-1-3 slave-bin.000001 796 Query 1 875 use `test`; FLUSH TABLES   **** SHOW RELAYLOG EVENTS on default **** relaylog_name = 'slave-relay-bin.000002' SHOW RELAYLOG EVENTS IN 'slave-relay-bin.000002'; Log_name Pos Event_type Server_id End_log_pos Info slave-relay-bin.000002 4 Format_desc 2 256 Server ver: 11.0.1-MariaDB-debug-log, Binlog ver: 4 slave-relay-bin.000002 256 Rotate 1 0 master-bin.000001;pos=4 slave-relay-bin.000002 304 Format_desc 1 256 Server ver: 11.0.1-MariaDB-debug-log, Binlog ver: 4 slave-relay-bin.000002 556 Gtid_list 1 285 [] slave-relay-bin.000002 585 Binlog_checkpoint 1 329 master-bin.000001 slave-relay-bin.000002 629 Gtid 1 371 GTID 0-1-1 slave-relay-bin.000002 671 Query 1 540 use `test`; CREATE TABLE t9 (`col_int_nokey` SMALLINT UNSIGNED DEFAULT 0 ) ROW_FORMAT DYNAMIC ENGINE=Aria slave-relay-bin.000002 840 Gtid 1 582 BEGIN GTID 0-1-2 slave-relay-bin.000002 882 Query 1 682 use `test`; INSERT INTO t9 () VALUES (),(),() slave-relay-bin.000002 982 Query 1 755 COMMIT slave-relay-bin.000002 1055 Gtid 1 797 GTID 0-1-3 slave-relay-bin.000002 1097 Query 1 876 use `test`; FLUSH TABLES slave-relay-bin.000002 1176 Gtid 1 918 GTID 0-1-4 slave-relay-bin.000002 1218 Query 1 1044 use `test`; ALTER ONLINE TABLE t9 ADD UNIQUE (`col_int_nokey`) slave-relay-bin.000002 1344 Gtid 1 1086 GTID 0-1-5 slave-relay-bin.000002 1386 Query 1 1203 use `test`; DROP TABLE `t9` /* generated by server */ connection default;       - saving '/home/nik/mariadb/bld/mysql-test/var/log/gcol.virt-innodb,mix/' to '/home/nik/mariadb/bld/mysql-test/var/log/gcol.virt-innodb,mix/'   Only 1 of 3 completed. -------------------------------------------------------------------------- The servers were restarted 0 times Spent 0.000 of 5 seconds executing testcases   Failure: Failed 1/1 tests, 0.00% were successful.   Failing test(s): gcol.virt   The log files in var/log may give you some hint of what went wrong.   If you want to report this error, please read first the documentation at http://dev.mysql.com/doc/mysql/en/mysql-test-suite.html   mysql-test-run: *** ERROR: there were failing test cases

            nikitamalyavin The issue I am seeing was originally found with an ONLINE query, but I then changed the query to use ALGORITHM=COPY instead and found the issue from 10.4. I suspected they were related, but I will check the ONLINE query with the latest commit.

            angelique.sklavounos Angelique Sklavounos (Inactive) added a comment - nikitamalyavin The issue I am seeing was originally found with an ONLINE query, but I then changed the query to use ALGORITHM=COPY instead and found the issue from 10.4. I suspected they were related, but I will check the ONLINE query with the latest commit.

            monty It seems this bug goes to you. No need for ONLINE, it's reproducible on vanilla 11.0

            nikitamalyavin Nikita Malyavin added a comment - monty It seems this bug goes to you. No need for ONLINE, it's reproducible on vanilla 11.0

            People

              monty Michael Widenius
              angelique.sklavounos Angelique Sklavounos (Inactive)
              Votes:
              1 Vote for this issue
              Watchers:
              3 Start watching this issue

              Dates

                Created:
                Updated:

                Git Integration

                  Error rendering 'com.xiplink.jira.git.jira_git_plugin:git-issue-webpanel'. Please contact your Jira administrators.