replication-granularity ATTRIBUTE problem
tokobayashi Dec 7, 2004 1:36 AMhi,
I'm applying HttpSessionReplication to my application.
When replication-granularity is SESSION, replication works fine.
But I set replication-granularity to ATTRIBUTE, and stressed the web-application.Then I got the following error log.
2004-12-07 14:18:17,410 ERROR [TP-Processor10][org.jboss.cache.TreeCache] commit(): entry for transaction <smtla009:33398>:476 not found
I changed the log level of TreeCache, and tried again.
2004-12-07 14:18:17,407 DEBUG [TP-Processor1][org.jboss.cache.TreeCache] _put(<smtla009:33398>:475, "/JSESSION/km2Atal2mscTqdFK7beMAw**", km2Atal2mscTqdFK7beMAw**, org.jboss.invocation.MarshalledValue@7e98f89c)
2004-12-07 14:18:17,408 DEBUG [TP-Processor10][org.jboss.cache.TreeCache] _put(<smtla009:33398>:476, "/JSESSION/f4Ul4Y9ouu93Ndxk6rOugw**/ATTRIBUTE", homepageVisits, org.jboss.invocation.MarshalledValue@79215bb4)
2004-12-07 14:18:17,408 DEBUG [TP-Processor1][org.jboss.cache.TreeCache] _put(<smtla009:33398>:475, "/JSESSION/km2Atal2mscTqdFK7beMAw**/ATTRIBUTE", homepageVisits, org.jboss.invocation.MarshalledValue@79215bb3)
2004-12-07 14:18:17,408 DEBUG [TP-Processor10][org.jboss.cache.TreeCache] callRemoteMethods(): destination list is empty, discarding call
2004-12-07 14:18:17,408 DEBUG [TP-Processor1][org.jboss.cache.TreeCache] callRemoteMethods(): destination list is empty, discarding call
2004-12-07 14:18:17,409 DEBUG [TP-Processor10][org.jboss.cache.TreeCache] callRemoteMethods(): destination list is empty, discarding call
2004-12-07 14:18:17,409 DEBUG [TP-Processor1][org.jboss.cache.TreeCache] callRemoteMethods(): destination list is empty, discarding call
2004-12-07 14:18:17,409 DEBUG [TP-Processor10][org.jboss.cache.TreeCache] commit(): called to commit cache with gtx <smtla009:33398>:476
2004-12-07 14:18:17,409 DEBUG [TP-Processor1][org.jboss.cache.TreeCache] commit(): called to commit cache with gtx <smtla009:33398>:475
2004-12-07 14:18:17,409 DEBUG [TP-Processor10][org.jboss.cache.TreeCache] commit(): releasing lock ...
2004-12-07 14:18:17,409 DEBUG [TP-Processor1][org.jboss.cache.TreeCache] commit(): releasing lock ...
2004-12-07 14:18:17,409 DEBUG [TP-Processor10][org.jboss.cache.TreeCache] commit(): releasing lock ...
2004-12-07 14:18:17,409 DEBUG [TP-Processor1][org.jboss.cache.TreeCache] commit(): releasing lock ...
2004-12-07 14:18:17,409 DEBUG [TP-Processor10][org.jboss.cache.TreeCache] commit(): releasing lock ...
2004-12-07 14:18:17,409 DEBUG [TP-Processor1][org.jboss.cache.TreeCache] commit(): releasing lock ...
2004-12-07 14:18:17,410 DEBUG [TP-Processor1][org.jboss.cache.TreeCache] commit(): removing local transaction key TransactionImpl:XidImpl[FormatId=257, GlobalId=smtla009.osaka.sunmoretec.co.jp/1794, BranchQual=, localId=1794]
2004-12-07 14:18:17,410 DEBUG [TP-Processor10][org.jboss.cache.TreeCache] commit(): removing local transaction key TransactionImpl:XidImpl[FormatId=257, GlobalId=smtla009.osaka.sunmoretec.co.jp/1795, BranchQual=, localId=1795]
2004-12-07 14:18:17,410 DEBUG [TP-Processor10][org.jboss.cache.TreeCache] commit(): called to commit cache with gtx <smtla009:33398>:476
2004-12-07 14:18:17,410 ERROR [TP-Processor10][org.jboss.cache.TreeCache] commit(): entry for transaction <smtla009:33398>:476 not found
#To avoid CuncurrentModificationException, I had to change one logging code("commit(): releasing lock ...")
I see two "commit(): called to commit cache with gtx <smtla009:33398>:476".
Why commit happened twice?
ATTRIBUTE granularity is not reliable?
environment:
RedHat AS2.1
JDK1.4.2_03
Apache2+mod_jk2
JBoss4.0.0
replication-trigger is SET
(when SET_AND_NON_PRIMITIVE_GET was set, the result was the same)