mirror of
https://github.com/MariaDB/server.git
synced 2025-01-29 18:20:07 +01:00
InnoDB: Do not get a lock for consistent reads (Bug #3894)
This commit is contained in:
parent
ce55ee9cd9
commit
df8f605609
1 changed files with 11 additions and 0 deletions
|
@ -4504,6 +4504,17 @@ ha_innobase::start_stmt(
|
|||
prepared for an update of a row */
|
||||
|
||||
prebuilt->select_lock_type = LOCK_X;
|
||||
} else {
|
||||
/* For other than temporary tables, we obtain
|
||||
no lock for consistent read (plain SELECT), and
|
||||
an exclusive lock for SELECT ... FOR UPDATE or
|
||||
SELECT ... LOCK IN SHARE MODE. */
|
||||
|
||||
prebuilt->select_lock_type =
|
||||
thd->lex.sql_command == SQLCOM_SELECT
|
||||
&& thd->lex.lock_option == TL_READ
|
||||
? LOCK_NONE
|
||||
: LOCK_X;
|
||||
}
|
||||
|
||||
/* Set the MySQL flag to mark that there is an active transaction */
|
||||
|
|
Loading…
Add table
Reference in a new issue