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
7b275cf2
Commit
7b275cf2
authored
Mar 03, 2001
by
heikki@donna.mysql.fi
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
row0mysql.c Removed a bug in update of a table with no primary key
parent
d325a2c9
Changes
1
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
18 additions
and
6 deletions
+18
-6
innobase/row/row0mysql.c
innobase/row/row0mysql.c
+18
-6
No files found.
innobase/row/row0mysql.c
View file @
7b275cf2
...
@@ -618,14 +618,14 @@ row_update_for_mysql(
...
@@ -618,14 +618,14 @@ row_update_for_mysql(
que_thr_t
*
thr
;
que_thr_t
*
thr
;
ibool
was_lock_wait
;
ibool
was_lock_wait
;
dict_index_t
*
clust_index
;
dict_index_t
*
clust_index
;
ulint
ref_len
;
/* ulint ref_len; */
upd_node_t
*
node
;
upd_node_t
*
node
;
dict_table_t
*
table
=
prebuilt
->
table
;
dict_table_t
*
table
=
prebuilt
->
table
;
trx_t
*
trx
=
prebuilt
->
trx
;
trx_t
*
trx
=
prebuilt
->
trx
;
mem_heap_t
*
heap
;
/*
mem_heap_t* heap;
dtuple_t* search_tuple;
dtuple_t* search_tuple;
dtuple_t* row_tuple;
dtuple_t* row_tuple;
mtr_t
mtr
;
mtr_t mtr;
*/
ut_ad
(
prebuilt
&&
trx
);
ut_ad
(
prebuilt
&&
trx
);
ut_ad
(
trx
->
mysql_thread_id
==
os_thread_get_curr_id
());
ut_ad
(
trx
->
mysql_thread_id
==
os_thread_get_curr_id
());
...
@@ -643,11 +643,23 @@ row_update_for_mysql(
...
@@ -643,11 +643,23 @@ row_update_for_mysql(
prebuilt
->
clust_pcur
);
prebuilt
->
clust_pcur
);
}
}
ut_a
d
(
node
->
pcur
->
rel_pos
==
BTR_PCUR_ON
);
ut_a
(
node
->
pcur
->
rel_pos
==
BTR_PCUR_ON
);
goto
skip_cursor_search
;
goto
skip_cursor_search
;
}
}
else
{
/* MySQL seems to call rnd_pos before updating each row it
has cached: we can get the correct cursor position from
prebuilt->pcur; NOTE that we cannot build the row reference
from mysql_rec if the clustered index was automatically
generated for the table: MySQL does not know anything about
the row id used as the clustered index key */
btr_pcur_copy_stored_position
(
node
->
pcur
,
prebuilt
->
pcur
);
ut_a
(
node
->
pcur
->
rel_pos
==
BTR_PCUR_ON
);
goto
skip_cursor_search
;
}
#ifdef notdefined
/* We have to search for the correct cursor position */
/* We have to search for the correct cursor position */
ref_len
=
dict_index_get_n_unique
(
clust_index
);
ref_len
=
dict_index_get_n_unique
(
clust_index
);
...
@@ -678,7 +690,7 @@ row_update_for_mysql(
...
@@ -678,7 +690,7 @@ row_update_for_mysql(
mtr_commit
(
&
mtr
);
mtr_commit
(
&
mtr
);
mem_heap_free
(
heap
);
mem_heap_free
(
heap
);
#endif
skip_cursor_search:
skip_cursor_search:
savept
=
trx_savept_take
(
trx
);
savept
=
trx_savept_take
(
trx
);
...
...
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