summaryrefslogtreecommitdiff
path: root/sql/ha_myisam.cc
diff options
context:
space:
mode:
authorunknown <konstantin@mysql.com>2005-07-20 20:02:36 +0400
committerunknown <konstantin@mysql.com>2005-07-20 20:02:36 +0400
commitec55fec92dd2a1cbb502345aba259b5fdfec6f5f (patch)
tree67f17393fe4e37a40bbcdee210b4e126d3cbb834 /sql/ha_myisam.cc
parentb6823b66922c8ea7325541a8c7c132e9027fa412 (diff)
downloadmariadb-git-ec55fec92dd2a1cbb502345aba259b5fdfec6f5f.tar.gz
Implement MySQL framework to support consistent read views in
cursors. This should fix Bug#11813 when InnoDB part is in (tested with a draft patch). The idea of the patch is that if a storage engine supports consistent read views, we open one when open a cursor, set is as the active view when fetch from the cursor, and close together with cursor close. sql/examples/ha_archive.cc: - extend handlerton with cursors methods; fix coding style sql/examples/ha_example.cc: - extend handlerton with cursors methods; fix coding style sql/examples/ha_tina.cc: - extend handlerton with cursors methods; fix coding style sql/ha_berkeley.cc: - extend handlerton with cursors methods sql/ha_blackhole.cc: - extend handlerton with cursors methods; fix coding style sql/ha_federated.cc: - extend handlerton with cursors methods; fix coding style sql/ha_heap.cc: - extend handlerton with cursors methods; fix coding style sql/ha_innodb.cc: - extend handlerton with cursors methods sql/ha_myisam.cc: - extend handlerton with cursors methods; fix coding style sql/ha_myisammrg.cc: - extend handlerton with cursors methods; fix coding style sql/ha_ndbcluster.cc: - extend handlerton with cursors methods sql/handler.h: - extend handlerton with cursors methods sql/sql_select.cc: - create a consistent read view when we open a cursor, set it for a fetch, and free when we closing the cursor. sql/sql_select.h: - add Cursor::ht_info to remember read views used in a cursor. tests/mysql_client_test.c: Disable an assert that will be no longer valid when consistent read views in InnoDB are used.
Diffstat (limited to 'sql/ha_myisam.cc')
-rw-r--r--sql/ha_myisam.cc23
1 files changed, 13 insertions, 10 deletions
diff --git a/sql/ha_myisam.cc b/sql/ha_myisam.cc
index fefa05e92b0..8f3970d69e6 100644
--- a/sql/ha_myisam.cc
+++ b/sql/ha_myisam.cc
@@ -50,16 +50,19 @@ static handlerton myisam_hton= {
"MyISAM",
0, /* slot */
0, /* savepoint size. */
- 0, /* close_connection */
- 0, /* savepoint */
- 0, /* rollback to savepoint */
- 0, /* release savepoint */
- 0, /* commit */
- 0, /* rollback */
- 0, /* prepare */
- 0, /* recover */
- 0, /* commit_by_xid */
- 0, /* rollback_by_xid */
+ NULL, /* close_connection */
+ NULL, /* savepoint */
+ NULL, /* rollback to savepoint */
+ NULL, /* release savepoint */
+ NULL, /* commit */
+ NULL, /* rollback */
+ NULL, /* prepare */
+ NULL, /* recover */
+ NULL, /* commit_by_xid */
+ NULL, /* rollback_by_xid */
+ NULL, /* create_cursor_read_view */
+ NULL, /* set_cursor_read_view */
+ NULL, /* close_cursor_read_view */
/*
MyISAM doesn't support transactions and doesn't have
transaction-dependent context: cursors can survive a commit.