jackrabbit-oak-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Tomek Rękawek (JIRA) <j...@apache.org>
Subject [jira] [Commented] (OAK-6445) Ensure mounted node stores don't contain versionable nodes
Date Thu, 27 Jul 2017 06:41:00 GMT

    [ https://issues.apache.org/jira/browse/OAK-6445?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16102792#comment-16102792
] 

Tomek Rękawek commented on OAK-6445:
------------------------------------

[~rombert] - maybe we can be more general here and check whether there are no cross-mount
references? It'll cover the versionables (as creating a versionable creates a reference between
version storage and the node) and other unsupported cases. It'd be good to re-use CrossMountReferenceValidator
to do this, sth like:

{code}
boolean failOnDetection = true;
NodeState root = compositeNodeStore.getRoot();
new EditorHook(() -> new CrossMountReferenceValidator(root, mip, failOnDetection)).processCommit(EmptyNodeState.EMPTY_NODE,
root);
{code}

Also, I thought that we may create some mechanism to check if the mount configuration has
changed and perform the test only then (as it may be a bit long). Eg. we may give each node
store an unique id (eg. {{/:composite-id}}), save the mount name->id mapping locally (whatever
this means) and check if it didn't changed during the CompositeNodeStore creation. Other tests
can reuse this.

About saving the mapping locally, I see a few options:

* static file inside the repository dir,
* OSGi configuration,
* local segment store, meant to save metadata (eg. composite node store may require creating
a segment node store with role = composite-metadata).

WDYT?

> Ensure mounted node stores don't contain versionable nodes
> ----------------------------------------------------------
>
>                 Key: OAK-6445
>                 URL: https://issues.apache.org/jira/browse/OAK-6445
>             Project: Jackrabbit Oak
>          Issue Type: Sub-task
>          Components: composite
>            Reporter: Robert Munteanu
>            Assignee: Robert Munteanu
>             Fix For: 1.8, 1.7.5
>
>
> Since versioning does not work with the CompositeNodeStore mounts, we should validate
that no versionable nodes exist at mount time.



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)

Mime
View raw message