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 2018/02/14 18:30:00 UTC

[jira] [Comment Edited] (JENA-1485) tdb CLI tools don't work with OpenJDK 8

    [ https://issues.apache.org/jira/browse/JENA-1485?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16364564#comment-16364564 ] 

Andy Seaborne edited comment on JENA-1485 at 2/14/18 6:29 PM:
--------------------------------------------------------------

I can't reproduce this.  (1.8.0_151)

It does look like something to do with the disk setup, such as space problems, access problems, or the file system not properly supporting mmap files through to the host OS. None of those are java issues.

{noformat}
org.apache.jena.tdb.base.file.FileException: BlockMgrMapped.segmentAllocate: Segment = 0 
org.apache.jena.tdb.base.file.BlockAccessMapped.allocSegment(BlockAccessMapped.java:231)
org.apache.jena.tdb.base.file.BlockAccessMapped.getByteBuffer(BlockAccessMapped.java:157)
{noformat}



was (Author: andy.seaborne):
I can't reproduce this.  (1.8.0_151)

It does look like something to do with the disk setup, such as space problems, access problems, or the file system not properly supporting mmap files through to the host OS. None of those are java issues.

{noformat}
org.apache.jena.tdb.base.file.FileException: BlockMgrMapped.segmentAllocate: Segment = 0 at org.apache.jena.tdb.base.file.BlockAccessMapped.allocSegment(BlockAccessMapped.java:231) at org.apache.jena.tdb.base.file.BlockAccessMapped.getByteBuffer(BlockAccessMapped.java:157) a
{noformat}


> tdb CLI tools don't work with OpenJDK 8
> ---------------------------------------
>
>                 Key: JENA-1485
>                 URL: https://issues.apache.org/jira/browse/JENA-1485
>             Project: Apache Jena
>          Issue Type: Bug
>          Components: Cmd line tools
>    Affects Versions: Jena 3.4.0, Jena 3.6.0
>         Environment: Debian:
>  * Debian GNU/Linux 8.10 (jessie)
>  * openjdk-8-jdk:amd64 (8u131-b11-1~bpo8+1)
> openjdk version "1.8.0_131"
> OpenJDK Runtime Environment (build 1.8.0_131-8u131-b11-1~bpo8+1-b11)
> OpenJDK 64-Bit Server VM (build 25.131-b11, mixed mode)
> MacOSX:
>  * 10.13.3
>  * java version "1.8.0_51"
> Java(TM) SE Runtime Environment (build 1.8.0_51-b16)
> Java HotSpot(TM) 64-Bit Server VM (build 25.51-b03, mixed mode)
>            Reporter: Slava Krauchanka
>            Priority: Major
>
> I have a Debian guest VM running on MacOSX host. Running any `tdb*` utility works on MacOSX but doesn't work on Debian:
> {{$ tdbstats --loc=tdb}}
> {noformat}
> org.apache.jena.tdb.base.file.FileException: BlockMgrMapped.segmentAllocate: Segment = 0
>  at org.apache.jena.tdb.base.file.BlockAccessMapped.allocSegment(BlockAccessMapped.java:231)
>  at org.apache.jena.tdb.base.file.BlockAccessMapped.getByteBuffer(BlockAccessMapped.java:157)
>  at org.apache.jena.tdb.base.file.BlockAccessMapped.allocate(BlockAccessMapped.java:85)
>  at org.apache.jena.tdb.base.block.BlockMgrFileAccess.allocate(BlockMgrFileAccess.java:50)
>  at org.apache.jena.tdb.base.block.BlockMgrBase.allocate(BlockMgrBase.java:44)
>  at org.apache.jena.tdb.base.block.BlockMgrWrapper.allocate(BlockMgrWrapper.java:46)
>  at org.apache.jena.tdb.base.block.BlockMgrFreeChain.allocate(BlockMgrFreeChain.java:48)
>  at org.apache.jena.tdb.base.page.PageBlockMgr.create(PageBlockMgr.java:51)
>  at org.apache.jena.tdb.index.bplustree.BPTreeRecordsMgr.create(BPTreeRecordsMgr.java:79)
>  at org.apache.jena.tdb.index.bplustree.BPTreeNodeMgr.createEmptyBPT(BPTreeNodeMgr.java:52)
>  at org.apache.jena.tdb.index.bplustree.BPlusTree.createIfAbsent(BPlusTree.java:213)
>  at org.apache.jena.tdb.index.bplustree.BPlusTree.create(BPlusTree.java:139)
>  at org.apache.jena.tdb.setup.DatasetBuilderStd.createBPTree(DatasetBuilderStd.java:114)
>  at org.apache.jena.tdb.setup.DatasetBuilderStd.buildRangeIndex(DatasetBuilderStd.java:80)
>  at org.apache.jena.tdb.setup.DatasetBuilderStd.buildIndex(DatasetBuilderStd.java:86)
>  at org.apache.jena.tdb.setup.DatasetBuilderStd.buildNodeTable(DatasetBuilderStd.java:353)
>  at org.apache.jena.tdb.setup.DatasetBuilderStd.makeNodeTable$(DatasetBuilderStd.java:345)
>  at org.apache.jena.tdb.setup.DatasetBuilderStd.makeNodeTable(DatasetBuilderStd.java:338)
>  at org.apache.jena.tdb.setup.DatasetBuilderStd.buildWorker(DatasetBuilderStd.java:215)
>  at org.apache.jena.tdb.setup.DatasetBuilderStd._build(DatasetBuilderStd.java:209)
>  at org.apache.jena.tdb.setup.DatasetBuilderStd.build(DatasetBuilderStd.java:198)
>  at org.apache.jena.tdb.setup.DatasetBuilderStd.create(DatasetBuilderStd.java:143)
>  at org.apache.jena.tdb.StoreConnection.make(StoreConnection.java:213)
>  at org.apache.jena.tdb.StoreConnection.make(StoreConnection.java:220)
>  at org.apache.jena.tdb.transaction.DatasetGraphTransaction.<init>(DatasetGraphTransaction.java:70)
>  at org.apache.jena.tdb.sys.TDBMaker._create(TDBMaker.java:55)
>  at org.apache.jena.tdb.sys.TDBMaker.createDatasetGraphTransaction(TDBMaker.java:42)
>  at org.apache.jena.tdb.TDBFactory._createDatasetGraph(TDBFactory.java:89)
>  at org.apache.jena.tdb.TDBFactory.createDatasetGraph(TDBFactory.java:71)
>  at org.apache.jena.tdb.TDBFactory.createDataset(TDBFactory.java:55)
>  at tdb.cmdline.ModTDBDataset.createDataset(ModTDBDataset.java:103)
>  at arq.cmdline.ModDataset.getDataset(ModDataset.java:36)
>  at tdb.cmdline.CmdTDB.getDataset(CmdTDB.java:80)
>  at tdb.cmdline.CmdTDB.getDatasetGraph(CmdTDB.java:71)
>  at tdb.cmdline.CmdTDB.getDatasetGraphTDB(CmdTDB.java:75)
>  at tdb.tdbstats.exec(tdbstats.java:98)
>  at jena.cmd.CmdMain.mainMethod(CmdMain.java:93)
>  at jena.cmd.CmdMain.mainRun(CmdMain.java:58)
>  at jena.cmd.CmdMain.mainRun(CmdMain.java:45)
>  at tdb.tdbstats.main(tdbstats.java:44)
> Caused by: java.io.IOException: Invalid argument
>  at sun.nio.ch.FileChannelImpl.map0(Native Method)
>  at sun.nio.ch.FileChannelImpl.map(FileChannelImpl.java:926)
>  at org.apache.jena.tdb.base.file.BlockAccessMapped.allocSegment(BlockAccessMapped.java:223)
>  ... 39 more
> {noformat}
> The only difference I could spot was the JDK versions:
>  * Debian (64-bit) 
> {{openjdk version "1.8.0_131"}}
> {{OpenJDK Runtime Environment (build 1.8.0_131-8u131-b11-1~bpo8+1-b11)}}
> {{OpenJDK 64-Bit Server VM (build 25.131-b11, mixed mode)}}
>  * MacOSX (64-bit)
> {{java version "1.8.0_51"}}
> {{Java(TM) SE Runtime Environment (build 1.8.0_51-b16)}}
> {{Java HotSpot(TM) 64-Bit Server VM (build 25.51-b03, mixed mode)}}



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)