[jira] [Updated] (OAK-3529) NodeStore API should expose an Instance ID

2015-12-15 Thread Davide Giannella (JIRA)

 [ 
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

2015-12-11 Thread Davide Giannella (JIRA)

 [ 
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

2015-12-11 Thread Davide Giannella (JIRA)

 [ 
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

2015-12-09 Thread Davide Giannella (JIRA)

 [ 
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

2015-12-02 Thread Davide Giannella (JIRA)

 [ 
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

2015-10-20 Thread Davide Giannella (JIRA)

 [ 
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

2015-10-20 Thread Davide Giannella (JIRA)

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