summaryrefslogtreecommitdiff
path: root/sql/ha_ndbcluster_binlog.cc
diff options
context:
space:
mode:
authortomas@whalegate.ndb.mysql.com <>2007-04-25 15:28:56 +0200
committertomas@whalegate.ndb.mysql.com <>2007-04-25 15:28:56 +0200
commit138264acaba300cbdb0c22c31b17f8cb366123e8 (patch)
tree69d72b777a1748b30a42ca947090dc68c2c3c4c7 /sql/ha_ndbcluster_binlog.cc
parentbe343dc78ac27c0ae98ab7aaa355bccb264aa9e6 (diff)
parent7d63b2d12c58baabf8432d689486a8a117023b29 (diff)
downloadmariadb-git-138264acaba300cbdb0c22c31b17f8cb366123e8.tar.gz
Merge whalegate.ndb.mysql.com:/home/tomas/mysql-5.1-telco-gca
into whalegate.ndb.mysql.com:/home/tomas/mysql-5.1-single-user
Diffstat (limited to 'sql/ha_ndbcluster_binlog.cc')
-rw-r--r--sql/ha_ndbcluster_binlog.cc12
1 files changed, 12 insertions, 0 deletions
diff --git a/sql/ha_ndbcluster_binlog.cc b/sql/ha_ndbcluster_binlog.cc
index c65c81c088c..25a9ccdcb87 100644
--- a/sql/ha_ndbcluster_binlog.cc
+++ b/sql/ha_ndbcluster_binlog.cc
@@ -1021,6 +1021,7 @@ ndbcluster_update_slock(THD *thd,
const NDBTAB *ndbtab= ndbtab_g.get_table();
NdbTransaction *trans= 0;
int retries= 100;
+ int retry_sleep= 10; /* 10 milliseconds, transaction */
const NDBCOL *col[SCHEMA_SIZE];
unsigned sz[SCHEMA_SIZE];
@@ -1122,6 +1123,7 @@ ndbcluster_update_slock(THD *thd,
{
if (trans)
ndb->closeTransaction(trans);
+ my_sleep(retry_sleep);
continue; // retry
}
}
@@ -1333,6 +1335,7 @@ int ndbcluster_log_schema_op(THD *thd, NDB_SHARE *share,
const NDBTAB *ndbtab= ndbtab_g.get_table();
NdbTransaction *trans= 0;
int retries= 100;
+ int retry_sleep= 10; /* 10 milliseconds, transaction */
const NDBCOL *col[SCHEMA_SIZE];
unsigned sz[SCHEMA_SIZE];
@@ -1443,6 +1446,7 @@ err:
{
if (trans)
ndb->closeTransaction(trans);
+ my_sleep(retry_sleep);
continue; // retry
}
}
@@ -2841,6 +2845,11 @@ ndbcluster_create_event_ops(NDB_SHARE *share, const NDBTAB *ndbtab,
TABLE *table= share->table;
int retries= 100;
+ /*
+ 100 milliseconds, temporary error on schema operation can
+ take some time to be resolved
+ */
+ int retry_sleep= 100;
while (1)
{
pthread_mutex_lock(&injector_mutex);
@@ -2969,7 +2978,10 @@ ndbcluster_create_event_ops(NDB_SHARE *share, const NDBTAB *ndbtab,
ndb->dropEventOperation(op);
pthread_mutex_unlock(&injector_mutex);
if (retries)
+ {
+ my_sleep(retry_sleep);
continue;
+ }
DBUG_RETURN(-1);
}
pthread_mutex_unlock(&injector_mutex);