From: John David Duncan Date: May 17 2011 5:16am Subject: bzr commit into mysql-5.1-telco-7.2 branch (john.duncan:4179) List-Archive: http://lists.mysql.com/commits/137495 Message-Id: <201105170516.p4H5GCSn005342@acsmt358.oracle.com> MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="===============1453107936==" --===============1453107936== MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Content-Disposition: inline #At file:///Users/jdd/bzr-repo/working/cluster-7.2-labs-memcached/ based on revid:john.duncan@stripped 4179 John David Duncan 2011-05-16 Minor edits to unify stockholm & flex commit thread loops. modified: storage/ndb/memcache/src/schedulers/Flex_cluster.cc storage/ndb/memcache/src/schedulers/Stockholm.cc === modified file 'storage/ndb/memcache/src/schedulers/Flex_cluster.cc' --- a/storage/ndb/memcache/src/schedulers/Flex_cluster.cc 2011-05-17 05:07:20 +0000 +++ b/storage/ndb/memcache/src/schedulers/Flex_cluster.cc 2011-05-17 05:15:50 +0000 @@ -218,23 +218,25 @@ void Scheduler_flex::Cluster::contribute Commit thread: Get an NdbInstance off the workqueue, and call pollNdb() on it. */ void * Scheduler_flex::Cluster::run_commit_thread() { - DEBUG_ENTER(); - workitem *item; + int polled; + + DEBUG_ENTER(); while(1) { /* Wait for something to appear on the queue */ item = (workitem *) workqueue_consumer_wait(queue); - if(item == NULL) return 0; /* queue has been shut down and emptied */ + if(item == NULL) break; /* queue has been shut down and emptied */ - /* Send & Poll */ - item->ndb_instance->db->sendPollNdb(WAITFOR_RESPONSE_TIMEOUT, 1, 1); - while(item->base.reschedule) { + /* Send & poll for response; reschedule if needed */ + do { item->base.reschedule = 0; - item->ndb_instance->db->sendPollNdb(WAITFOR_RESPONSE_TIMEOUT, 1, 1); - } + polled = item->ndb_instance->db->sendPollNdb(10, 1, 1); + } while(item->base.reschedule || ! polled); } + + return NULL; } === modified file 'storage/ndb/memcache/src/schedulers/Stockholm.cc' --- a/storage/ndb/memcache/src/schedulers/Stockholm.cc 2011-05-17 05:07:20 +0000 +++ b/storage/ndb/memcache/src/schedulers/Stockholm.cc 2011-05-17 05:15:50 +0000 @@ -260,6 +260,8 @@ void * Scheduler_stockholm::run_ndb_comm while(1) { /* Wait for something to appear on the queue */ item = (workitem *) workqueue_consumer_wait(cluster[c].queue); + + if(item == NULL) break; /* queue has been shut down and emptied */ /* Send & poll for response; reschedule if needed */ do { @@ -272,6 +274,8 @@ void * Scheduler_stockholm::run_ndb_comm if(! (cluster[c].stats.cycles % STAT_INTERVAL)) cluster[c].stats.commit_thread_vtime = get_thread_vtime(); } + + return NULL; } --===============1453107936== MIME-Version: 1.0 Content-Type: text/bzr-bundle; charset="us-ascii"; name="bzr/john.duncan@stripped" Content-Transfer-Encoding: 7bit Content-Disposition: inline # Bazaar merge directive format 2 (Bazaar 0.90) # revision_id: john.duncan@stripped # target_branch: file:///Users/jdd/bzr-repo/working/cluster-7.2-labs-\ # memcached/ # testament_sha1: 52b5f08375259f4cd6a1df1b81e3fd38ffc86a54 # timestamp: 2011-05-16 22:16:06 -0700 # base_revision_id: john.duncan@stripped\ # e8lzjvy4csn31g81 # # Begin bundle IyBCYXphYXIgcmV2aXNpb24gYnVuZGxlIHY0CiMKQlpoOTFBWSZTWctLJF4AAodfgFAQcXf//1eX XgC////+UAUYnmkgrVs1RpQCURIxJ6amxDUejKbSPU9TJpoaBpoGCNA5gTE0GEyZMmRhME00yMTA EMAkiExEno0p7VPaNJNBoADR6gGgA00OYExNBhMmTJkYTBNNMjEwBDAJJEyBoAgmBGk8p6jUemRA 0NAaHlIC1bmNuHCOvqcdoHTnm2RndTdqti9jEU88c5K9hLfQjc8WqzKDwjgIHFcMH+6eNWVhkcTk GZhMwfT5BfHW35a3tndfGiM7NjFWk72sZMSatKPV4u2jVgRNbUMMam0mPy6bnj2Ktmzg4liGFmE+ rTC1kgiKbNodSMtsB2Or+W49OUUUik2InvSoNVAfNWtlggd0mfBTlShOszLw5IXswLi42sQvaalB t7Ocv63xAe2tqZMMViVQk3FeOQXwriP9tsQ3OchaBOR4APa4gEQRKhRw0jHaJoToUAnaVQ9kAkrM eB+C62Oq0RFmY5b7Q+M6QdTjvrSBz6X21llP33Ayf9abANE8B6FgSy8oajTujdmXkbCYWbD9aGAn RIa2sIw0OZI08Ugqaof0Cy4Upwgk4+0sCjyV3ncnO2Q95rhpRnjTQqWl7tB3CeHKjnUjUEcdsVdw Ij8RieDqoDBtYHGMxiQoJzCQoFJoFYuCNmM+bRAfci0GQhsXBtRlIDUTQ0lGJXWMXVGjJpyFtZRY 8aLsc97hh8WwkElEaTRLq0lCSK3joZV0E+MCktJotXVr03XBPWZkqyIU2Kt2RYPfZkfVEqyCibrn ys0WI5kKMHqoYtfOaNaMTVlEr1EiWk01J31HNhkDwvB46KO2xrEqupuDWNFTRZNsvI6jcDT8lo8B sLSAU9owQOz3nE6sREp62ZhmbUPJqc37uLfVdBgMffCe41ru3Goa9KQxXxlKod+hwGjhcIdBx64d x4eXiJVHSx6OATHleX0pJo6S6tLAixJzSzdAtjKW5GnWKZgsye+ZCIpUj7QrQS2I0yYc7mO9JXek T9DcteYGf3A4lq8yoJYQ6EV2BVx6NjX2EbScIA0ZkO66XayBkdJSO5Q+7AlnMGQlsA6GoZbWEq2N Bpvw2E00yp3HRFPtN5Vc3tZ1hSiwrrU0XiF2NR92+oRUYbzVf5xRyd+yrlDCQLsA0+5ZE9EwThTr dDE4xNDSGNwyIBOiaF7HAMH9rGjA8gaTTo+mwmJU8e7A1K+UV64hAEQEQl84AYiYSsqej19SlJfA NlBkI1vNxlx6fYhoK73mpT7TowRI2os9K5v04aY4ovRyip7nwO/mBSjuO5MOlwCCNw4sHBcjM2HA JbQtQ53MGTtvIiNUJMEyeb+pi+7JgkwbZ1DnQ+gkhMOn5lCpyY3mRMlFRNAEZsqTuIlEwk2aGIiT XF6SeRYpQ7rCM1s7nsREzAyy47mC34BcB6cxLkbfVlmGwAsR2Y7tBhz4dYlgh1N1LWZ7c2GB1GQR 62OFN1J0OJOeZNwbckyQeWpiZKPyZVcnKj2UqwwfdBQCohpJRfhOdRt5Rr77+9laXm9DiQdnBElV kFHW6sVsCMm1gTOPmGI0AcFtYcWn1aDVYQo+LJSWsGlO4HcTI9wGlx4mBzCYI/NwlbZEyDtLFnJE ikCSKszcB5gToMb2MEcQlku8DBHuAps9G8//F3JFOFCQy0skXg== --===============1453107936==--