Closed (fixed)
Project:
Memcache API and Integration
Version:
7.x-1.x-dev
Component:
Code
Priority:
Normal
Category:
Bug report
Assigned:
Unassigned
Reporter:
Created:
11 Dec 2012 at 17:18 UTC
Updated:
1 Feb 2017 at 18:34 UTC
Jump to comment: Most recent, Most recent file
Comments
Comment #1
sylvain lecoy commentedHaving the HEAD broken is kind of critical, I am working on a patch.
/ping maintainers :-)
Comment #2
jeremy commentedThere are some failing tests in 7.x-1.1-beta3, bumping this to review before a final 7.x-1.1 is released.
Comment #3
markpavlitski commentedRemoved: posted in wrong thread.
Comment #4
markpavlitski commentedThere can be issues with some of the passing tests too, not all of them always use the memcache backend.
See #1995556: Tests do not check if memcache backends are being used for background.
Comment #5
jeremy commentedThanks, 1995556 has been committed.
Current failures are in
MemCacheClearCase->testClearWildcardOnSeparatePages().Comment #6
jeremy commentedFixed the memcache statistics tests which were failing due to changes made to dmemcache.inc:
http://drupalcode.org/project/memcache.git/commitdiff/44998ba
Comment #7
markpavlitski commentedI'm seeing an exception in mecache-session.test:
PDOException: SQLSTATE[42S22]: Column not found: 1054 Unknown column 'cid' in 'where clause': DELETE FROM {users} WHERE (cid = :db_condition_placeholder_0) ; Array ( [:db_condition_placeholder_0] => 2 ) in cache_clear_all()It was introduced when #1984226: Session handler uses D6 hook_user() instead of D7 hook_user_update() got committed, as the hook was never being run prior to the fix.
The second argument to cache_clear_all() should be 'cache_users' not 'users', however since it's not a core cache table I'd suggest we use dmemcache_delete() the same we do elsewhere for both 'users' and 'sessions' bins.
Patch attached.
Comment #8
markpavlitski commentedAfter applying the patch in #7, I'm getting all passes for both PECL Memcache 3.0.8 and PECL Memcached 2.1.0:
377 passes, 0 fails, 0 exceptions, and 81 debug messagesComment #9
jeremy commentedCommitted:
http://drupalcode.org/project/memcache.git/commitdiff/9f838d5
However, even with this sadly I'm not seeing the same results. I built a new test box to confirm it wasn't an environment issue. I can duplicate this on a MAMP stack as well as a LAMP stack.
I see:
368 passes, 12 fails, 0 exceptions, and 81 debug messagesThe error overview is as follows:
Cache clear test: 70 passes, 10 fails, 0 exceptions, and 9 debug messagesSession tests: 149 passes, 2 fails, 0 exceptions, and 41 debug messagesIn the cache clear test, I see failures in
MemCacheClearCase->testClearWildcardOnSeparatePages()(lines 654 is a 404 resulting in cascading failures -- the test module is successfully enabled but apparently the paths are still not enabled). In the session test, I see failures inMemcacheSessionTestCase->testDataPersistence()(line 87) andMemcacheSessionTestCase->testEmptyAnonymousSession()(line 176).Comment #10
markpavlitski commentedComment #11
jeremy commentedWhile debugging this, I did a little cleanup to the test, committed here:
http://cgit.drupalcode.org/memcache/commit/?id=16d354d
However, there are still failures in the test -- the failure only happens in simpletest, if I test the same logic in a custom script it works perfectly. Thus, I believe what this needs is someone good with SimpleTest to debug the test itself. Further, I'm no longer considering this test failure a release blocker.
Comment #12
damienmckennaFYI I was seeing a problem with the 'language' table being missing, because the 'locale' module wasn't enabled:
Comment #13
damienmckennaWith this patch I've gotten it down to the following:
Comment #14
damienmckennaFYI I'm also working on the tests in #2543030: Rewrite all time-based checks to use microtime, which has a small handful of test failures left.
Comment #15
jeremy commentedPrior to applying this patch:
382 passes, 8 fails, 3 exceptions, and 81 debug messagesAfter applying this patch:
395 passes, 8 fails, 3 exceptions, and 81 debug messagesIt looks like the extra passes are enabling locale, but I'm not seeing any fewer fails.
Comment #20
damienmckennaYeah, I couldn't get the tests to actually pass, there are lots of oddities. I'll try to get some more time to work on them.
Comment #21
jeremy commentedWith changes committed so far, we're almost there. Just one left:
238 passes, 1 fail, 1 exception, and 40 debug messagesComment #23
jeremy commentedI'm not entirely certain my fixes are correct, but all tests are now passing and functionality seems to be correct.
Comment #24
damienmckennaWoohoo! :-D