[jira] [Updated] (OAK-3529) NodeStore API should expose an Instance ID
[ https://issues.apache.org/jira/browse/OAK-3529?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Davide Giannella updated OAK-3529: -- Attachment: OAK-3529-7.patch here's a [last review|^OAK-3529-7.patch] of the problem where I implemented the approach by providing {{with(Clusterable)}} on both Jcr and Oak builder. This should allow us with as much flexibility as possible. It won't touch an existing behavior and when/if we need it in UT/IT we simply need to construct the repository by using it. So far we didn't have the need. [~mduerig] please review /cc [~mreutegg] > NodeStore API should expose an Instance ID > -- > > Key: OAK-3529 > URL: https://issues.apache.org/jira/browse/OAK-3529 > Project: Jackrabbit Oak > Issue Type: Improvement > Components: core >Reporter: Davide Giannella >Assignee: Davide Giannella > Fix For: 1.4 > > Attachments: OAK-3529-1.patch, OAK-3529-2.patch, OAK-3529-3.patch, > OAK-3529-4.patch, OAK-3529-5.patch, OAK-3529-6.patch, OAK-3529-7.patch > > > For better leveraging cluster oriented algorithm: discovery, atomic > operations; it would be very helpful if the NodeStore could expose a > unique instance id. > This can be the same as a cluster ID. -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Updated] (OAK-3529) NodeStore API should expose an Instance ID
[ https://issues.apache.org/jira/browse/OAK-3529?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Davide Giannella updated OAK-3529: -- Attachment: OAK-3529-6.patch [~mduerig] bq. Re. the patch, there is a problem in the order of initialisation: the store member is used before it is initialised in Jcr(Oak) True. In [OAK-3529-6.patch|^OAK-3529-6.patch] there's a last attempt to workaround the fact that we expect the NodeStore to provide Clusterable. It's quite a refactoring. IMO it's better to go straight for adding {{.with(Clusterable}}. Thoughts? /cc [~mreutegg] > NodeStore API should expose an Instance ID > -- > > Key: OAK-3529 > URL: https://issues.apache.org/jira/browse/OAK-3529 > Project: Jackrabbit Oak > Issue Type: Improvement > Components: core >Reporter: Davide Giannella >Assignee: Davide Giannella > Fix For: 1.4 > > Attachments: OAK-3529-1.patch, OAK-3529-2.patch, OAK-3529-3.patch, > OAK-3529-4.patch, OAK-3529-5.patch, OAK-3529-6.patch > > > For better leveraging cluster oriented algorithm: discovery, atomic > operations; it would be very helpful if the NodeStore could expose a > unique instance id. > This can be the same as a cluster ID. -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Updated] (OAK-3529) NodeStore API should expose an Instance ID
[ https://issues.apache.org/jira/browse/OAK-3529?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Davide Giannella updated OAK-3529: -- Attachment: OAK-3529-5.patch Attaching a [new patch|^OAK-3529-5.patch] where I removed the getInstaceId from the builders. The Jcr builder now keep tracks of the instanceId and NodeStore. I personally don't like it and I think we should address the situation by adding a new {{.with(@Nonnull Clusterable)}}. The Clusterable aspect could be implemented by something different than a NodeStore. In particular deployments for example someone could create a "service" that delegates it to Sling rather than our NodeStore or we could come up with type of Topology which we could later on leverage. By specifying the new .with() we make it clear from a repository construction POV. This new {{.with()}} can be addressed later on with a separate issue. [~mduerig], [~mreutegg] please review > NodeStore API should expose an Instance ID > -- > > Key: OAK-3529 > URL: https://issues.apache.org/jira/browse/OAK-3529 > Project: Jackrabbit Oak > Issue Type: Improvement > Components: core >Reporter: Davide Giannella >Assignee: Davide Giannella > Fix For: 1.4 > > Attachments: OAK-3529-1.patch, OAK-3529-2.patch, OAK-3529-3.patch, > OAK-3529-4.patch, OAK-3529-5.patch > > > For better leveraging cluster oriented algorithm: discovery, atomic > operations; it would be very helpful if the NodeStore could expose a > unique instance id. > This can be the same as a cluster ID. -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Updated] (OAK-3529) NodeStore API should expose an Instance ID
[ https://issues.apache.org/jira/browse/OAK-3529?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Davide Giannella updated OAK-3529: -- Attachment: OAK-3529-4.patch > NodeStore API should expose an Instance ID > -- > > Key: OAK-3529 > URL: https://issues.apache.org/jira/browse/OAK-3529 > Project: Jackrabbit Oak > Issue Type: Improvement > Components: core >Reporter: Davide Giannella >Assignee: Davide Giannella > Fix For: 1.4 > > Attachments: OAK-3529-1.patch, OAK-3529-2.patch, OAK-3529-3.patch, > OAK-3529-4.patch > > > For better leveraging cluster oriented algorithm: discovery, atomic > operations; it would be very helpful if the NodeStore could expose a > unique instance id. > This can be the same as a cluster ID. -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Updated] (OAK-3529) NodeStore API should expose an Instance ID
[ https://issues.apache.org/jira/browse/OAK-3529?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Davide Giannella updated OAK-3529: -- Attachment: OAK-3529-3.patch Attaching a [third patch|^OAK-3529-3.patch]. Forgot the OSGi aspects of the DocumentNodeStore registration and baseline plugin complaints [~mduerig] please review. > NodeStore API should expose an Instance ID > -- > > Key: OAK-3529 > URL: https://issues.apache.org/jira/browse/OAK-3529 > Project: Jackrabbit Oak > Issue Type: Improvement > Components: core >Reporter: Davide Giannella >Assignee: Davide Giannella > Fix For: 1.4 > > Attachments: OAK-3529-1.patch, OAK-3529-2.patch, OAK-3529-3.patch > > > For better leveraging cluster oriented algorithm: discovery, atomic > operations; it would be very helpful if the NodeStore could expose a > unique instance id. > This can be the same as a cluster ID. -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Updated] (OAK-3529) NodeStore API should expose an Instance ID
[ https://issues.apache.org/jira/browse/OAK-3529?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Davide Giannella updated OAK-3529: -- Attachment: OAK-3529-2.patch Attaching a [second patch|^OAK-3529-2.patch] that makes {{Oak}} and {{Jcr}} expose the instance id. It will be used during repository constructions for reusing the information in commit hooks for example. > NodeStore API should expose an Instance ID > -- > > Key: OAK-3529 > URL: https://issues.apache.org/jira/browse/OAK-3529 > Project: Jackrabbit Oak > Issue Type: Improvement > Components: core >Reporter: Davide Giannella >Assignee: Davide Giannella > Fix For: 1.4 > > Attachments: OAK-3529-1.patch, OAK-3529-2.patch > > > For better leveraging cluster oriented algorithm: discovery, atomic > operations; it would be very helpful if the NodeStore could expose a > unique instance id. > This can be the same as a cluster ID. -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Updated] (OAK-3529) NodeStore API should expose an Instance ID
[ https://issues.apache.org/jira/browse/OAK-3529?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Davide Giannella updated OAK-3529: -- Attachment: OAK-3529-1.patch > NodeStore API should expose an Instance ID > -- > > Key: OAK-3529 > URL: https://issues.apache.org/jira/browse/OAK-3529 > Project: Jackrabbit Oak > Issue Type: Improvement > Components: core >Reporter: Davide Giannella >Assignee: Davide Giannella > Fix For: 1.4 > > Attachments: OAK-3529-1.patch > > > For better leveraging cluster oriented algorithm: discovery, atomic > operations; it would be very helpful if the NodeStore could expose a > unique instance id. > This can be the same as a cluster ID. -- This message was sent by Atlassian JIRA (v6.3.4#6332)