jackrabbit-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Thomas Mueller" <thomas.tom.muel...@gmail.com>
Subject Re: [jira] Updated: (JCR-862) unsynchronized access on 'itemCache' map in ItemManager
Date Thu, 20 Sep 2007 12:19:24 GMT
Hi Jukka,

You have also commented out setAutoCommit(true):

--- BundleDbPersistenceManager
        con = DriverManager.getConnection(url, user, password);
-        con.setAutoCommit(true);
+        //con.setAutoCommit(true);

In my view this line can be completely removed, as by default
autoCommit is true anyway (for each database).

Thomas



On 9/20/07, Jukka Zitting (JIRA) <jira@apache.org> wrote:
>
>      [ https://issues.apache.org/jira/browse/JCR-862?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
>
> Jukka Zitting updated JCR-862:
> ------------------------------
>
>     Affects Version/s: 1.2.1
>                        1.2.2
>                        1.3
>                        1.3.1
>         Fix Version/s:     (was: 1.4)
>                        1.3.2
>
> Merged to the 1.3 branch in revision 577711.
>
> > unsynchronized access on 'itemCache' map in ItemManager
> > --------------------------------------------------------
> >
> >                 Key: JCR-862
> >                 URL: https://issues.apache.org/jira/browse/JCR-862
> >             Project: Jackrabbit
> >          Issue Type: Bug
> >          Components: core
> >    Affects Versions: 1.2.1, 1.2.2, 1.2.3, 1.3, 1.3.1
> >            Reporter: Tobias Bocanegra
> >            Assignee: Stefan Guggisberg
> >             Fix For: 1.3.2
> >
> >         Attachments: ItemManager.patch, stacktrace.txt
> >
> >
> > the access 'itemCache' map in ItemManager is mostly synchronized by not via the
ItemStateListener methods:
> > [...]
> >     public void stateCreated(ItemState created) {
> >         ItemImpl item = retrieveItem(created.getId());
> >         if (item != null) {
> >             item.stateCreated(created);
> >         }
> >     }
> > [...]
> >     private ItemImpl retrieveItem(ItemId id) {
> >         return (ItemImpl) itemCache.get(id);
> >     }
> > [...]
> > this can result in a corruption of a map (eg subsequent accesses may result in a
endless loop).
>
> --
> This message is automatically generated by JIRA.
> -
> You can reply to this email to add a comment to the issue online.
>
>

Mime
View raw message