[Bug 371041] valid was not being set to new mongo db sessions, and the call to mongodb api was wrong in isIdInUse
This commit is contained in:
parent
528c246163
commit
9ab7452f8f
|
@ -61,7 +61,9 @@ public class MongoSessionIdManager extends AbstractSessionIdManager
|
|||
|
||||
final static DBObject __version_1 = new BasicDBObject(MongoSessionManager.__VERSION,1);
|
||||
final static DBObject __valid_false = new BasicDBObject(MongoSessionManager.__VALID,false);
|
||||
final static DBObject __valid_true = new BasicDBObject(MongoSessionManager.__VALID,true);
|
||||
|
||||
|
||||
final DBCollection _sessions;
|
||||
protected Server _server;
|
||||
private Timer _scavengeTimer;
|
||||
|
@ -434,10 +436,10 @@ public class MongoSessionIdManager extends AbstractSessionIdManager
|
|||
/*
|
||||
* optimize this query to only return the valid variable
|
||||
*/
|
||||
DBObject o = _sessions.findOne(new BasicDBObject("id",sessionId), __valid_false);
|
||||
DBObject o = _sessions.findOne(new BasicDBObject("id",sessionId), __valid_true);
|
||||
|
||||
if ( o != null )
|
||||
{
|
||||
{
|
||||
Boolean valid = (Boolean)o.get(MongoSessionManager.__VALID);
|
||||
|
||||
if ( valid == null )
|
||||
|
|
|
@ -118,7 +118,6 @@ public class MongoSessionManager extends NoSqlSessionManager
|
|||
|
||||
// Form query for upsert
|
||||
BasicDBObject key = new BasicDBObject(__ID,session.getClusterId());
|
||||
key.put(__VALID,true);
|
||||
|
||||
// Form updates
|
||||
BasicDBObject update = new BasicDBObject();
|
||||
|
@ -133,6 +132,7 @@ public class MongoSessionManager extends NoSqlSessionManager
|
|||
upsert = true;
|
||||
version = new Long(1);
|
||||
sets.put(__CREATED,session.getCreationTime());
|
||||
sets.put(__VALID,true);
|
||||
sets.put(getContextKey(__VERSION),version);
|
||||
}
|
||||
else
|
||||
|
|
Loading…
Reference in New Issue