My Terracotta array recently quit unexpectedly.
Looking at the logs I see this:
Code:
java.lang.AssertionError: Lookup for non-exisistent Objects : BitSetObjectIDSet [ ObjectID=[105361150] ] lookup context is : LookupContext [ txnID = ServerTransactionID{ClientID[15],TransactionID=[10383859]}, oids = BitSetObjectIDSet [ ObjectID=[105361150] ], seqID = SequenceID=[10383859], clientTxnID = TransactionID=[10383859], numTxn = 1] = { pending = true, lookedupObjects.size() = 0}
at com.tc.objectserver.tx.TransactionalObjectManagerImpl$LookupContext.assertNoMissingObjects(TransactionalObjectManagerImpl.java:491)
at com.tc.objectserver.tx.TransactionalObjectManagerImpl$LookupContext.setResults(TransactionalObjectManagerImpl.java:463)
at com.tc.objectserver.impl.ObjectManagerImpl$ObjectManagerLookupContext.setResults(ObjectManagerImpl.java:1137)
at com.tc.objectserver.impl.ObjectManagerImpl.basicInternalLookupObjectsFor(ObjectManagerImpl.java:560)
at com.tc.objectserver.impl.ObjectManagerImpl.basicLookupObjectsFor(ObjectManagerImpl.java:512)
at com.tc.objectserver.impl.ObjectManagerImpl.processPendingLookups(ObjectManagerImpl.java:987)
at com.tc.objectserver.impl.ObjectManagerImpl.postRelease(ObjectManagerImpl.java:792)
at com.tc.objectserver.impl.ObjectManagerImpl.addFaultedObject(ObjectManagerImpl.java:385)
at com.tc.objectserver.handler.ManagedObjectFaultHandler.handleEvent(ManagedObjectFaultHandler.java:57)
at com.tc.async.impl.StageImpl$WorkerThread.run(StageImpl.java:145)
This is followed by a Tread dump and then the server dies. This happens on all the servers in the array at the same time. My array consists of 2 server instances.
It does not recover after this.
This outage caused a production issue so it is a big deal (for me).
I'm using Terracotta 3.7.0 Open source.
I noticed this same issue as already been logged:
http://jira.terracotta.org/jira/browse/EHCTERR-19
http://jira.terracotta.org/jira/browse/EHCTERR-23
One of the bug reports mentions it was fixed and the other says unresolved.
So I'm not sure what the issue is and how to prevent it from happening again.
Thank you for any assitance.