Community
Participate
Working Groups
the JDBC session manager appears to be reloading (or recreating) the session to frequently. In the LastAccessTimeTest, a session is made on server1 and then accessed on server2 at short intervals. On each access, the session is seen to have lastNode w0 and this node w1, plus it is expired, so it is reloaded. This happens twice per request. The next request still sees the lastNode as w0. I'm unclear what the exact meaning of expired is? Is that the same as invalidation or some freshness from DB indicator.
It wasn't actually expired, just a poor choice of words in the debug log statement. What was wrong, and now fixed, is that the session's lastNode was not updated into the session in memory, although it was updated correctly in the db, the first time the session hit the 2nd node. The net effect of that is that we were writing out the session unnecessarily to the db, and also re-creating a session object and putting it into the session map every time getSession(id) was called. Fixed in svn rev 3449. Jan