Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
M
mariadb
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
Analytics
Analytics
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Commits
Issue Boards
Open sidebar
Kirill Smelkov
mariadb
Commits
2bb2af5b
Commit
2bb2af5b
authored
Jun 08, 2004
by
tomas@mc05.(none)
Browse files
Options
Browse Files
Download
Plain Diff
Merge tulin@bk-internal.mysql.com:/home/bk/mysql-4.1
into mc05.(none):/space2/tomas/mysql-4.1-ndb-test
parents
8599b630
d9dc42b5
Changes
1
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
13 additions
and
26 deletions
+13
-26
sql/ha_innodb.cc
sql/ha_innodb.cc
+13
-26
No files found.
sql/ha_innodb.cc
View file @
2bb2af5b
...
...
@@ -1747,9 +1747,14 @@ innobase_mysql_cmp(
}
}
ret
=
my_strnncoll
(
charset
,
a
,
a_length
,
b
,
b_length
);
/* Starting from 4.1.3 we use strnncollsp() in comparisons of
non-latin1_swedish_ci strings. NOTE that the collation order
changes then: 'b\0\0...' is ordered BEFORE 'b ...'. Users
having indexes on such data need to rebuild their tables! */
ret
=
charset
->
coll
->
strnncollsp
(
charset
,
a
,
a_length
,
b
,
b_length
);
if
(
ret
<
0
)
{
return
(
-
1
);
}
else
if
(
ret
>
0
)
{
...
...
@@ -4658,25 +4663,6 @@ ha_innobase::start_stmt(
prebuilt
->
select_lock_type
=
LOCK_X
;
}
else
{
/* When we first come here after LOCK TABLES,
select_lock_type is set to LOCK_S or LOCK_X. Store the value
in case we run also consistent reads and need to restore the
value later. */
if
(
prebuilt
->
select_lock_type
!=
LOCK_NONE
)
{
prebuilt
->
stored_select_lock_type
=
prebuilt
->
select_lock_type
;
}
if
(
prebuilt
->
stored_select_lock_type
!=
LOCK_S
&&
prebuilt
->
stored_select_lock_type
!=
LOCK_X
)
{
fprintf
(
stderr
,
"InnoDB: Error: select_lock_type is %lu inside ::start_stmt()!
\n
"
,
prebuilt
->
stored_select_lock_type
);
ut_error
;
}
if
(
thd
->
lex
->
sql_command
==
SQLCOM_SELECT
&&
thd
->
lex
->
lock_option
==
TL_READ
)
{
...
...
@@ -4685,10 +4671,11 @@ ha_innobase::start_stmt(
prebuilt
->
select_lock_type
=
LOCK_NONE
;
}
else
{
/* Not a consistent read: restore the
select_lock_type value */
prebuilt
->
select_lock_type
=
prebuilt
->
stored_select_lock_type
;
/* Not a consistent read: use LOCK_X as the
select_lock_type value (TODO: how could we know
whether it should be LOCK_S, LOCK_X, or LOCK_NONE?) */
prebuilt
->
select_lock_type
=
LOCK_X
;
}
}
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment