Hi Ian,

On Fri, 2015-10-30 at 15:38 +0000, Ian Boston wrote:
> Hi,
> I am trying to enhance a multiplexing document store written
> initially by
> Robert Munteanu to support multiplexing of content under
> /jcr:system/** in
> particular the version store and the permissions store. I have a
> scheme
> that should theoretically work, encoding the target store in the
> entry name
> of the map key.
> 
> However, it seems that DocumentNodeState (and hence
> DocumentNodeBuilder)
> objects created by a DocumentNodeStore get a reference to that
> DocumentNodeStore, bypassing any multiplexing document node store.
> This is
> all ok if all the calls relate to content in the same
> DocumentNodeStore,
> but as soon as anything performs a call into DocumentNodeStore that
> relates
> to a path not within that DocumentNodeStore the multiplexing breaks
> down.
> Code that reads and writes to /jcr:system/** does this.
> 
> I have tried hacking the code to ensure that the reference to
> DocumentNodeStore is replaced by the MultiplexingDocumentNodeStore,
> however
> when I do that, MultiplexingDocumentNodeStore gets calls that have
> insufficient context to route to the correct DocumentNodeStore. I
> could
> hack some more, but if I do, anything that works is unlikely to be
> acceptable to Oak as a patch.

Well, I can relate, as the DocumentStore multiplexing implementation
does have to be a little creative at times to find out the proper
store.

Could you list (some of) the places where the
MultiplexingDocumentNodeStore does not have enough information to know
where to route the operation? Might be helpful as a starting point.

Thanks,

Robert

Reply via email to