You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@jackrabbit.apache.org by "Jukka Zitting (JIRA)" <ji...@apache.org> on 2009/01/17 10:41:59 UTC

[jira] Resolved: (JCR-1939) If we threading to add nodes into the repository

     [ https://issues.apache.org/jira/browse/JCR-1939?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Jukka Zitting resolved JCR-1939.
--------------------------------

    Resolution: Invalid
      Assignee: Jukka Zitting

The JCR-1359 issue is already fixed.

See section 7.5 Thread-Safety Requirements in the JCR spec for more details on the thread-safety requirements.

Resolving as Invalid since this seems to be a client issue.

PS. Perhaps we really should be synchronizing all relevant JCR methods against the current session to avoid breakage like this.

> If we threading to add nodes into the repository
> ------------------------------------------------
>
>                 Key: JCR-1939
>                 URL: https://issues.apache.org/jira/browse/JCR-1939
>             Project: Jackrabbit Content Repository
>          Issue Type: Bug
>    Affects Versions: 1.5.0
>         Environment: Microsoft windows XP professional, 2GB ram
>            Reporter: akil ajani
>            Assignee: Jukka Zitting
>             Fix For: 1.5.0
>
>
> Senario 1: 
> we have a root node and it has 1 parent node. i am trying to add 600 nodes to that parent node. so i have created 3 threads and each thread is adding 200 nodes. it works for some time and later on throws an exception
> java.util.ConcurrentModificationException
> 	at java.util.HashMap$HashIterator.nextEntry(HashMap.java:787)
> 	at java.util.HashMap$ValueIterator.next(HashMap.java:817)
> 	at java.util.Collections$UnmodifiableCollection$1.next(Collections.java:1010)
> 	at org.apache.jackrabbit.core.state.SessionItemStateManager.getDescendantTransientItemStates(SessionItemStateManager.java:376)
> 	at org.apache.jackrabbit.core.ItemImpl.getTransientStates(ItemImpl.java:361)
> 	at org.apache.jackrabbit.core.ItemImpl.save(ItemImpl.java:1079)
> 	at org.apache.jackrabbit.core.SessionImpl.save(SessionImpl.java:849)
> some time it gets HANGED
> Scenario:2
> we have a root node and it has 2 parent node. i am trying to add 600 nodes to eac parent node. so i have created 2 threads and each thread is adding 600 nodes to cach parent node. it works for some time and later on throws an exception
> java.util.ConcurrentModificationException
> 	at java.util.HashMap$HashIterator.nextEntry(HashMap.java:787)
> 	at java.util.HashMap$ValueIterator.next(HashMap.java:817)
> 	at java.util.Collections$UnmodifiableCollection$1.next(Collections.java:1010)
> 	at org.apache.jackrabbit.core.state.SessionItemStateManager.getDescendantTransientItemStates(SessionItemStateManager.java:376)
> 	at org.apache.jackrabbit.core.ItemImpl.getTransientStates(ItemImpl.java:361)
> 	at org.apache.jackrabbit.core.ItemImpl.save(ItemImpl.java:1079)
> 	at org.apache.jackrabbit.core.SessionImpl.save(SessionImpl.java:849)
> some time it gets HANGED
> please help me to resolve this issue as soon as possible. i would be thankful to you if you could provide me the solution for this as soon as possible

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.