MDEV-31928 Assertion xid ... < 128 failed in trx_undo_write_xid()
trx_undo_write_xid(): Correct an off-by-one error in a debug assertion.
This commit is contained in:
parent
518fe51988
commit
5a8a8fc953
@ -15,3 +15,30 @@ xa prepare 'xid2';
|
||||
release savepoint `sv1`;
|
||||
xa commit 'xid2';
|
||||
drop table t1;
|
||||
#
|
||||
# MDEV-31928 Assertion xid ... < 128 failed in trx_undo_write_xid()
|
||||
#
|
||||
CREATE TABLE t (a INT PRIMARY KEY) ENGINE=INNODB;
|
||||
XA START 'gtrid_67890123456789012345678901234567890123456789012345678901234','bqual_6789012345678901234567890123456789012345678901234567890123',1234567890;
|
||||
ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near '1234567890' at line 1
|
||||
XA START 'gtrid_6789012345678901234567890123456789012345678901234567890123','bqual_67890123456789012345678901234567890123456789012345678901234',1234567890;
|
||||
ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near '1234567890' at line 1
|
||||
XA START 'gtrid_6789012345678901234567890123456789012345678901234567890123','bqual_6789012345678901234567890123456789012345678901234567890123',1234567890;
|
||||
INSERT INTO t VALUES(1);
|
||||
XA END 'gtrid_67890123456789012345678901234567890123456789012345678901234','bqual_6789012345678901234567890123456789012345678901234567890123',1234567890;
|
||||
ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near '1234567890' at line 1
|
||||
XA END 'gtrid_6789012345678901234567890123456789012345678901234567890123','bqual_67890123456789012345678901234567890123456789012345678901234',1234567890;
|
||||
ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near '1234567890' at line 1
|
||||
XA END 'gtrid_6789012345678901234567890123456789012345678901234567890123','bqual_6789012345678901234567890123456789012345678901234567890123',1234567890;
|
||||
XA PREPARE 'gtrid_67890123456789012345678901234567890123456789012345678901234','bqual_6789012345678901234567890123456789012345678901234567890123',1234567890;
|
||||
ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near '1234567890' at line 1
|
||||
XA PREPARE 'gtrid_6789012345678901234567890123456789012345678901234567890123','bqual_67890123456789012345678901234567890123456789012345678901234',1234567890;
|
||||
ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near '1234567890' at line 1
|
||||
XA PREPARE 'gtrid_6789012345678901234567890123456789012345678901234567890123','bqual_6789012345678901234567890123456789012345678901234567890123',1234567890;
|
||||
XA COMMIT 'gtrid_67890123456789012345678901234567890123456789012345678901234','bqual_6789012345678901234567890123456789012345678901234567890123',1234567890;
|
||||
ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near '1234567890' at line 1
|
||||
XA COMMIT 'gtrid_6789012345678901234567890123456789012345678901234567890123','bqual_67890123456789012345678901234567890123456789012345678901234',1234567890;
|
||||
ERROR 42000: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near '1234567890' at line 1
|
||||
XA COMMIT 'gtrid_6789012345678901234567890123456789012345678901234567890123','bqual_6789012345678901234567890123456789012345678901234567890123',1234567890;
|
||||
DROP TABLE t;
|
||||
# End of 10.4 tests
|
||||
|
@ -1,6 +1,6 @@
|
||||
--source include/have_innodb.inc
|
||||
|
||||
--disable_abort_on_error
|
||||
--error ER_XAER_NOTA
|
||||
xa rollback 'xid2';
|
||||
drop table if exists t1;
|
||||
create table t1(a int)engine=innodb;
|
||||
@ -9,9 +9,42 @@ xa start 'xid2';
|
||||
insert into `t1` values (1);
|
||||
savepoint `sv1`;
|
||||
xa end 'xid2';
|
||||
--error ER_XAER_RMFAIL
|
||||
start transaction;
|
||||
xa prepare 'xid2';
|
||||
release savepoint `sv1`;
|
||||
xa commit 'xid2';
|
||||
drop table t1;
|
||||
|
||||
-- echo #
|
||||
-- echo # MDEV-31928 Assertion xid ... < 128 failed in trx_undo_write_xid()
|
||||
-- echo #
|
||||
|
||||
CREATE TABLE t (a INT PRIMARY KEY) ENGINE=INNODB;
|
||||
--error ER_PARSE_ERROR
|
||||
XA START 'gtrid_67890123456789012345678901234567890123456789012345678901234','bqual_6789012345678901234567890123456789012345678901234567890123',1234567890;
|
||||
--error ER_PARSE_ERROR
|
||||
XA START 'gtrid_6789012345678901234567890123456789012345678901234567890123','bqual_67890123456789012345678901234567890123456789012345678901234',1234567890;
|
||||
XA START 'gtrid_6789012345678901234567890123456789012345678901234567890123','bqual_6789012345678901234567890123456789012345678901234567890123',1234567890;
|
||||
|
||||
INSERT INTO t VALUES(1);
|
||||
|
||||
--error ER_PARSE_ERROR
|
||||
XA END 'gtrid_67890123456789012345678901234567890123456789012345678901234','bqual_6789012345678901234567890123456789012345678901234567890123',1234567890;
|
||||
--error ER_PARSE_ERROR
|
||||
XA END 'gtrid_6789012345678901234567890123456789012345678901234567890123','bqual_67890123456789012345678901234567890123456789012345678901234',1234567890;
|
||||
XA END 'gtrid_6789012345678901234567890123456789012345678901234567890123','bqual_6789012345678901234567890123456789012345678901234567890123',1234567890;
|
||||
--error ER_PARSE_ERROR
|
||||
XA PREPARE 'gtrid_67890123456789012345678901234567890123456789012345678901234','bqual_6789012345678901234567890123456789012345678901234567890123',1234567890;
|
||||
--error ER_PARSE_ERROR
|
||||
XA PREPARE 'gtrid_6789012345678901234567890123456789012345678901234567890123','bqual_67890123456789012345678901234567890123456789012345678901234',1234567890;
|
||||
XA PREPARE 'gtrid_6789012345678901234567890123456789012345678901234567890123','bqual_6789012345678901234567890123456789012345678901234567890123',1234567890;
|
||||
--error ER_PARSE_ERROR
|
||||
XA COMMIT 'gtrid_67890123456789012345678901234567890123456789012345678901234','bqual_6789012345678901234567890123456789012345678901234567890123',1234567890;
|
||||
--error ER_PARSE_ERROR
|
||||
XA COMMIT 'gtrid_6789012345678901234567890123456789012345678901234567890123','bqual_67890123456789012345678901234567890123456789012345678901234',1234567890;
|
||||
XA COMMIT 'gtrid_6789012345678901234567890123456789012345678901234567890123','bqual_6789012345678901234567890123456789012345678901234567890123',1234567890;
|
||||
|
||||
DROP TABLE t;
|
||||
|
||||
-- echo # End of 10.4 tests
|
||||
|
@ -665,7 +665,7 @@ trx_undo_write_xid(
|
||||
{
|
||||
DBUG_ASSERT(xid->gtrid_length >= 0);
|
||||
DBUG_ASSERT(xid->bqual_length >= 0);
|
||||
DBUG_ASSERT(xid->gtrid_length + xid->bqual_length < XIDDATASIZE);
|
||||
DBUG_ASSERT(xid->gtrid_length + xid->bqual_length <= XIDDATASIZE);
|
||||
|
||||
mlog_write_ulint(log_hdr + TRX_UNDO_XA_FORMAT,
|
||||
static_cast<ulint>(xid->formatID),
|
||||
|
Loading…
x
Reference in New Issue
Block a user