You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@jena.apache.org by "Andy Seaborne (Jira)" <ji...@apache.org> on 2020/03/26 17:21:00 UTC

[jira] [Resolved] (JENA-1869) TDB2 Concurrency: StackOverflowErrors in BPTree

     [ https://issues.apache.org/jira/browse/JENA-1869?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Andy Seaborne resolved JENA-1869.
---------------------------------
    Fix Version/s: Jena 3.15.0
         Assignee: Andy Seaborne
       Resolution: Fixed

Fixed by [PR 714|https://github.com/apache/jena/pull/714].

> TDB2 Concurrency: StackOverflowErrors in BPTree
> -----------------------------------------------
>
>                 Key: JENA-1869
>                 URL: https://issues.apache.org/jira/browse/JENA-1869
>             Project: Apache Jena
>          Issue Type: Bug
>          Components: TDB2
>    Affects Versions: Jena 3.14.0
>            Reporter: Bernhard Stiftner
>            Assignee: Andy Seaborne
>            Priority: Major
>             Fix For: Jena 3.15.0
>
>         Attachments: TDB2StressTest.java
>
>
> TDB2 occasionally throws StackOverflowErrors in BPTree - TDB1 apparently did not. Same background/setting as JENA-1868
> Stacktrace:
> {noformat}
> 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)
> {noformat}
> 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.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)