mirror of
https://github.com/MariaDB/server.git
synced 2025-07-30 16:24:05 +03:00
Don't crash if creating sequence under XA
MDEV-22002 Assertion `!is_set() || (m_status == DA_OK_BULK && is_bulk_op())' failed upon CREATE TEMPORARY SEQUENCE under XA
This commit is contained in:
@ -345,3 +345,16 @@ connection default;
|
||||
XA END 'xid1';
|
||||
XA ROLLBACK 'xid1';
|
||||
DROP TABLE t1, t2, t3;
|
||||
XA BEGIN 'xid';
|
||||
CREATE TEMPORARY SEQUENCE s;
|
||||
ERROR XAE07: XAER_RMFAIL: The command cannot be executed when global transaction is in the ACTIVE state
|
||||
XA END 'xid';
|
||||
XA ROLLBACK 'xid';
|
||||
XA BEGIN 'xid';
|
||||
CREATE SEQUENCE s;
|
||||
ERROR XAE07: XAER_RMFAIL: The command cannot be executed when global transaction is in the ACTIVE state
|
||||
XA END 'xid';
|
||||
XA ROLLBACK 'xid';
|
||||
#
|
||||
# End of 10.3 tests
|
||||
#
|
||||
|
@ -478,3 +478,29 @@ DROP TABLE t1, t2, t3;
|
||||
|
||||
--source include/wait_until_count_sessions.inc
|
||||
|
||||
#
|
||||
# MDEV-22002 Assertion `!is_set() || (m_status == DA_OK_BULK && is_bulk_op())'
|
||||
# failed upon CREATE TEMPORARY SEQUENCE under XA
|
||||
#
|
||||
|
||||
XA BEGIN 'xid';
|
||||
|
||||
--error ER_XAER_RMFAIL
|
||||
CREATE TEMPORARY SEQUENCE s;
|
||||
|
||||
XA END 'xid';
|
||||
|
||||
XA ROLLBACK 'xid';
|
||||
|
||||
XA BEGIN 'xid';
|
||||
|
||||
--error ER_XAER_RMFAIL
|
||||
CREATE SEQUENCE s;
|
||||
|
||||
XA END 'xid';
|
||||
|
||||
XA ROLLBACK 'xid';
|
||||
|
||||
--echo #
|
||||
--echo # End of 10.3 tests
|
||||
--echo #
|
||||
|
@ -355,8 +355,10 @@ bool sequence_insert(THD *thd, LEX *lex, TABLE_LIST *org_table_list)
|
||||
seq->reserved_until= seq->start;
|
||||
error= seq->write_initial_sequence(table);
|
||||
|
||||
trans_commit_stmt(thd);
|
||||
trans_commit_implicit(thd);
|
||||
if (trans_commit_stmt(thd))
|
||||
error= 1;
|
||||
if (trans_commit_implicit(thd))
|
||||
error= 1;
|
||||
|
||||
if (!temporary_table)
|
||||
{
|
||||
|
Reference in New Issue
Block a user