You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@jackrabbit.apache.org by amsmota <am...@gmail.com> on 2008/05/06 11:56:09 UTC

Use of diferent or same schemaObjectPrefixes

I notice that if I have different schemaObjectPrefix for 

A) Repository/FileSystem -> 1 table
B) Repository/Workspace/FileSystem -> 1 table
C) Repository/Workspace/PersistenceManager -> 4 tables
D) Repository/Versioning/FileSystem -> 1 table
E) Repository/Versioning/PersistenceManager -> 4 tables

A, B, D -> *fsentry
C, E -> *binval, *node, *prop, *refs

I end up with 11 tables. If I use a common schemaObjectPrefix (or if I use
the schemaObjectPrefix  to configure my schema, see 
http://www.nabble.com/Using-diferent-database-schemas-td16993168.html here )
I only get 5 tables.

Now what I want top know is what was the rationale behind the implementation
of this (optionally) different schemaObjectPrefix's. Is just a question of
housekeeping, to properly identify the different types of repository, to
prevent the tables getting to big? Or is there a more "profound" reason?

I need to know this to go ahead with the use of schemaObjectPrefix to define
my database schema or not.

Thanks all.




-- 
View this message in context: http://www.nabble.com/Use-of-diferent-or-same-schemaObjectPrefixes-tp17079492p17079492.html
Sent from the Jackrabbit - Users mailing list archive at Nabble.com.


Re: Use of diferent or same schemaObjectPrefixes

Posted by Stefan Guggisberg <st...@day.com>.
On Tue, May 13, 2008 at 3:25 PM, amsmota <am...@gmail.com> wrote:
>
>  Hmm, actually I never looked at the BundleDbPersistenceManager, can you
>  elaborate a little on what it does and why is preferred over
>  DatabasePersistenceManager?

BundleDbPersistenceManager is the current default persistence manager.
instead of storing every node and property separately (like
SimpleDbPersistenceManager does)  it stores a 'bundle' of the node and its
properties in a single table row, thus significantly reducing
network-roundtrips.

cheers
stefan

>
>  Thanks.
>
>
>
>
>
>  Stefan Guggisberg-2 wrote:
>  >
>  > On Thu, May 8, 2008 at 6:33 PM, amsmota <am...@gmail.com> wrote:
>  >>
>  >> The reason I'm asking this is because I see that exists 4 sets of .ddl in
>  >> the
>  >> application, and I changed only 2, corresponding to the
>  >> DatabaseFileSystem /
>  >> DatabasePersistenceManager. What are this other 2 for?
>  >>
>  >> org.apache.jackrabbit.core.journal
>  >
>  > those are used by  o.a.j.c.journal.DatabaseJournal. if you'e not using the
>  > clustering feature you don't have to care.
>  >
>  >> org.apache.jackrabbit.core.persistence.bundle
>  >
>  > those are used by o.a.j.c.persistence.bundle.BundleDbPersistenceManager
>  > and
>  > subclasses which are the (preferred) alternatives to
>  > DatabasePersistenceManager
>  > and subclasses.
>  >
>  > cheers
>  > stefan
>  >
>  >>
>  >>
>  >>
>  >> amsmota wrote:
>  >>>
>  >>> Do I have to be aware of other possible clashes besides
>  >>> DatabaseFileSystem
>  >>> / DatabasePersistenceManager ?
>  >>>
>  >>
>  >> --
>  >> View this message in context:
>  >> http://www.nabble.com/Use-of-diferent-or-same-schemaObjectPrefixes-tp17079492p17128109.html
>  >> Sent from the Jackrabbit - Users mailing list archive at Nabble.com.
>  >>
>  >>
>  >
>  >
>
>  --
>  View this message in context: http://www.nabble.com/Use-of-diferent-or-same-schemaObjectPrefixes-tp17079492p17208371.html
>
>
> Sent from the Jackrabbit - Users mailing list archive at Nabble.com.
>
>

Re: Use of diferent or same schemaObjectPrefixes

Posted by amsmota <am...@gmail.com>.
Hmm, actually I never looked at the BundleDbPersistenceManager, can you
elaborate a little on what it does and why is preferred over
DatabasePersistenceManager?

Thanks.



Stefan Guggisberg-2 wrote:
> 
> On Thu, May 8, 2008 at 6:33 PM, amsmota <am...@gmail.com> wrote:
>>
>> The reason I'm asking this is because I see that exists 4 sets of .ddl in
>> the
>> application, and I changed only 2, corresponding to the
>> DatabaseFileSystem /
>> DatabasePersistenceManager. What are this other 2 for?
>>
>> org.apache.jackrabbit.core.journal
> 
> those are used by  o.a.j.c.journal.DatabaseJournal. if you'e not using the
> clustering feature you don't have to care.
> 
>> org.apache.jackrabbit.core.persistence.bundle
> 
> those are used by o.a.j.c.persistence.bundle.BundleDbPersistenceManager
> and
> subclasses which are the (preferred) alternatives to
> DatabasePersistenceManager
> and subclasses.
> 
> cheers
> stefan
> 
>>
>>
>>
>> amsmota wrote:
>>>
>>> Do I have to be aware of other possible clashes besides
>>> DatabaseFileSystem
>>> / DatabasePersistenceManager ?
>>>
>>
>> --
>> View this message in context:
>> http://www.nabble.com/Use-of-diferent-or-same-schemaObjectPrefixes-tp17079492p17128109.html
>> Sent from the Jackrabbit - Users mailing list archive at Nabble.com.
>>
>>
> 
> 

-- 
View this message in context: http://www.nabble.com/Use-of-diferent-or-same-schemaObjectPrefixes-tp17079492p17208371.html
Sent from the Jackrabbit - Users mailing list archive at Nabble.com.


Re: Use of diferent or same schemaObjectPrefixes

Posted by Stefan Guggisberg <st...@day.com>.
On Thu, May 8, 2008 at 6:33 PM, amsmota <am...@gmail.com> wrote:
>
> The reason I'm asking this is because I see that exists 4 sets of .ddl in the
> application, and I changed only 2, corresponding to the DatabaseFileSystem /
> DatabasePersistenceManager. What are this other 2 for?
>
> org.apache.jackrabbit.core.journal

those are used by  o.a.j.c.journal.DatabaseJournal. if you'e not using the
clustering feature you don't have to care.

> org.apache.jackrabbit.core.persistence.bundle

those are used by o.a.j.c.persistence.bundle.BundleDbPersistenceManager and
subclasses which are the (preferred) alternatives to DatabasePersistenceManager
and subclasses.

cheers
stefan

>
>
>
> amsmota wrote:
>>
>> Do I have to be aware of other possible clashes besides DatabaseFileSystem
>> / DatabasePersistenceManager ?
>>
>
> --
> View this message in context: http://www.nabble.com/Use-of-diferent-or-same-schemaObjectPrefixes-tp17079492p17128109.html
> Sent from the Jackrabbit - Users mailing list archive at Nabble.com.
>
>

Re: Use of diferent or same schemaObjectPrefixes

Posted by amsmota <am...@gmail.com>.
The reason I'm asking this is because I see that exists 4 sets of .ddl in the
application, and I changed only 2, corresponding to the DatabaseFileSystem /
DatabasePersistenceManager. What are this other 2 for?

org.apache.jackrabbit.core.journal
org.apache.jackrabbit.core.persistence.bundle



amsmota wrote:
> 
> Do I have to be aware of other possible clashes besides DatabaseFileSystem
> / DatabasePersistenceManager ?
> 

-- 
View this message in context: http://www.nabble.com/Use-of-diferent-or-same-schemaObjectPrefixes-tp17079492p17128109.html
Sent from the Jackrabbit - Users mailing list archive at Nabble.com.


Re: Use of diferent or same schemaObjectPrefixes

Posted by amsmota <am...@gmail.com>.
Ok, different schemaObjectPrefix it is.

Do I have to be aware of other possible clashes besides DatabaseFileSystem /
DatabasePersistenceManager ?

Cheers.



Stefan Guggisberg-2 wrote:
> 
> 
> every DatabaseFileSystem and DatabasePersistenceManager instance that uses
> a shared db absolutely *needs* to specify a unique schemaObjectPrefix
> value.
> failing to do so will most probably lead to data corruption.
> 
> 

-- 
View this message in context: http://www.nabble.com/Use-of-diferent-or-same-schemaObjectPrefixes-tp17079492p17104806.html
Sent from the Jackrabbit - Users mailing list archive at Nabble.com.


Re: Use of diferent or same schemaObjectPrefixes

Posted by Stefan Guggisberg <st...@day.com>.
On Tue, May 6, 2008 at 11:56 AM, amsmota <am...@gmail.com> wrote:
>
>  I notice that if I have different schemaObjectPrefix for
>
>  A) Repository/FileSystem -> 1 table
>  B) Repository/Workspace/FileSystem -> 1 table
>  C) Repository/Workspace/PersistenceManager -> 4 tables
>  D) Repository/Versioning/FileSystem -> 1 table
>  E) Repository/Versioning/PersistenceManager -> 4 tables
>
>  A, B, D -> *fsentry
>  C, E -> *binval, *node, *prop, *refs
>
>  I end up with 11 tables. If I use a common schemaObjectPrefix (or if I use
>  the schemaObjectPrefix  to configure my schema, see
>  http://www.nabble.com/Using-diferent-database-schemas-td16993168.html here )
>  I only get 5 tables.
>
>  Now what I want top know is what was the rationale behind the implementation
>  of this (optionally) different schemaObjectPrefix's. Is just a question of
>  housekeeping, to properly identify the different types of repository, to
>  prevent the tables getting to big? Or is there a more "profound" reason?

every DatabaseFileSystem and DatabasePersistenceManager instance that uses
a shared db absolutely *needs* to specify a unique schemaObjectPrefix value.
failing to do so will most probably lead to data corruption.

an example:

api-level locks are currently persisted in the workspace FileSystem. multiple
wokspaces using identical schemaObjectPefix values could therefore potentially
overwrite/corrupt each others locks files.

cheers
stefan

>
>  I need to know this to go ahead with the use of schemaObjectPrefix to define
>  my database schema or not.
>
>  Thanks all.
>
>
>
>
>  --
>  View this message in context: http://www.nabble.com/Use-of-diferent-or-same-schemaObjectPrefixes-tp17079492p17079492.html
>  Sent from the Jackrabbit - Users mailing list archive at Nabble.com.
>
>