Checking size to no of free + 1 was not correct when

entry was released before check. Thus empty it is when
size == no of free
This caused a memory leak which inserted a hard limit of
max 64 unique indexes in the cluster.
This commit is contained in:
mronstrom@mysql.com 2004-12-31 02:18:21 +01:00
parent cd98fcf4e9
commit c6491a6873

View file

@ -3471,10 +3471,10 @@ SumaParticipant::completeSubRemoveReq(Signal* signal, SubscriptionPtr subPtr) {
*/
#if 0
ndbout_c("c_subscriptionPool.getSize() %d c_subscriptionPool.getNoOfFree()%d",
c_subscriptionPool.getSize(),c_subscriptionPool.getNoOfFree()+1);
c_subscriptionPool.getSize(),c_subscriptionPool.getNoOfFree());
#endif
if(c_subscriptionPool.getSize() == c_subscriptionPool.getNoOfFree()+1) {
if(c_subscriptionPool.getSize() == c_subscriptionPool.getNoOfFree()) {
jam();
#if 0
ndbout_c("SUB_REMOVE_REQ:Clearing c_tables");