You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@jackrabbit.apache.org by "Stefan Guggisberg (JIRA)" <ji...@apache.org> on 2007/02/08 11:22:05 UTC

[jira] Commented: (JCR-322) Support node type modification and removal

    [ https://issues.apache.org/jira/browse/JCR-322?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_12471262 ] 

Stefan Guggisberg commented on JCR-322:
---------------------------------------

anton, thanks for the patch and your efforts, very much appreciated!

my main concerns wrt your patch are:

1. concurrency: i don't agree with your analysis. not all perrsistence operations are invoked through Item.save(). workspace operations e.g. don't call Item.save(). furthermore, sync'ing Item.save() on the Repository instance is not an option since this would severely impact concurrency through heavy nmonitor contention. what we'd really need to do is apply deep locks on root nodes in every workspace or alternatively put repository in 'exclusive' or 'single-user' mode, as mentioned in javadoc.

2. exposing RepositoryImpl.getSystemSession() is, for obvious reasons, not an option. 

3. you removed the call to getDependentNodeTypes(). note that inter-node type dependencies are not limited to node type inheritance. see http://jackrabbit.apache.org/api-1/org/apache/jackrabbit/core/nodetype/NodeTypeDef.html#getDependencies() for an explanation.

cheers
stefan

> Support node type modification and removal
> ------------------------------------------
>
>                 Key: JCR-322
>                 URL: https://issues.apache.org/jira/browse/JCR-322
>             Project: Jackrabbit
>          Issue Type: New Feature
>          Components: nodetype
>    Affects Versions: 0.9, 1.0
>            Reporter: Jukka Zitting
>         Attachments: nodetyperegistry.patch
>
>
> There is currently no way to modify or remove registered node types. The existing reregister and unregister methods in NodeTypeRegistry  throw "not yet implemented" exceptions for anything else than trivial node type changes.
> JSR 283 is working on an node type management API that we should ultimately implement.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.