summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorunknown <gkodinov@dl145s.mysql.com>2006-09-30 09:35:11 +0200
committerunknown <gkodinov@dl145s.mysql.com>2006-09-30 09:35:11 +0200
commitd0ab146b7ebfa54aedf831d76181e70a8fa2da84 (patch)
tree0b538fe796277fb48666f75cf63338cc8d6387b5
parentff1e2ee892c359b35d4e5d38a62c416367fb7346 (diff)
parent16a066141bcaecf948f4ab12a0bd9113a86a8eed (diff)
downloadmariadb-git-d0ab146b7ebfa54aedf831d76181e70a8fa2da84.tar.gz
Merge bk-internal:/home/bk/mysql-5.1
into dl145s.mysql.com:/data/bk/team_tree_merge/MERGE/mysql-5.1-opt
-rw-r--r--include/mysql/plugin.h1
-rw-r--r--sql/ha_ndbcluster.cc2
-rw-r--r--sql/ha_partition.cc2
-rw-r--r--sql/handler.h6
-rw-r--r--sql/log.cc2
-rw-r--r--sql/sql_cursor.cc8
-rw-r--r--storage/archive/ha_archive.cc2
-rw-r--r--storage/blackhole/ha_blackhole.cc2
-rw-r--r--storage/csv/ha_tina.cc2
-rw-r--r--storage/example/ha_example.cc2
-rw-r--r--storage/federated/ha_federated.cc2
-rw-r--r--storage/heap/ha_heap.cc2
-rw-r--r--storage/innobase/handler/ha_innodb.cc14
-rw-r--r--storage/innobase/handler/ha_innodb.h11
-rw-r--r--storage/myisam/ha_myisam.cc2
-rw-r--r--storage/myisammrg/ha_myisammrg.cc2
16 files changed, 35 insertions, 27 deletions
diff --git a/include/mysql/plugin.h b/include/mysql/plugin.h
index ae952ccab1e..174c2b85739 100644
--- a/include/mysql/plugin.h
+++ b/include/mysql/plugin.h
@@ -301,7 +301,6 @@ struct st_mysql_ftparser
struct st_mysql_storage_engine
{
int interface_version;
- struct handlerton *handlerton;
};
#endif
diff --git a/sql/ha_ndbcluster.cc b/sql/ha_ndbcluster.cc
index 0739b704462..157af825063 100644
--- a/sql/ha_ndbcluster.cc
+++ b/sql/ha_ndbcluster.cc
@@ -10749,7 +10749,7 @@ SHOW_VAR ndb_status_variables_export[]= {
};
struct st_mysql_storage_engine ndbcluster_storage_engine=
-{ MYSQL_HANDLERTON_INTERFACE_VERSION, ndbcluster_hton };
+{ MYSQL_HANDLERTON_INTERFACE_VERSION };
mysql_declare_plugin(ndbcluster)
{
diff --git a/sql/ha_partition.cc b/sql/ha_partition.cc
index e435b356def..8e704f34550 100644
--- a/sql/ha_partition.cc
+++ b/sql/ha_partition.cc
@@ -5632,7 +5632,7 @@ static int free_share(PARTITION_SHARE *share)
#endif /* NOT_USED */
struct st_mysql_storage_engine partition_storage_engine=
-{ MYSQL_HANDLERTON_INTERFACE_VERSION, partition_hton };
+{ MYSQL_HANDLERTON_INTERFACE_VERSION };
mysql_declare_plugin(partition)
{
diff --git a/sql/handler.h b/sql/handler.h
index 2efe9f3ce6a..3c237149386 100644
--- a/sql/handler.h
+++ b/sql/handler.h
@@ -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);
diff --git a/sql/log.cc b/sql/log.cc
index 9875b16f8e5..9c2efb04a44 100644
--- a/sql/log.cc
+++ b/sql/log.cc
@@ -4678,7 +4678,7 @@ err1:
}
struct st_mysql_storage_engine binlog_storage_engine=
-{ MYSQL_HANDLERTON_INTERFACE_VERSION, binlog_hton };
+{ MYSQL_HANDLERTON_INTERFACE_VERSION };
mysql_declare_plugin(binlog)
{
diff --git a/sql/sql_cursor.cc b/sql/sql_cursor.cc
index 2784e71ccae..82ee8d72d33 100644
--- a/sql/sql_cursor.cc
+++ b/sql/sql_cursor.cc
@@ -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;
}
diff --git a/storage/archive/ha_archive.cc b/storage/archive/ha_archive.cc
index c31bbfd612e..3971c4d73f0 100644
--- a/storage/archive/ha_archive.cc
+++ b/storage/archive/ha_archive.cc
@@ -1571,7 +1571,7 @@ bool ha_archive::check_and_repair(THD *thd)
}
struct st_mysql_storage_engine archive_storage_engine=
-{ MYSQL_HANDLERTON_INTERFACE_VERSION, archive_hton };
+{ MYSQL_HANDLERTON_INTERFACE_VERSION };
mysql_declare_plugin(archive)
{
diff --git a/storage/blackhole/ha_blackhole.cc b/storage/blackhole/ha_blackhole.cc
index bef5ee656fe..2ebe43acd4d 100644
--- a/storage/blackhole/ha_blackhole.cc
+++ b/storage/blackhole/ha_blackhole.cc
@@ -212,7 +212,7 @@ static int blackhole_init(void *p)
}
struct st_mysql_storage_engine blackhole_storage_engine=
-{ MYSQL_HANDLERTON_INTERFACE_VERSION, blackhole_hton };
+{ MYSQL_HANDLERTON_INTERFACE_VERSION };
mysql_declare_plugin(blackhole)
{
diff --git a/storage/csv/ha_tina.cc b/storage/csv/ha_tina.cc
index eaa11d5b061..b9fdfc1ae0c 100644
--- a/storage/csv/ha_tina.cc
+++ b/storage/csv/ha_tina.cc
@@ -1516,7 +1516,7 @@ bool ha_tina::check_if_incompatible_data(HA_CREATE_INFO *info,
}
struct st_mysql_storage_engine csv_storage_engine=
-{ MYSQL_HANDLERTON_INTERFACE_VERSION, tina_hton };
+{ MYSQL_HANDLERTON_INTERFACE_VERSION };
mysql_declare_plugin(csv)
{
diff --git a/storage/example/ha_example.cc b/storage/example/ha_example.cc
index c4c2524a118..1b49cbbae5a 100644
--- a/storage/example/ha_example.cc
+++ b/storage/example/ha_example.cc
@@ -703,7 +703,7 @@ int ha_example::create(const char *name, TABLE *table_arg,
}
struct st_mysql_storage_engine example_storage_engine=
-{ MYSQL_HANDLERTON_INTERFACE_VERSION, example_hton };
+{ MYSQL_HANDLERTON_INTERFACE_VERSION };
mysql_declare_plugin(example)
diff --git a/storage/federated/ha_federated.cc b/storage/federated/ha_federated.cc
index 3bb34e5aacc..ecfaa9dff2d 100644
--- a/storage/federated/ha_federated.cc
+++ b/storage/federated/ha_federated.cc
@@ -2882,7 +2882,7 @@ int ha_federated::execute_simple_query(const char *query, int len)
}
struct st_mysql_storage_engine federated_storage_engine=
-{ MYSQL_HANDLERTON_INTERFACE_VERSION, federated_hton };
+{ MYSQL_HANDLERTON_INTERFACE_VERSION };
mysql_declare_plugin(federated)
{
diff --git a/storage/heap/ha_heap.cc b/storage/heap/ha_heap.cc
index d550442b0ec..1b76b24bd5d 100644
--- a/storage/heap/ha_heap.cc
+++ b/storage/heap/ha_heap.cc
@@ -701,7 +701,7 @@ bool ha_heap::check_if_incompatible_data(HA_CREATE_INFO *info,
}
struct st_mysql_storage_engine heap_storage_engine=
-{ MYSQL_HANDLERTON_INTERFACE_VERSION, heap_hton};
+{ MYSQL_HANDLERTON_INTERFACE_VERSION };
mysql_declare_plugin(heap)
{
diff --git a/storage/innobase/handler/ha_innodb.cc b/storage/innobase/handler/ha_innodb.cc
index 84533d6c814..aa0c26a5ac5 100644
--- a/storage/innobase/handler/ha_innodb.cc
+++ b/storage/innobase/handler/ha_innodb.cc
@@ -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),
@@ -7607,7 +7611,7 @@ SHOW_VAR innodb_status_variables_export[]= {
};
struct st_mysql_storage_engine innobase_storage_engine=
-{ MYSQL_HANDLERTON_INTERFACE_VERSION, innobase_hton};
+{ MYSQL_HANDLERTON_INTERFACE_VERSION };
mysql_declare_plugin(innobase)
{
diff --git a/storage/innobase/handler/ha_innodb.h b/storage/innobase/handler/ha_innodb.h
index 4d5dc6b52d6..ed52ee9b094 100644
--- a/storage/innobase/handler/ha_innodb.h
+++ b/storage/innobase/handler/ha_innodb.h
@@ -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 */
diff --git a/storage/myisam/ha_myisam.cc b/storage/myisam/ha_myisam.cc
index 39cbc20fd4b..33a6f023645 100644
--- a/storage/myisam/ha_myisam.cc
+++ b/storage/myisam/ha_myisam.cc
@@ -1801,7 +1801,7 @@ static int myisam_init(void *p)
}
struct st_mysql_storage_engine myisam_storage_engine=
-{ MYSQL_HANDLERTON_INTERFACE_VERSION, myisam_hton };
+{ MYSQL_HANDLERTON_INTERFACE_VERSION };
mysql_declare_plugin(myisam)
{
diff --git a/storage/myisammrg/ha_myisammrg.cc b/storage/myisammrg/ha_myisammrg.cc
index 6ed07df1012..bc756e78023 100644
--- a/storage/myisammrg/ha_myisammrg.cc
+++ b/storage/myisammrg/ha_myisammrg.cc
@@ -568,7 +568,7 @@ static int myisammrg_init(void *p)
}
struct st_mysql_storage_engine myisammrg_storage_engine=
-{ MYSQL_HANDLERTON_INTERFACE_VERSION, myisammrg_hton };
+{ MYSQL_HANDLERTON_INTERFACE_VERSION };
mysql_declare_plugin(myisammrg)
{