jackrabbit-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Jukka Zitting (JIRA)" <j...@apache.org>
Subject [jira] Updated: (JCR-1078) ChangeLog serialization causes cache inconsistencies
Date Thu, 20 Sep 2007 18:36:33 GMT

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

Jukka Zitting updated JCR-1078:
-------------------------------

    Affects Version/s: 1.2.1
                       1.2.2
                       1.2.3
                       1.3.1
        Fix Version/s: 1.3.2

Merged to the 1.3 branch in revision 577858.

> ChangeLog serialization causes cache inconsistencies
> ----------------------------------------------------
>
>                 Key: JCR-1078
>                 URL: https://issues.apache.org/jira/browse/JCR-1078
>             Project: Jackrabbit
>          Issue Type: Bug
>          Components: clustering
>    Affects Versions: 1.2.1, 1.2.2, 1.2.3, 1.3, 1.3.1
>         Environment: Clustered Jackrabbit 1.3
>            Reporter: Martijn Hendriks
>            Assignee: Dominique Pfister
>             Fix For: 1.3.2
>
>         Attachments: JCR-1078.patch
>
>
> The ordering of actions is taken into account when a ChangeLog is built through session
manipulations (see, for instance,  ChangeLog.deleted(ItemState state)). When it is serialized
in ClusterNode.write(Record record, ChangeLog changeLog, EventStateCollection esc), however,
this implicit ordering might be changed. As a consequence,  the deserialization in ClusterNode.consume(Record
record) might produce a different ChangeLog with the effect that the local caches get out-of-sync
with the persistent state of the repository.
> The issue should be reproducable as follows:
> - Setup a clustered environment with two Jackrabbit instances, say A and B.
> - On instance A add a property "P" with value "x" to some node and save the session.
> - On instance B read property "P" -> it will have value "x".
> - On instance A delete property P and then add it again with value "y" and save the session.
> - On instance B read property "P" -> it will still have value "x" after the cluster
sync...

-- 
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