You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@jackrabbit.apache.org by Dean Jones <de...@gmail.com> on 2009/10/15 17:39:34 UTC

Clustering and FileSystems

Hello folks,

I suspect this is almost a FAQ by now, as I see from the archives that
the topic has come up a couple of times, but I can't quite work out the
definitive answer to my question.

Basically, the wiki page on clustering says that: "each cluster
node needs its own (private) FileSystem and Search index." I'm fine
with the private Search index, but this leads me to think that our
configuration, where we have all nodes in the cluster using a shared
DB FileSystem, is wrong, and that they should instead be using a
LocalFileSystem, which would not be on a networked file system. I'd be
very grateful if someone could either confirm or deny this suspicion
before I switch to using a LocalFileSystem. If I do need to switch to
a LocalFileSystem, is there anything that I should be aware of?
Particularly, can the LocalFileSystem easily be recreated (e.g. by
re-registering node types, namespaces, etc) if it is deleted? Without
invalidating existing content?

Many thanks for any help,

Dean.

Re: Clustering and FileSystems

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

> The DBFileSystem should never be shared, afaik.

I wouldn't say "never". I would say "generally, file system shouldn't
be shared".

You can also create a private (non-shared) DbFileSystem if you use a
different schemaObjectPrefix for each cluster node. You don't need a
LocalFileSystem.

> If I do need to switch to a LocalFileSystem

You don't need to.

> can the LocalFileSystem easily be recreated (e.g. by re-registering node types, namespaces, etc) if it is deleted? Without invalidating existing content?

Yes. For example you could copy the files from another cluster node
that is still running.

Regards,
Thomas

Re: Clustering and FileSystems

Posted by Dean Jones <de...@gmail.com>.
Hi Alex,

On Fri, Oct 16, 2009 at 3:06 PM, Alexander Klimetschek <ak...@day.com> wrote:
> On Fri, Oct 16, 2009 at 15:27, Dean Jones <de...@gmail.com> wrote:
>
> Where did you get the information that the journal depends on the
> FileSystem? And node types?
>

I'm going off the Javadoc here:

http://jackrabbit.apache.org/api/1.5/org/apache/jackrabbit/core/journal/DatabaseJournal.RevisionTableJanitor.html

Specifically: "Class for maintaining the revision table. This is only
useful if all JR information except the search index is in the
database (i.e., node types etc). In that case, revision data can
safely be thrown away from the JOURNAL table."

I interpret this to mean that the node types need to be in the
database; is that right?

> The FileSystem is a legacy component that is (was) used only by
> certain persistence managers.
>

I thought that, irrespective of the persistance manager, the
repository still needs a FileSystem for storing namespaces and node
type definitions, no?

Dean.

Re: Clustering and FileSystems

Posted by Alexander Klimetschek <ak...@day.com>.
On Fri, Oct 16, 2009 at 15:27, Dean Jones <de...@gmail.com> wrote:
> Thanks for the info Alex. One thing that concerns me about switching
> to a LocalFileSystem is that I have the
> DatabaseJournal.RevisionTableJanitor enabled, to clean the journal DB
> tables. The Javadoc for this class states:
>
> "Class for maintaining the revision table. This is only useful if all
> JR information except the search index is in the database (i.e., node
> types etc). In that case, revision data can safely be thrown away from
> the JOURNAL table."
>
> If I switch to using a LocalFileSystem, then file system information
> about node types etc is no longer being stored in the database; do you
> know if this will break the RevisionTableJanitor ?

Where did you get the information that the journal depends on the
FileSystem? And node types?

The FileSystem is a legacy component that is (was) used only by
certain persistence managers.

Regards,
Alex

-- 
Alexander Klimetschek
alexander.klimetschek@day.com

Re: Clustering and FileSystems

Posted by Dean Jones <de...@gmail.com>.
On Fri, Oct 16, 2009 at 12:56 PM, Alexander Klimetschek
<ak...@day.com> wrote:
>
> The lucene search index will always use the os file system directly
> ("index" subdirectory of the workspace) and does not depend on the
> Jackrabbit FileSystem config.
>
> The DBFileSystem should never be shared, afaik. Use a LocalFileSystem.
>
> See also http://markmail.org/message/kt4z2oveid2ys5qr
>

Thanks for the info Alex. One thing that concerns me about switching
to a LocalFileSystem is that I have the
DatabaseJournal.RevisionTableJanitor enabled, to clean the journal DB
tables. The Javadoc for this class states:

"Class for maintaining the revision table. This is only useful if all
JR information except the search index is in the database (i.e., node
types etc). In that case, revision data can safely be thrown away from
the JOURNAL table."

If I switch to using a LocalFileSystem, then file system information
about node types etc is no longer being stored in the database; do you
know if this will break the RevisionTableJanitor ?

Dean.

Re: Clustering and FileSystems

Posted by Alexander Klimetschek <ak...@day.com>.
On Thu, Oct 15, 2009 at 17:39, Dean Jones <de...@gmail.com> wrote:
> Hello folks,
>
> I suspect this is almost a FAQ by now, as I see from the archives that
> the topic has come up a couple of times, but I can't quite work out the
> definitive answer to my question.
>
> Basically, the wiki page on clustering says that: "each cluster
> node needs its own (private) FileSystem and Search index." I'm fine
> with the private Search index, but this leads me to think that our
> configuration, where we have all nodes in the cluster using a shared
> DB FileSystem, is wrong, and that they should instead be using a
> LocalFileSystem, which would not be on a networked file system. I'd be
> very grateful if someone could either confirm or deny this suspicion
> before I switch to using a LocalFileSystem. If I do need to switch to
> a LocalFileSystem, is there anything that I should be aware of?
> Particularly, can the LocalFileSystem easily be recreated (e.g. by
> re-registering node types, namespaces, etc) if it is deleted? Without
> invalidating existing content?

The lucene search index will always use the os file system directly
("index" subdirectory of the workspace) and does not depend on the
Jackrabbit FileSystem config.

The DBFileSystem should never be shared, afaik. Use a LocalFileSystem.

See also http://markmail.org/message/kt4z2oveid2ys5qr

Regards,
Alex

-- 
Alexander Klimetschek
alexander.klimetschek@day.com

----------------------------< alexander.klimetschek@day.com >----------
Alexander Klimetschek, Day Management AG, Barfuesserplatz 6,
CH - 4001 Basel, T +41 61 226 55 31, M +49 151 15 77 20 56
---------------------------------------< http://www.day.com >-----------------

Twitter: http://twitter.com/daysoftware

Xing: http://www.xing.com/go/invite/3268380.32d2d4
LinkedIn: http://www.linkedin.com/in/klimetschek
Blog: http://weblogs.goshaky.com/weblogs/alexkli/