fdb-record-layer icon indicating copy to clipboard operation
fdb-record-layer copied to clipboard

Intermittent transaction too old errors in LuceneIndexTest

Open alecgrieser opened this issue 8 months ago • 0 comments

There appears to be some amount of flakiness in the LuceneIndexTest that can result in transaction_too_old errors. For example, this one was hit during the prbs for #2742:

LuceneIndexTest > functionalPartitionFieldPredicateTest(long) > com.apple.foundationdb.record.lucene.LuceneIndexTest.functionalPartitionFieldPredicateTest(long)[1] FAILED
    com.apple.foundationdb.record.provider.foundationdb.FDBExceptions$FDBStoreTransactionIsTooOldException: Transaction is too old to perform reads or be committed
        at app//com.apple.foundationdb.record.provider.foundationdb.FDBExceptions.wrapException(FDBExceptions.java:185)
        at app//com.apple.foundationdb.record.provider.foundationdb.FDBDatabase.lambda$new$0(FDBDatabase.java:172)
        at app//com.apple.foundationdb.record.provider.foundationdb.FDBDatabase.asyncToSync(FDBDatabase.java:1102)
        at app//com.apple.foundationdb.record.provider.foundationdb.FDBRecordContext.asyncToSync(FDBRecordContext.java:1139)
        at app//com.apple.foundationdb.record.provider.foundationdb.FDBRecordContext.commit(FDBRecordContext.java:450)
        at app//com.apple.foundationdb.record.provider.foundationdb.FDBRecordStoreConcurrentTestBase.commit(FDBRecordStoreConcurrentTestBase.java:162)
        at app//com.apple.foundationdb.record.lucene.LuceneIndexTest.functionalPartitionFieldPredicateTest(LuceneIndexTest.java:1676)

        Caused by:
        com.apple.foundationdb.FDBException: Transaction is too old to perform reads or be committed
            at app//com.apple.foundationdb.NativeFuture.Future_getError(Native Method)
            at app//com.apple.foundationdb.FutureVoid.getIfDone_internal(FutureVoid.java:35)
            at app//com.apple.foundationdb.FutureVoid.getIfDone_internal(FutureVoid.java:25)
            at app//com.apple.foundationdb.NativeFuture.marshalWhenDone(NativeFuture.java:63)
            at app//com.apple.foundationdb.async.TaskNotifyingExecutor$Notifier.run(TaskNotifyingExecutor.java:77)
            at [email protected]/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)
            at [email protected]/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
            at [email protected]/java.lang.Thread.run(Thread.java:829)

Unclear exactly what is causing this, but I'm reporting the issue so we can keep track of it

alecgrieser avatar May 28 '24 16:05 alecgrieser