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

tdb CLI tools don't work with OpenJDK 8

    XMLWordPrintableJSON

Details

    • Question
    • Status: Closed
    • Major
    • Resolution: Information Provided
    • Jena 3.4.0, Jena 3.6.0
    • None
    • Cmd line tools
    • None

    Description

      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

      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
      

      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)

      Attachments

        Activity

          People

            Unassigned Unassigned
            Krauchanka Slava Krauchanka
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: