You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@jackrabbit.apache.org by Justin Edelson <ju...@gmail.com> on 2010/07/06 15:26:49 UTC

bit by JCR-1558 - what are valid workarounds?

I got hit by JCR-1558[1] (Namespaces aren't registered on cluster nodes)
and started to look at how Sling could potentially work around this problem.

For those that don't know, in Sling, namespaces can be registered via an
OSGi bundle header (Sling-Namespaces). Namespaces registered in this
fashion are added to the Namespace Registry when a session is requested.
However, as seen in JCR-1558, this is too late - the namespace registry
needs to be populated at the time of workspace initialization. For
Sling, this is an entirely opaque process - we just call
RepositoryImpl.create() and get a Repository.

In this thread: http://markmail.org/message/r66bwh3tkzu46tam, there's
discussion of working around the problem by reregistering the custom
namespaces on node start, but I don't see how that's possible. The only
valid workaround I've found is to manually modify the ns_idx.properties
and ns_reg.properties files manually which doesn't seem like a solution
we would codify in Sling.

Any ideas?

Thanks,

Justin

[1] https://issues.apache.org/jira/browse/JCR-1558

Re: bit by JCR-1558 - what are valid workarounds?

Posted by Thomas Müller <th...@day.com>.
Hi,

I am not completely sure if that solves the problem, but could you try
sharing the repository-level FileSystem between cluster nodes? That
means, configure the first <FileSystem> entry in the repository.xml
(the one directly within the <Repository> element; not the one within
the <Workspace> element) in each cluster node to that it points to the
same file system?

I think clustering documentation at
http://wiki.apache.org/jackrabbit/Clustering is incorrect here. But I
didn't try it myself, so I'm not completely sure it will work. If it
doesn't work, please post the Jackrabbit version you use, the
configuration, and the file listing (of both the shared and the local
files). If it does work, please tell us as well (I will then update
the documentation).

Regards,
Thomas

Re: bit by JCR-1558 - what are valid workarounds?

Posted by Justin Edelson <ju...@gmail.com>.
*bump*

Surely I can't be the only one who uses custom namespaces and clustering
together?

On Tue, Jul 6, 2010 at 9:26 AM, Justin Edelson <ju...@gmail.com>wrote:

> I got hit by JCR-1558[1] (Namespaces aren't registered on cluster nodes)
> and started to look at how Sling could potentially work around this
> problem.
>
> For those that don't know, in Sling, namespaces can be registered via an
> OSGi bundle header (Sling-Namespaces). Namespaces registered in this
> fashion are added to the Namespace Registry when a session is requested.
> However, as seen in JCR-1558, this is too late - the namespace registry
> needs to be populated at the time of workspace initialization. For
> Sling, this is an entirely opaque process - we just call
> RepositoryImpl.create() and get a Repository.
>
> In this thread: http://markmail.org/message/r66bwh3tkzu46tam, there's
> discussion of working around the problem by reregistering the custom
> namespaces on node start, but I don't see how that's possible. The only
> valid workaround I've found is to manually modify the ns_idx.properties
> and ns_reg.properties files manually which doesn't seem like a solution
> we would codify in Sling.
>
> Any ideas?
>
> Thanks,
>
> Justin
>
> [1] https://issues.apache.org/jira/browse/JCR-1558
>