[ https://issues.apache.org/jira/browse/JCR-1117?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Jukka Zitting updated JCR-1117: ------------------------------- Affects Version/s: 1.5.4 1.5.3 Fix Version/s: 1.5.5 Merged to the 1.5 branch in revision 760810. > Bundle cache is not rolled back when the storage of a ChangeLog fails > --------------------------------------------------------------------- > > Key: JCR-1117 > URL: https://issues.apache.org/jira/browse/JCR-1117 > Project: Jackrabbit Content Repository > Issue Type: Bug > Components: jackrabbit-core > Affects Versions: 1.3, 1.4, 1.5.0, 1.5.2, 1.5.3, 1.5.4 > Reporter: Martijn Hendriks > Fix For: 1.5.5 > > Attachments: JCR-1117-v2.patch, JCR-1117-v3.patch, JCR-1117.patch, > stacktrace.txt > > > The bundle cache in the bundle persistence managers is not restored to its > old state when the AbstractBundlePersistenceManager.store(ChangeLog > changeLog) method throws an exception. If, for instance, the storage of > references fails then the > AbstractBundlePersistenceManager.putBundle(NodePropBundle bundle) method has > already been called for all modified bundles. Because of the connection > rollback, the bundle cache will be out-of-sync with the persistent state. As > a result, the SharedItemStateManager will have an incorrect view of the > persistent state. > Furthermore, if the blockOnConnectionLoss property is set to true, then the > BundleDbPersistenceManager can be caught in an infinite loop because of > invalid SQL inserts because of an incorrect bundle cache; see attached > stacktrace. -- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online.