Matthias Mullie has uploaded a new change for review. Change subject: Read full memcached response before manipulating data ......................................................................
Read full memcached response before manipulating data Memcached response when fetching data typically looks like this: VALUE <the stored value for whatever key you requested> END What the code used to do is read the first line (the VALUE) and re- assemble the data is fetches there (like unserializing serialized data). After that, it will read the next line (END). The value could be a serialized object, which could have a __wakeup. This __wakeup could have code which in turn executes Memcached- related stuff. The problem is that, while that object is being unserialized already, it's wakeup code is attempting to read new stuff from Memcached, but we have yet to read the END of the data we're attempting to unserialize (when we'll read a new value from Memcached, the first thing we'd get is the END we have not yet read..) The correct way to go about this would be to first read the full Memcached response, and only unserialize the read data after that. This is exactly what this patchset does. Change-Id: I902809c6dde657091c8161a09df823170bd41f7a --- M includes/objectcache/MemcachedClient.php 1 file changed, 4 insertions(+), 2 deletions(-) git pull ssh://gerrit.wikimedia.org:29418/mediawiki/core refs/changes/19/47419/1 -- To view, visit https://gerrit.wikimedia.org/r/47419 To unsubscribe, visit https://gerrit.wikimedia.org/r/settings Gerrit-MessageType: newchange Gerrit-Change-Id: I902809c6dde657091c8161a09df823170bd41f7a Gerrit-PatchSet: 1 Gerrit-Project: mediawiki/core Gerrit-Branch: master Gerrit-Owner: Matthias Mullie <mmul...@wikimedia.org> _______________________________________________ MediaWiki-commits mailing list MediaWiki-commits@lists.wikimedia.org https://lists.wikimedia.org/mailman/listinfo/mediawiki-commits