summaryrefslogtreecommitdiff
path: root/Docs
diff options
context:
space:
mode:
authorunknown <ramil/ram@mysql.com/ramil.myoffice.izhnet.ru>2008-04-08 10:20:58 +0500
committerunknown <ramil/ram@mysql.com/ramil.myoffice.izhnet.ru>2008-04-08 10:20:58 +0500
commit9fd89afca04400812a8fec6b1802bf60518bd2ac (patch)
tree26ae6d2fe47544933c13ab27096db0b064cf0088 /Docs
parentccd31e9dd4ef9ac3266690231626237d13d53e17 (diff)
downloadmariadb-git-9fd89afca04400812a8fec6b1802bf60518bd2ac.tar.gz
Fix for bug #35732: read-only blocks SELECT statements in InnoDB
Problem: SELECTs prohibited for a transactional SE in autocommit mode if read_only is set. Fix: allow them. mysql-test/r/read_only_innodb.result: Fix for bug #35732: read-only blocks SELECT statements in InnoDB - test result. mysql-test/t/read_only_innodb.test: Fix for bug #35732: read-only blocks SELECT statements in InnoDB - test case. sql/handler.cc: Fix for bug #35732: read-only blocks SELECT statements in InnoDB - in autocommit mode thd->transaction.all list is empty thus is_real_trans set to TRUE for any SELECTs, so using it in the "read_only" check is insufficient. ha_check_and_coalesce_trx_read_only() changed to return number of engines with read-write changes. This value is used in the "read-only" check and checks for GLOBAL READ LOCK. sql/lock.cc: Fix for bug #35732: read-only blocks SELECT statements in InnoDB - added assert(protect_against_global_read_lock) before decreasing, in order to catch (uint) 0 - 1 situation due to wrong wait_if_global_read_lock()/start_waiting_global_read_lock() call sequence.
Diffstat (limited to 'Docs')
0 files changed, 0 insertions, 0 deletions