Uploaded image for project: 'Apache Jena'
  1. Apache Jena
  2. JENA-1869

TDB2 Concurrency: StackOverflowErrors in BPTree

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Closed
    • Major
    • Resolution: Fixed
    • Jena 3.14.0
    • Jena 3.15.0
    • TDB2
    • None

    Description

      TDB2 occasionally throws StackOverflowErrors in BPTree - TDB1 apparently did not. Same background/setting as JENA-1868

      Stacktrace:

      Caused by: java.lang.StackOverflowError
      	at org.apache.jena.dboe.base.file.BlockAccessMapped.getByteBuffer(BlockAccessMapped.java:145)
      	at org.apache.jena.dboe.base.file.BlockAccessMapped.read(BlockAccessMapped.java:90)
      	at org.apache.jena.dboe.base.block.BlockMgrFileAccess.getBlock(BlockMgrFileAccess.java:71)
      	at org.apache.jena.dboe.base.block.BlockMgrFileAccess.getRead(BlockMgrFileAccess.java:61)
      	at org.apache.jena.dboe.base.block.BlockMgrWrapper.getRead(BlockMgrWrapper.java:46)
      	at org.apache.jena.dboe.base.page.PageBlockMgr.getRead$(PageBlockMgr.java:104)
      	at org.apache.jena.dboe.trans.bplustree.BPTreeNodeMgr.getRead(BPTreeNodeMgr.java:66)
      	at org.apache.jena.dboe.trans.bplustree.BPTreeNodeMgr.getRead(BPTreeNodeMgr.java:36)
      	at org.apache.jena.dboe.trans.bplustree.BPTreeNode.get(BPTreeNode.java:160)
      	at org.apache.jena.dboe.trans.bplustree.BPTreeNode.internalInsert(BPTreeNode.java:501)
      	at org.apache.jena.dboe.trans.bplustree.BPTreeNode.internalInsert(BPTreeNode.java:522)
      	at org.apache.jena.dboe.trans.bplustree.BPTreeNode.internalInsert(BPTreeNode.java:522)
      	at org.apache.jena.dboe.trans.bplustree.BPTreeNode.internalInsert(BPTreeNode.java:522)
      	at org.apache.jena.dboe.trans.bplustree.BPTreeNode.internalInsert(BPTreeNode.java:522)
      

      The attached "test case" manages to reproduce this issue most of the time on my machine (YMMV of course, since the test is based on quite some concurrency voodoo).
      The same test is working flawlessly when run against a TDB1 backend.

      Attachments

        1. TDB2StressTest.java
          3 kB
          Bernhard Stiftner

        Activity

          People

            andy Andy Seaborne
            bersti Bernhard Stiftner
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: