It was a forgotten rw_unlock(), due to the deadlock detector feature (so bug was only in 5.1-maria, not
6.0-maria).
mysql-test/suite/maria/r/maria3.result:
result, all fine
mysql-test/suite/maria/t/maria3.test:
Test of BUG#39697: two scenarios (transactional tables, and non-transactional table but dynamic row format so still taking the rwlock) where the hang happened.
t2 added by this test was masked by a temporary table created earlier in the test, which we forgot to drop.
storage/maria/ha_maria.cc:
use new macro
storage/maria/ma_blockrec.c:
use new macro
storage/maria/ma_commit.c:
use new macro
storage/maria/ma_init.c:
putting address of dummy_transaction_object in --debug trace can be useful
storage/maria/ma_open.c:
use new macro
storage/maria/ma_write.c:
if local_lock_tree is true, we have acquired keyinfo->root_lock so need to release it before "goto err".
A pair of assertions so that our usage of TrIDs is kept sensible.
storage/maria/maria_def.h:
A macro so that changes of MARIA_HA::trn can be tracked with --debug. It helped to understand in what cases,
in maria_write(), we could have !(info->dup_key_trid == info->trn->trid) && !share->now_transactional
(answer: ALTER TABLE adding UNIQUE index on transactional table).
mysql-test/mysql-test-run.pl:
The maria suite made default for execution.
mysql-test/suite/maria:
Maria tests moved to separate suite.
mysql-test/suite/maria/r:
Maria tests moved to separate suite.
mysql-test/suite/maria/r/maria-autozerofill.result:
Maria tests moved to separate suite.
mysql-test/suite/maria/r/maria-big.result:
Maria tests moved to separate suite.
mysql-test/suite/maria/r/maria-big2.result:
Maria tests moved to separate suite.
mysql-test/suite/maria/r/maria-connect.result:
Maria tests moved to separate suite.
mysql-test/suite/maria/r/maria-gis-rtree-dynamic.result:
Maria tests moved to separate suite.
mysql-test/suite/maria/r/maria-gis-rtree-trans.result:
Maria tests moved to separate suite.
mysql-test/suite/maria/r/maria-gis-rtree.result:
Maria tests moved to separate suite.
mysql-test/suite/maria/r/maria-mvcc.result:
Maria tests moved to separate suite.
mysql-test/suite/maria/r/maria-no-logging.result:
Maria tests moved to separate suite.
mysql-test/suite/maria/r/maria-page-checksum.result:
Maria tests moved to separate suite.
mysql-test/suite/maria/r/maria-preload.result:
Maria tests moved to separate suite.
mysql-test/suite/maria/r/maria-purge.result:
Maria tests moved to separate suite.
mysql-test/suite/maria/r/maria-recover.result:
Maria tests moved to separate suite.
mysql-test/suite/maria/r/maria-recovery-big.result:
Maria tests moved to separate suite.
mysql-test/suite/maria/r/maria-recovery-bitmap.result:
Maria tests moved to separate suite.
mysql-test/suite/maria/r/maria-recovery-rtree-ft.result:
Maria tests moved to separate suite.
mysql-test/suite/maria/r/maria-recovery.result:
Maria tests moved to separate suite.
mysql-test/suite/maria/r/maria-recovery2.result:
Maria tests moved to separate suite.
mysql-test/suite/maria/r/maria.result:
Maria tests moved to separate suite.
mysql-test/suite/maria/r/maria2.result:
Maria tests moved to separate suite.
mysql-test/suite/maria/r/maria3.result:
Maria tests moved to separate suite.
mysql-test/suite/maria/r/maria_notembedded.result:
Maria tests moved to separate suite.
mysql-test/suite/maria/r/ps_maria.result:
Maria tests moved to separate suite.
mysql-test/suite/maria/t:
Maria tests moved to separate suite.
mysql-test/suite/maria/t/maria-autozerofill.test:
Maria tests moved to separate suite.
mysql-test/suite/maria/t/maria-big.test:
Maria tests moved to separate suite.
mysql-test/suite/maria/t/maria-big2.test:
Maria tests moved to separate suite.
mysql-test/suite/maria/t/maria-connect.test:
Maria tests moved to separate suite.
mysql-test/suite/maria/t/maria-gis-rtree-dynamic.test:
Maria tests moved to separate suite.
mysql-test/suite/maria/t/maria-gis-rtree-trans.test:
Maria tests moved to separate suite.
mysql-test/suite/maria/t/maria-gis-rtree.test:
Maria tests moved to separate suite.
mysql-test/suite/maria/t/maria-mvcc.test:
Maria tests moved to separate suite.
mysql-test/suite/maria/t/maria-no-logging.test:
Maria tests moved to separate suite.
mysql-test/suite/maria/t/maria-page-checksum.test:
Maria tests moved to separate suite.
mysql-test/suite/maria/t/maria-preload.test:
Maria tests moved to separate suite.
mysql-test/suite/maria/t/maria-purge.test:
Maria tests moved to separate suite.
mysql-test/suite/maria/t/maria-recover-master.opt:
Maria tests moved to separate suite.
mysql-test/suite/maria/t/maria-recover.test:
Maria tests moved to separate suite.
mysql-test/suite/maria/t/maria-recovery-big-master.opt:
Maria tests moved to separate suite.
mysql-test/suite/maria/t/maria-recovery-big.test:
Maria tests moved to separate suite.
mysql-test/suite/maria/t/maria-recovery-bitmap-master.opt:
Maria tests moved to separate suite.
mysql-test/suite/maria/t/maria-recovery-bitmap.test:
Maria tests moved to separate suite.
mysql-test/suite/maria/t/maria-recovery-master.opt:
Maria tests moved to separate suite.
mysql-test/suite/maria/t/maria-recovery-rtree-ft-master.opt:
Maria tests moved to separate suite.
mysql-test/suite/maria/t/maria-recovery-rtree-ft.test:
Maria tests moved to separate suite.
mysql-test/suite/maria/t/maria-recovery.test:
Maria tests moved to separate suite.
mysql-test/suite/maria/t/maria-recovery2-master.opt:
Maria tests moved to separate suite.
mysql-test/suite/maria/t/maria-recovery2.test:
Maria tests moved to separate suite.
mysql-test/suite/maria/t/maria.test:
Maria tests moved to separate suite.
mysql-test/suite/maria/t/maria2.test:
Maria tests moved to separate suite.
mysql-test/suite/maria/t/maria3.test:
Maria tests moved to separate suite.
mysql-test/suite/maria/t/maria_notembedded.test:
Maria tests moved to separate suite.
mysql-test/suite/maria/t/ps_maria.test:
Maria tests moved to separate suite.