AnsweredAssumed Answered

Cascaded metadata (example HiddenAspect behaviour) recursively

Question asked by jamen on Mar 15, 2013

I'm currently looking into responding to some business requirements likely requiring cascading metadata from a parent node to child nodes recursively.  I'm having a look at the org.alfresco.repo.model.filefolder.HiddenAspect class in Alfresco 4.1.1E.  It occurs to me that there are a few assumptions that must be at play (it would be good if this can be confirmed):-
1. That the change set can't be too large
2. That this doesn't factor in nodes that could be locked or have the working copy aspect applied or other policy driven behaviour that could be fired

Has anyone dealt with large scale meta-data cascading requirements with Alfresco?  The things of consideration I have immediately are:-
* How to manage large change sets (e.g. if you wanted to cascade meta-data from a root folder with potentially hundreds of thousands of documents.  One example would be say marking all documents in a node to be subject to be a candidate for publishing to an external data source (say an index) as in the HiddenAspect class
* How to manage processing of the data set (considering that the application could possibly be killed mid execution - e.g if the application died).  A queuing mechanism would probably be desirable that is recoverable
* How to manage model driven policy behaviour that could fire (e.g. autoversioning, auditiable properties)
* Need to spawn NonPropagatingUserTransaction's for node updates
* Other

To facilitate this one thought is to have a MetadataCascadingService, but this is just an initial thought.

Given the above, it's not really feasible to use content rules, however policy behaviour will be required to manage aspects of the above I would envisage.

Does anyone else have an interest in this or have any ideas on limitations in the repository stack.  I am likely to raise a ticket to support in light of potential limitations in large data sets.  However it would be interesting to see what thoughts other developers/architects may have.