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
7493331f
Commit
7493331f
authored
Sep 28, 2006
by
gbichot@dl145h.mysql.com
Browse files
Options
Browse Files
Download
Plain Diff
Merge gbichot@bk-internal:/home/bk/mysql-5.1-arch
into dl145h.mysql.com:/users/gbichot/mysql-5.1-arch
parents
4bce203f
041dedfc
Changes
4
Hide whitespace changes
Inline
Side-by-side
Showing
4 changed files
with
23 additions
and
14 deletions
+23
-14
sql/handler.h
sql/handler.h
+3
-3
sql/sql_cursor.cc
sql/sql_cursor.cc
+4
-4
storage/innobase/handler/ha_innodb.cc
storage/innobase/handler/ha_innodb.cc
+8
-4
storage/innobase/handler/ha_innodb.h
storage/innobase/handler/ha_innodb.h
+8
-3
No files found.
sql/handler.h
View file @
7493331f
...
...
@@ -630,9 +630,9 @@ struct handlerton
int
(
*
recover
)(
XID
*
xid_list
,
uint
len
);
int
(
*
commit_by_xid
)(
XID
*
xid
);
int
(
*
rollback_by_xid
)(
XID
*
xid
);
void
*
(
*
create_cursor_read_view
)();
void
(
*
set_cursor_read_view
)(
void
*
);
void
(
*
close_cursor_read_view
)(
void
*
);
void
*
(
*
create_cursor_read_view
)(
THD
*
thd
);
void
(
*
set_cursor_read_view
)(
THD
*
thd
,
void
*
read_view
);
void
(
*
close_cursor_read_view
)(
THD
*
thd
,
void
*
read_view
);
handler
*
(
*
create
)(
TABLE_SHARE
*
table
,
MEM_ROOT
*
mem_root
);
void
(
*
drop_database
)(
char
*
path
);
int
(
*
panic
)(
enum
ha_panic_function
flag
);
...
...
sql/sql_cursor.cc
View file @
7493331f
...
...
@@ -323,7 +323,7 @@ Sensitive_cursor::post_open(THD *thd)
if
(
ht
->
create_cursor_read_view
)
{
info
->
ht
=
ht
;
info
->
read_view
=
(
ht
->
create_cursor_read_view
)();
info
->
read_view
=
(
ht
->
create_cursor_read_view
)(
thd
);
++
info
;
}
}
...
...
@@ -433,7 +433,7 @@ Sensitive_cursor::fetch(ulong num_rows)
thd
->
set_n_backup_active_arena
(
this
,
&
backup_arena
);
for
(
info
=
ht_info
;
info
->
read_view
;
info
++
)
(
info
->
ht
->
set_cursor_read_view
)(
info
->
read_view
);
(
info
->
ht
->
set_cursor_read_view
)(
thd
,
info
->
read_view
);
join
->
fetch_limit
+=
num_rows
;
...
...
@@ -454,7 +454,7 @@ Sensitive_cursor::fetch(ulong num_rows)
reset_thd
(
thd
);
for
(
info
=
ht_info
;
info
->
read_view
;
info
++
)
(
info
->
ht
->
set_cursor_read_view
)(
0
);
(
info
->
ht
->
set_cursor_read_view
)(
thd
,
0
);
if
(
error
==
NESTED_LOOP_CURSOR_LIMIT
)
{
...
...
@@ -487,7 +487,7 @@ Sensitive_cursor::close()
for
(
Engine_info
*
info
=
ht_info
;
info
->
read_view
;
info
++
)
{
(
info
->
ht
->
close_cursor_read_view
)(
info
->
read_view
);
(
info
->
ht
->
close_cursor_read_view
)(
thd
,
info
->
read_view
);
info
->
read_view
=
0
;
info
->
ht
=
0
;
}
...
...
storage/innobase/handler/ha_innodb.cc
View file @
7493331f
...
...
@@ -7529,12 +7529,14 @@ This consistent view is then used inside of MySQL when accessing records
using a cursor. */
void
*
innobase_create_cursor_view
(
void
)
/*=============================*/
/* out: Pointer to cursor view or NULL */
innobase_create_cursor_view
(
/*========================*/
/* out: pointer to cursor
view or NULL */
THD
*
thd
)
/* in: user thread handle */
{
return
(
read_cursor_view_create_for_mysql
(
check_trx_exists
(
current_
thd
)));
check_trx_exists
(
thd
)));
}
/***********************************************************************
...
...
@@ -7545,6 +7547,7 @@ corresponding MySQL thread still lacks one. */
void
innobase_close_cursor_view
(
/*=======================*/
THD
*
thd
,
/* in: user thread handle */
void
*
curview
)
/* in: Consistent read view to be closed */
{
read_cursor_view_close_for_mysql
(
check_trx_exists
(
current_thd
),
...
...
@@ -7560,6 +7563,7 @@ restored to a transaction read view. */
void
innobase_set_cursor_view
(
/*=====================*/
THD
*
thd
,
/* in: user thread handle */
void
*
curview
)
/* in: Consistent cursor view to be set */
{
read_cursor_set_for_mysql
(
check_trx_exists
(
current_thd
),
...
...
storage/innobase/handler/ha_innodb.h
View file @
7493331f
...
...
@@ -313,9 +313,11 @@ This consistent view is then used inside of MySQL when accessing records
using a cursor. */
void
*
innobase_create_cursor_view
(
void
);
/*=============================*/
/* out: Pointer to cursor view or NULL */
innobase_create_cursor_view
(
/*========================*/
/* out: pointer to cursor
view or NULL */
THD
*
thd
);
/* in: user thread handle */
/***********************************************************************
Close the given consistent cursor view of a transaction and restore
...
...
@@ -325,8 +327,10 @@ corresponding MySQL thread still lacks one. */
void
innobase_close_cursor_view
(
/*=======================*/
THD
*
thd
,
/* in: user thread handle */
void
*
curview
);
/* in: Consistent read view to be closed */
/***********************************************************************
Set the given consistent cursor view to a transaction which is created
if the corresponding MySQL thread still lacks one. If the given
...
...
@@ -336,4 +340,5 @@ restored to a transaction read view. */
void
innobase_set_cursor_view
(
/*=====================*/
THD
*
thd
,
/* in: user thread handle */
void
*
curview
);
/* in: Consistent read view to be set */
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