diff options
author | tomas@whalegate.ndb.mysql.com <> | 2007-04-25 15:28:56 +0200 |
---|---|---|
committer | tomas@whalegate.ndb.mysql.com <> | 2007-04-25 15:28:56 +0200 |
commit | 138264acaba300cbdb0c22c31b17f8cb366123e8 (patch) | |
tree | 69d72b777a1748b30a42ca947090dc68c2c3c4c7 /sql/ha_ndbcluster_binlog.cc | |
parent | be343dc78ac27c0ae98ab7aaa355bccb264aa9e6 (diff) | |
parent | 7d63b2d12c58baabf8432d689486a8a117023b29 (diff) | |
download | mariadb-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.cc | 12 |
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); |