Hello,
we are using the memcached-session-manager for over a year now and were very pleased with its performance.
Lately we switched from Tomcat 7 to 8 and I migrated our source code to use the current version of
memcached-session-manager-1.9.2.
Unfortunately this version didn't store any session data on our memcache server.
To debug this problem I added the property sessionBackupAsync="false" to our configuration and thus obtained an error message
which didn't show up earlier:
2016-06-06 14:38:41,105 [http-8080-1] WARN CoyoteAdapter - Exception while attempting to add an entry to the access log
java.lang.NoSuchFieldError: attributes
at de.javakaffee.web.msm.MemcachedBackupSession.setAttributesInternal(MemcachedBackupSession.java:534)
at de.javakaffee.web.msm.TranscoderService.deserialize(TranscoderService.java:129)
at de.javakaffee.web.msm.MemcachedSessionService.loadFromMemcached(MemcachedSessionService.java:1146)
at de.javakaffee.web.msm.MemcachedSessionService.findSession(MemcachedSessionService.java:595)
at de.javakaffee.web.msm.MemcachedBackupSessionManager.findSession(MemcachedBackupSessionManager.java:208)
I thought the source of this error might be a change in the Tomcat sources and Eureka!:
The error only occurs in Tomcat 8.0.35. Tomcat 8.0.33 works nicely.
A diff for StandardSession between 33 and 35 shows:
https://fossies.org/diffs/apache-tomcat/8.0.33-src_vs_8.0.35-src/java/org/apache/catalina/session/StandardSession.java-diff.htmlI guess this breaks the code for MemcachedBackupSession.
Could you please look into it?
Best regards
Andreas Moll