You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@jackrabbit.apache.org by "Stefan Guggisberg (JIRA)" <ji...@apache.org> on 2011/09/14 17:31:09 UTC
[jira] [Assigned] (JCR-1848) ConcurrentModificationException in
SessionItemStateManager when multiple updates happening
[ https://issues.apache.org/jira/browse/JCR-1848?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Stefan Guggisberg reassigned JCR-1848:
--------------------------------------
Assignee: Stefan Guggisberg
> ConcurrentModificationException in SessionItemStateManager when multiple updates happening
> ------------------------------------------------------------------------------------------
>
> Key: JCR-1848
> URL: https://issues.apache.org/jira/browse/JCR-1848
> Project: Jackrabbit Content Repository
> Issue Type: Bug
> Components: jackrabbit-core
> Affects Versions: core 1.4.6
> Reporter: Chris Wilkes
> Assignee: Stefan Guggisberg
> Attachments: NPEandCMETest.java
>
>
> I'll post a trimmed down version of how I can get this error to be thrown. I bring this up as the code in SessionItemStateManager explicitly checks for a ItemNotFoundException so it looks like there was some thought put in to what happens if the underlying data changes.
> java.util.ConcurrentModificationException
> at java.util.HashMap$HashIterator.nextEntry(HashMap.java:793)
> at java.util.HashMap$ValueIterator.next(HashMap.java:822)
> at java.util.Collections$UnmodifiableCollection$1.next(Collections.java:1010)
> at org.apache.jackrabbit.core.state.SessionItemStateManager.getDescendantTransientItemStates(SessionItemStateManager.java:405)
> at org.apache.jackrabbit.core.ItemImpl.getTransientStates(ItemImpl.java:317)
> at org.apache.jackrabbit.core.ItemImpl.save(ItemImpl.java:1080)
> at org.apache.jackrabbit.core.SessionImpl.save(SessionImpl.java:897)
--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira