MySQL Forums
Forum List  »  memcached

Bulk memcache reads causing WRITE ERRORs?
Posted by: Peter Go
Date: November 01, 2012 11:02AM

Hello folks,

I'm in PHP doing a memcached->getMulti() of about 5000 keys. The read succeeds, but subsequent writes with memcached->set() of 1 key fails with:


When I remove the getMulti() calls altogether then I get no write errors. I've tried chunking the reads (read 100x @ 50 keys each) but to no avail. However if I introduce a sleep factor between chunk reads then the write errors do go away, but running this way is too slow for our required service level.

It almost appears like ndbcluster is being inundated by the bulk reads and actually isn't "done" when getMulti() returns? When I turn on debugging in memcache I see screens and screens of trace data spewing way long after getMulti() has returned. But this may just be due to I/O delay?

Is there a practical limit on max no. of keys to read with getMulti()? Is it non-blocking by default? How can I get more specific cause info for error 47?

I can certainly come up with more techniques to mitigate large bulk reads, but I'm afraid I may be treating the sympton and not the root problem. By the way I never had this write issue before - code was running reliably for days with getMulti() retrieving 6000 keys at a time with no write errors, and the MySQL Cluster setup has not changed!

Thanks in advance for ANY help!

Options: ReplyQuote

Written By
Bulk memcache reads causing WRITE ERRORs?
November 01, 2012 11:02AM

Sorry, you can't reply to this topic. It has been closed.

Content reproduced on this site is the property of the respective copyright holders. It is not reviewed in advance by Oracle and does not necessarily represent the opinion of Oracle or any other party.