[ https://issues.apache.org/jira/browse/JENA-234?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13253399#comment-13253399 ]
Andy Seaborne commented on JENA-234: ------------------------------------ Thanks - I'll close this now. When using the database non-transactionally, you will need to sync it somehow. TDB 0.9 behaves as much like pre0.9 when used "old style". Either use a transaction, or call TDB.sync(dataset) or model.close (that's a secret dataset sync). > In TDB, namespace data out of sync when dataset not closed properly > ------------------------------------------------------------------- > > Key: JENA-234 > URL: https://issues.apache.org/jira/browse/JENA-234 > Project: Apache Jena > Issue Type: Bug > Components: TDB > Affects Versions: TDB 0.9.0 > Environment: Windows 7. I think this can be repro'ed in any > environment > Reporter: Nathanael Thompson > Assignee: Andy Seaborne > Fix For: TDB 0.9.1 > > Attachments: Jena_234.java > > > When a TDB model is not closed properly. the NodeToId table get's out of > sync with the IdToNode table. This is because writeBuffer in > ObjectFileStorage doesn't get written, but the data in the NodeToId table > does get written. This causes the error mentioned in the following email > thread: > http://mail-archives.apache.org/mod_mbox/incubator-jena-dev/201201.mbox/%3c4f1ee540.5050...@apache.org%3E > Normally I'd say this isn't a bug because the user should close their models > correctly. But it seems like this should be fixed, because this mistake > breaks TDB for all future uses, and possibly forces the user to recreate the > whole db. I'd be fine with just not writing the buffered data to both > tables, as long as they're in sync. -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa For more information on JIRA, see: http://www.atlassian.com/software/jira