summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorunknown <tomas@poseidon.ndb.mysql.com>2006-02-01 10:13:27 +0100
committerunknown <tomas@poseidon.ndb.mysql.com>2006-02-01 10:13:27 +0100
commit55c304a17b25ed19af984bf3b923e5aaf966f74a (patch)
tree0724fffd1e8ab043c8a09e10d2a747b6a4ea5a1e
parent8585070fdd1570c6d70fa96d8af2efd270b4ac37 (diff)
downloadmariadb-git-55c304a17b25ed19af984bf3b923e5aaf966f74a.tar.gz
bug 16996 ndbd nodes crash at api heartbeat failure if event/replication is used
-rw-r--r--storage/ndb/src/kernel/blocks/suma/Suma.cpp10
1 files changed, 9 insertions, 1 deletions
diff --git a/storage/ndb/src/kernel/blocks/suma/Suma.cpp b/storage/ndb/src/kernel/blocks/suma/Suma.cpp
index 5b929c30817..de148df7812 100644
--- a/storage/ndb/src/kernel/blocks/suma/Suma.cpp
+++ b/storage/ndb/src/kernel/blocks/suma/Suma.cpp
@@ -181,7 +181,15 @@ Suma::execREAD_CONFIG_REQ(Signal* signal)
c_subscriptionPool.setSize(noTables);
c_syncPool.setSize(2);
c_dataBufferPool.setSize(noAttrs);
- c_gcp_pool.setSize(10);
+
+ // Calculate needed gcp pool as 10 records + the ones needed
+ // during a possible api timeout
+ Uint32 dbApiHbInterval, gcpInterval;
+ ndb_mgm_get_int_parameter(p, CFG_DB_API_HEARTBEAT_INTERVAL,
+ &dbApiHbInterval);
+ ndb_mgm_get_int_parameter(p, CFG_DB_GCP_INTERVAL,
+ &gcpInterval);
+ c_gcp_pool.setSize(10 + (4*dbApiHbInterval)/gcpInterval);
c_page_chunk_pool.setSize(50);