summaryrefslogtreecommitdiff
path: root/mysql-test/t/commit.test
diff options
context:
space:
mode:
authorHe Zhenxing <zhenxing.he@sun.com>2009-12-04 09:46:33 +0800
committerHe Zhenxing <zhenxing.he@sun.com>2009-12-04 09:46:33 +0800
commitc926610d7cdf88bf7133a3609d70fe3cf292b0db (patch)
tree09ee9cda482d9a3f2fc365bd77b66441c765d6c3 /mysql-test/t/commit.test
parenta02972d8206e1f1d01618ef065f47a32e1749ac7 (diff)
downloadmariadb-git-c926610d7cdf88bf7133a3609d70fe3cf292b0db.tar.gz
Bug#49020 Semi-sync master crashed with free_pool == NULL, assertion `free_pool_'
Before this patch, semisync assumed transactions running in parallel can not be larger than max_connections, but this is not true when the event scheduler is executing events, and cause semisync run out of preallocated transaction nodes. Fix the problem by allocating transaction nodes dynamically. This patch also fixed a possible deadlock when running UNINSTALL PLUGIN rpl_semi_sync_master and updating in parallel. Fixed by releasing the internal Delegate lock before unlock the plugins. mysql-test/suite/rpl/t/rpl_semi_sync_event.test: Add test case for bug#49020 plugin/semisync/semisync_master.cc: Allocating TranxNode dynamically plugin/semisync/semisync_master.h: Allocating TranxNode dynamically sql/rpl_handler.cc: Unlock plugins after we have released the Delegate lock to avoid possible deadlock when uninstalling semisync master plugin and doing update in parallel.
Diffstat (limited to 'mysql-test/t/commit.test')
0 files changed, 0 insertions, 0 deletions