3499 Martin Skold 2012-05-30
WL#5534 inplace ALTER TABLE: Adaption to new interface for ndb (from WL#3749): Moved opening of altered table later in binlog thread to get correct write_set, fixes ndb_rpl_add_column
modified:
sql/ha_ndbcluster_binlog.cc
3498 magnus.blaudd@stripped 2012-05-23 [merge]
Merge 7.3 -> trunk-cluster
modified:
mysql-test/suite/ndb/r/ndb_condition_pushdown.result
mysql-test/suite/ndb/t/ndb_condition_pushdown.test
sql/ha_ndbcluster_cond.cc
storage/ndb/src/common/util/SocketClient.cpp
storage/ndb/src/kernel/vm/mt.cpp
support-files/mysql.spec.sh
=== modified file 'sql/ha_ndbcluster_binlog.cc'
--- a/sql/ha_ndbcluster_binlog.cc 2012-05-02 19:09:22 +0000
+++ b/sql/ha_ndbcluster_binlog.cc 2012-05-30 07:40:06 +0000
@@ -337,11 +337,7 @@ ndb_binlog_open_shadow_table(THD *thd, N
(error= open_table_from_share(thd, shadow_table_share, "", 0,
(uint) (OPEN_FRM_FILE_ONLY | DELAYED_OPEN | READ_ALL),
0, shadow_table,
-#ifdef NDB_WITHOUT_ONLINE_ALTER
false
-#else
- OTM_OPEN
-#endif
)))
{
DBUG_PRINT("error", ("failed to open shadow table, error: %d my_errno: %d",
@@ -2839,6 +2835,14 @@ class Ndb_schema_event_handler {
mysqld_write_frm_from_ndb(schema->db, schema->name);
}
}
+ }
+
+
+ void
+ handle_online_alter_table_commit(Ndb_schema_op* schema)
+ {
+ assert(is_post_epoch()); // Always after epoch
+
NDB_SHARE *share= get_share(schema);
if (share)
{
@@ -2888,22 +2892,6 @@ class Ndb_schema_event_handler {
sql_print_information("NDB Binlog: handling online "
"alter/rename done");
}
- }
- if (share)
- {
- free_share(&share);
- }
- }
-
-
- void
- handle_online_alter_table_commit(Ndb_schema_op* schema)
- {
- assert(is_post_epoch()); // Always after epoch
-
- NDB_SHARE *share= get_share(schema);
- if (share)
- {
pthread_mutex_lock(&share->mutex);
if (share->op && share->new_op)
{
No bundle (reason: useless for push emails).
| Thread |
|---|
| • bzr push into mysql-trunk-cluster branch (Martin.Skold:3498 to 3499) WL#3749WL#5534 | Martin Skold | 30 May |