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

Andy Seaborne edited comment on JENA-301 at 8/27/12 9:52 PM:
-------------------------------------------------------------

Block file size tracking has two state variables - only one was begin reset 
when a replayed journal wrote to the end or beyond the current end of the file.

The reason it shows up only for direct-mode second run is that a block is 
written at the end, or beyond the end, of the file.  In direct mode, that 
extends the file; in mapped mode it goes into the allocated-but-unused segment 
area due to segment rounding to 8M.  It can occur in mapped mode but is much 
less likely.
                
      was (Author: andy.seaborne):
    Block file size tracking has two state variables - only one was begin reset 
when a replayed journal wrote to the end or beyond the current end of the file.
                  
> RecordRangeIterator: records not strictly increasing
> ----------------------------------------------------
>
>                 Key: JENA-301
>                 URL: https://issues.apache.org/jira/browse/JENA-301
>             Project: Apache Jena
>          Issue Type: Bug
>          Components: TDB
>    Affects Versions: TDB 0.9.4
>         Environment: windows 64 bit, oracle JRE 6
>            Reporter: Simon Helsen
>            Assignee: Andy Seaborne
>         Attachments: PerformanceRegressionTest.java
>
>
> When I tried to execute the provided test case for JENA-256, I ran into a TDB 
> Storage Exception. The scenario is like this
> 1) run the test application on a clean non-existing index. All should go 
> well, i.e. not exceptions, tests finish fine
> 2) then run the test application again on the same index. You'll end up with 
> the following stack trace at write operation 98:
> xception in thread "main" java.lang.RuntimeException: 
> com.hp.hpl.jena.tdb.base.StorageException: RecordRangeIterator: records not 
> strictly increasing: 
> 00000000000020ba000000000000002400000000000001490000000000000ad3 // 
> 00000000000008bc000000000000002400000000000001490000000000000271
>       at 
> com.ibm.jena.test.PerformanceRegressionTest.main(PerformanceRegressionTest.java:101)
> Caused by: com.hp.hpl.jena.tdb.base.StorageException: RecordRangeIterator: 
> records not strictly increasing: 
> 00000000000020ba000000000000002400000000000001490000000000000ad3 // 
> 00000000000008bc000000000000002400000000000001490000000000000271
>       at 
> com.hp.hpl.jena.tdb.base.recordbuffer.RecordRangeIterator.hasNext(RecordRangeIterator.java:124)
>       at org.openjena.atlas.iterator.Iter$4.hasNext(Iter.java:295)
>       at 
> com.hp.hpl.jena.tdb.sys.DatasetControlMRSW$IteratorCheckNotConcurrent.hasNext(DatasetControlMRSW.java:119)
>       at 
> com.hp.hpl.jena.tdb.graph.BulkUpdateHandlerTDB.removeWorker(BulkUpdateHandlerTDB.java:142)
>       at 
> com.hp.hpl.jena.tdb.graph.BulkUpdateHandlerTDB.removeAll(BulkUpdateHandlerTDB.java:102)
>       at com.hp.hpl.jena.rdf.model.impl.ModelCom.removeAll(ModelCom.java:372)
>       at 
> com.ibm.jena.test.PerformanceRegressionTest.main(PerformanceRegressionTest.java:78)
> The issue seems reproducible (I have seen it 3 times in a row when following 
> the scenario as described). Although I think this is exactly the same test 
> application as in JENA-256, I'll add it again for completeness

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

Reply via email to