Details

    • Type: Technical task
    • Status: Open
    • Priority: Major
    • Resolution: Unresolved
    • Affects Version/s: None
    • Fix Version/s: N/A
    • Component/s: None
    • Labels:
      None

      Gliffy Diagrams

        Attachments

          Issue Links

            Activity

            Hide
            elenst Elena Stepanova added a comment - - edited

            MySQL:68311: InnoDB: Failing assertion thr in row0upd.cc on concurrent ALTER, UPDATE, HANDLER

            Description and RQG test are attached

            They say it's a duplicate of internal bug#16063835.
            So, duplicate or nor, if/when the fix appears without a test case, we can create one based on the provided stress test and the fix code, if we want to.

            Update:

            Bugfix in 5.6.11:

            revno: 4672
            revision-id: marko.makela@oracle.com-20130124151343-slg3a69eok4qu4r6
            parent: jon.hauglid@oracle.com-20130124135614-vvkd88u27ntpshx2
            committer: Marko Mäkelä <marko.makela@oracle.com>
            branch nick: mysql-5.6
            timestamp: Thu 2013-01-24 17:13:43 +0200
            message:
              Bug#16063835 ASSERT THR ROW_UPD_CHANGES_ORD_FIELD_BINARY_FUNC,
              ROW_LOG_TABLE_APPLY_UPDATE
              
              btr_cur_pessimistic_update(), btr_cur_optimistic_update(),
              btr_cur_update_in_place(): Require thr!=NULL. Allow
              thr->graph->trx->id != trx_id during online table rebuild, as neither
              trx_id nor thr->graph->trx->id will be written to the record due to
              BTR_KEEP_SYS_FLAG.
              
              row_log_table_apply_update(): Pass thr to btr_cur_pessimistic_insert()
              in order to avoid the debug assertion failure.
              
              rb#1892
            

            Came without a test case.

            Cannot reproduce on the current 10.0 tree and on 10.0.10, apparently fixed by 5.6.14 or 5.6.15 merge

            Show
            elenst Elena Stepanova added a comment - - edited MySQL:68311: InnoDB: Failing assertion thr in row0upd.cc on concurrent ALTER, UPDATE, HANDLER Description and RQG test are attached They say it's a duplicate of internal bug#16063835. So, duplicate or nor, if/when the fix appears without a test case, we can create one based on the provided stress test and the fix code, if we want to. Update: Bugfix in 5.6.11: revno: 4672 revision-id: marko.makela@oracle.com-20130124151343-slg3a69eok4qu4r6 parent: jon.hauglid@oracle.com-20130124135614-vvkd88u27ntpshx2 committer: Marko Mäkelä <marko.makela@oracle.com> branch nick: mysql-5.6 timestamp: Thu 2013-01-24 17:13:43 +0200 message: Bug#16063835 ASSERT THR ROW_UPD_CHANGES_ORD_FIELD_BINARY_FUNC, ROW_LOG_TABLE_APPLY_UPDATE btr_cur_pessimistic_update(), btr_cur_optimistic_update(), btr_cur_update_in_place(): Require thr!=NULL. Allow thr->graph->trx->id != trx_id during online table rebuild, as neither trx_id nor thr->graph->trx->id will be written to the record due to BTR_KEEP_SYS_FLAG. row_log_table_apply_update(): Pass thr to btr_cur_pessimistic_insert() in order to avoid the debug assertion failure. rb#1892 Came without a test case. Cannot reproduce on the current 10.0 tree and on 10.0.10, apparently fixed by 5.6.14 or 5.6.15 merge
            Hide
            elenst Elena Stepanova added a comment - - edited

            Bug #68694 - Server crashes in ptr_compare on NOW and CAST in ORDER BY
            See also MDEV-4285

            Reproducible on 5.6.10

            Test case:

            CREATE TABLE t1 (pk INT PRIMARY KEY) ENGINE=InnoDB;
            INSERT INTO t1 VALUES (1),(2),(3),(4),(5),(6),(7),(8),(9),(10);
            SELECT SQL_NO_CACHE * FROM t1 ORDER BY NOW(), CAST( pk AS CHAR(0) );

            Update

            Still not fixed in 10.0.14, raised the priority

            Show
            elenst Elena Stepanova added a comment - - edited Bug #68694 - Server crashes in ptr_compare on NOW and CAST in ORDER BY See also MDEV-4285 Reproducible on 5.6.10 Test case: CREATE TABLE t1 (pk INT PRIMARY KEY) ENGINE=InnoDB; INSERT INTO t1 VALUES (1),(2),(3),(4),(5),(6),(7),(8),(9),(10); SELECT SQL_NO_CACHE * FROM t1 ORDER BY NOW(), CAST( pk AS CHAR(0) ); Update Still not fixed in 10.0.14, raised the priority
            Hide
            elenst Elena Stepanova added a comment -

            Bug #68695 - Assertion `table_share->tmp_table != NO_TMP_TABLE || m_lock_type == 1' fails

            Reproducible on 5.6.10-debug

            Test case:
            CREATE TABLE tmp SELECT 1 FROM DUAL WHERE EXP( 2000 );

            Show
            elenst Elena Stepanova added a comment - Bug #68695 - Assertion `table_share->tmp_table != NO_TMP_TABLE || m_lock_type == 1' fails Reproducible on 5.6.10-debug Test case: CREATE TABLE tmp SELECT 1 FROM DUAL WHERE EXP( 2000 );
            Hide
            elenst Elena Stepanova added a comment - - edited

            Bug #68705 - Valgrind warnings (uninitialised value(s)) in Item_field::val on SELECT INTERVAL

            Test case:

            CREATE TABLE t1 (a INT);
            SELECT SQL_NO_CACHE INTERVAL( 1, @var := a, 2, 3, 4, 5, 6, 7, 8 ) FROM t1;

            Show
            elenst Elena Stepanova added a comment - - edited Bug #68705 - Valgrind warnings (uninitialised value(s)) in Item_field::val on SELECT INTERVAL Test case: CREATE TABLE t1 (a INT); SELECT SQL_NO_CACHE INTERVAL( 1, @var := a, 2, 3, 4, 5, 6, 7, 8 ) FROM t1;
            Hide
            elenst Elena Stepanova added a comment - - edited

            http://bugs.mysql.com/bug.php?id=68759

            DROP TABLE IF EXISTS t_inno;
            CREATE TABLE t_inno (pk INT PRIMARY KEY, t_key TIME, t TIME, KEY(t_key)) ENGINE=InnoDB;
            INSERT INTO t_inno VALUES (1,'12:12:12','12:12:12'),(2,'21:21:21','21:21:21');

            SELECT * FROM t_inno WHERE t < 'z';
            SELECT pk FROM t_inno WHERE t_key < 'z';
            SELECT * FROM t_inno WHERE t_key < 'z';

            MySQL [test]> DROP TABLE IF EXISTS t_inno;
            Query OK, 0 rows affected (0.20 sec)

            MySQL [test]> CREATE TABLE t_inno (pk INT PRIMARY KEY, t_key TIME, t TIME, KEY(t_key)) ENGINE=InnoDB;
            Query OK, 0 rows affected (1.20 sec)

            MySQL [test]> INSERT INTO t_inno VALUES (1,'12:12:12','12:12:12'),(2,'21:21:21','21:21:21');
            Query OK, 2 rows affected (0.07 sec)
            Records: 2 Duplicates: 0 Warnings: 0

            MySQL [test]>
            MySQL [test]> SELECT * FROM t_inno WHERE t < 'z';
            --------------------

            pk t_key t

            --------------------

            1 12:12:12 12:12:12
            2 21:21:21 21:21:21

            --------------------
            2 rows in set, 1 warning (0.00 sec)

            MySQL [test]> SELECT pk FROM t_inno WHERE t_key < 'z';
            ----

            pk

            ----

            1
            2

            ----
            2 rows in set, 2 warnings (0.00 sec)

            MySQL [test]> SELECT * FROM t_inno WHERE t_key < 'z';
            Empty set, 2 warnings (0.00 sec)

            Show
            elenst Elena Stepanova added a comment - - edited http://bugs.mysql.com/bug.php?id=68759 DROP TABLE IF EXISTS t_inno; CREATE TABLE t_inno (pk INT PRIMARY KEY, t_key TIME, t TIME, KEY(t_key)) ENGINE=InnoDB; INSERT INTO t_inno VALUES (1,'12:12:12','12:12:12'),(2,'21:21:21','21:21:21'); SELECT * FROM t_inno WHERE t < 'z'; SELECT pk FROM t_inno WHERE t_key < 'z'; SELECT * FROM t_inno WHERE t_key < 'z'; MySQL [test] > DROP TABLE IF EXISTS t_inno; Query OK, 0 rows affected (0.20 sec) MySQL [test] > CREATE TABLE t_inno (pk INT PRIMARY KEY, t_key TIME, t TIME, KEY(t_key)) ENGINE=InnoDB; Query OK, 0 rows affected (1.20 sec) MySQL [test] > INSERT INTO t_inno VALUES (1,'12:12:12','12:12:12'),(2,'21:21:21','21:21:21'); Query OK, 2 rows affected (0.07 sec) Records: 2 Duplicates: 0 Warnings: 0 MySQL [test] > MySQL [test] > SELECT * FROM t_inno WHERE t < 'z'; --- -------- --------- pk t_key t --- -------- --------- 1 12:12:12 12:12:12 2 21:21:21 21:21:21 --- -------- --------- 2 rows in set, 1 warning (0.00 sec) MySQL [test] > SELECT pk FROM t_inno WHERE t_key < 'z'; ---- pk ---- 1 2 ---- 2 rows in set, 2 warnings (0.00 sec) MySQL [test] > SELECT * FROM t_inno WHERE t_key < 'z'; Empty set, 2 warnings (0.00 sec)
            Hide
            elenst Elena Stepanova added a comment -

            Possibly file later

            MySQL [test]> select @@sql_mode;
            ------------------------

            @@sql_mode

            ------------------------

            NO_ENGINE_SUBSTITUTION

            ------------------------
            1 row in set (0.00 sec)

            MySQL [test]> show create table t2;
            --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+

            Table Create Table

            --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+

            t2 CREATE TABLE `t2` (
            `pk` int(11) NOT NULL AUTO_INCREMENT,
            `c1` varchar(8) CHARACTER SET latin1 DEFAULT NULL,
            `c2` char(3) CHARACTER SET latin1 DEFAULT NULL,
            `i` int(11) DEFAULT NULL,
            `u` int(10) unsigned DEFAULT NULL,
            PRIMARY KEY (`pk`),
            KEY `c1` (`c1`),
            KEY `c2` (`c2`),
            KEY `i` (`i`),
            KEY `u` (`u`),
            KEY `c1_2` (`c1`,`i`),
            KEY `c2_2` (`c2`,`u`)
            ) ENGINE=InnoDB AUTO_INCREMENT=3 DEFAULT CHARSET=latin1 COLLATE=latin1_bin

            --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
            1 row in set (0.00 sec)

            MySQL [test]> select * from t2;
            --------------------

            pk c1 c2 i u

            --------------------

            1 ab ab 0 0
            2 NULL NULL NULL 0

            --------------------
            2 rows in set (0.00 sec)

            MySQL [test]> update t2 set i = u-1;
            ERROR 1690 (22003): BIGINT UNSIGNED value is out of range in '(`test`.`t2`.`u` - 1)'
            MySQL [test]>

            Show
            elenst Elena Stepanova added a comment - Possibly file later MySQL [test] > select @@sql_mode; ------------------------ @@sql_mode ------------------------ NO_ENGINE_SUBSTITUTION ------------------------ 1 row in set (0.00 sec) MySQL [test] > show create table t2; ------ --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ Table Create Table ------ --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ t2 CREATE TABLE `t2` ( `pk` int(11) NOT NULL AUTO_INCREMENT, `c1` varchar(8) CHARACTER SET latin1 DEFAULT NULL, `c2` char(3) CHARACTER SET latin1 DEFAULT NULL, `i` int(11) DEFAULT NULL, `u` int(10) unsigned DEFAULT NULL, PRIMARY KEY (`pk`), KEY `c1` (`c1`), KEY `c2` (`c2`), KEY `i` (`i`), KEY `u` (`u`), KEY `c1_2` (`c1`,`i`), KEY `c2_2` (`c2`,`u`) ) ENGINE=InnoDB AUTO_INCREMENT=3 DEFAULT CHARSET=latin1 COLLATE=latin1_bin ------ --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ 1 row in set (0.00 sec) MySQL [test] > select * from t2; --- ---- ---- ---- ----- pk c1 c2 i u --- ---- ---- ---- ----- 1 ab ab 0 0 2 NULL NULL NULL 0 --- ---- ---- ---- ----- 2 rows in set (0.00 sec) MySQL [test] > update t2 set i = u-1; ERROR 1690 (22003): BIGINT UNSIGNED value is out of range in '(`test`.`t2`.`u` - 1)' MySQL [test] >
            Hide
            elenst Elena Stepanova added a comment -

            Filed bug http://bugs.mysql.com/bug.php?id=69203 (Valgrind warnings and crash on select from an InnoDB table), for 5.7 revno 5216.
            Test case:
            CREATE TABLE t1 (pk INT PRIMARY KEY) ENGINE=InnoDB;
            INSERT INTO t1 VALUES (10),(11);

            SELECT * FROM t1;

            1. End of test case

            When run with --valgrind-mysqld under MTR, causes a valgrind warnings and a crash on BUILD/compile-pentium-debug-max-no-ndb

            Show
            elenst Elena Stepanova added a comment - Filed bug http://bugs.mysql.com/bug.php?id=69203 (Valgrind warnings and crash on select from an InnoDB table), for 5.7 revno 5216. Test case: CREATE TABLE t1 (pk INT PRIMARY KEY) ENGINE=InnoDB; INSERT INTO t1 VALUES (10),(11); SELECT * FROM t1; End of test case When run with --valgrind-mysqld under MTR, causes a valgrind warnings and a crash on BUILD/compile-pentium-debug-max-no-ndb
            Hide
            elenst Elena Stepanova added a comment -

            MySQL (and MariaDB) prints garbage in warning records:

            2013-08-09 23:46:52 7f4dafeec740 InnoDB: Warning: Using innodb_additional_mem_pool_size is DEPRECATED. This option may be removed in future releases, together with the option innodb_use_sys_malloc and with the InnoDB's internal memory allocator.
            2013-08-09 23:46:52 7f4dafeec740 InnoDB: Warning: Using innodb_locks_unsafe_for_binlog is DEPRECATED. This option may be removed in future releases. Please use READ COMMITTED transaction isolation level instead, see http://dev.mysql.com/doc/refman/10.0/en/set-transaction.html.

            I think there was an upstream bug about it, but can't find it now, need to check later.

            Show
            elenst Elena Stepanova added a comment - MySQL (and MariaDB) prints garbage in warning records: 2013-08-09 23:46:52 7f4dafeec740 InnoDB: Warning: Using innodb_additional_mem_pool_size is DEPRECATED. This option may be removed in future releases, together with the option innodb_use_sys_malloc and with the InnoDB's internal memory allocator. 2013-08-09 23:46:52 7f4dafeec740 InnoDB: Warning: Using innodb_locks_unsafe_for_binlog is DEPRECATED. This option may be removed in future releases. Please use READ COMMITTED transaction isolation level instead, see http://dev.mysql.com/doc/refman/10.0/en/set-transaction.html . I think there was an upstream bug about it, but can't find it now, need to check later.
            Show
            elenst Elena Stepanova added a comment - https://github.com/MySQLOnRocksDB/mysql-5.6/issues/70

              People

              • Assignee:
                elenst Elena Stepanova
                Reporter:
                elenst Elena Stepanova
              • Votes:
                0 Vote for this issue
                Watchers:
                3 Start watching this issue

                Dates

                • Created:
                  Updated:

                  Time Tracking

                  Estimated:
                  Original Estimate - Not Specified
                  Not Specified
                  Remaining:
                  Remaining Estimate - 0 minutes
                  0m
                  Logged:
                  Time Spent - 1 day, 2 hours
                  1d 2h