Uploaded image for project: 'ActiveMQ Classic'
  1. ActiveMQ Classic
  2. AMQ-3443

checkpoint contention with large transaction write using temp file

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Resolved
    • Major
    • Resolution: Fixed
    • 5.x
    • 5.6.0
    • Message Store
    • None
    • Regression, Unit Test Broken

    Description

      Unit test failure intermittently:
      org.apache.activemq.bugs » AMQ2149KahaDBTest » testQueueTransactionalOrderWithRestart

      2011-08-09 05:25:21,468 [eckpoint Worker] - ERROR MessageDatabase                - Checkpoint failed
      java.io.IOException: Cannot create recovery file. Reason: java.io.FileNotFoundException: target/testQueueTransactionalOrderWithRestart/testQueueTransactionalOrderWithRestart/KahaDB/tx-7648-1312867516460.tmp (No such file or directory)
      	at org.apache.kahadb.util.IOExceptionSupport.create(IOExceptionSupport.java:27)
      	at org.apache.kahadb.page.PageFile.writeBatch(PageFile.java:1002)
      	at org.apache.kahadb.page.PageFile.flush(PageFile.java:482)
      	at org.apache.activemq.store.kahadb.MessageDatabase.checkpointUpdate(MessageDatabase.java:1167)
      	at org.apache.activemq.store.kahadb.MessageDatabase$10.execute(MessageDatabase.java:728)
      	at org.apache.kahadb.page.Transaction.execute(Transaction.java:762)
      	at org.apache.activemq.store.kahadb.MessageDatabase.checkpointCleanup(MessageDatabase.java:726)
      	at org.apache.activemq.store.kahadb.MessageDatabase.checkpointCleanup(MessageDatabase.java:714)
      	at org.apache.activemq.store.kahadb.MessageDatabase$3.run(MessageDatabase.java:279)
      Caused by: java.io.FileNotFoundException: target/testQueueTransactionalOrderWithRestart/testQueueTransactionalOrderWithRestart/KahaDB/tx-7648-1312867516460.tmp (No such file or directory)
      	at java.io.RandomAccessFile.open(Native Method)
      	at java.io.RandomAccessFile.<init>(RandomAccessFile.java:212)
      	at org.apache.kahadb.page.PageFile$PageWrite.getDiskBound(PageFile.java:185)
      	at org.apache.kahadb.page.PageFile.writeBatch(PageFile.java:1000)
      	... 7 more
      2011-08-09 05:25:21,469 [eckpoint Worker] - INFO  DefaultIOExceptionHandler      - Stopping the broker due to IO exception, java.io.IOException: Cannot create recovery file. Reason: java.io.FileNotFoundException: target/testQueueTransactionalOrderWithRestart/testQueueTransactionalOrderWithRestart/KahaDB/tx-7648-1312867516460.tmp (No such file or directory)
      java.io.IOException: Cannot create recovery file. Reason: java.io.FileNotFoundException: target/testQueueTransactionalOrderWithRestart/testQueueTransactionalOrderWithRestart/KahaDB/tx-7648-1312867516460.tmp (No such file or directory)
      	at org.apache.kahadb.util.IOExceptionSupport.create(IOExceptionSupport.java:27)
      	at org.apache.kahadb.page.PageFile.writeBatch(PageFile.java:1002)
      	at org.apache.kahadb.page.PageFile.flush(PageFile.java:482)
      	at org.apache.activemq.store.kahadb.MessageDatabase.checkpointUpdate(MessageDatabase.java:1167)
      	at org.apache.activemq.store.kahadb.MessageDatabase$10.execute(MessageDatabase.java:728)
      	at org.apache.kahadb.page.Transaction.execute(Transaction.java:762)
      	at org.apache.activemq.store.kahadb.MessageDatabase.checkpointCleanup(MessageDatabase.java:726)
      	at org.apache.activemq.store.kahadb.MessageDatabase.checkpointCleanup(MessageDatabase.java:714)
      	at org.apache.activemq.store.kahadb.MessageDatabase$3.run(MessageDatabase.java:279)
      Caused by: java.io.FileNotFoundException: target/testQueueTransactionalOrderWithRestart/testQueueTransactionalOrderWithRestart/KahaDB/tx-7648-1312867516460.tmp (No such file or directory)

      Attachments

        Issue Links

          Activity

            People

              dejanb Dejan Bosanac
              gtully Gary Tully
              Votes:
              0 Vote for this issue
              Watchers:
              1 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: