You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@jackrabbit.apache.org by Etile Basson <et...@googlemail.com> on 2010/11/05 09:52:03 UTC

Re: Problem with Clustering Setup (PostgreSQL)

Hi there,

just want to thank Thomas and Justin for their worthful hints. I managed to
get the jackrabbit cluster up and running with PostgreSQL. Please find my
repository.xml below this text. Do you want me to attach it to the
corresponding wiki page? It think that it might serve as a good example for
anyone who wants to use clustering with PostgreSQL.

--snip--
<?xml version="1.0"?>
<!DOCTYPE Repository PUBLIC "-//The Apache Software Foundation//DTD
Jackrabbit 1.2//EN"
                            "
http://jackrabbit.apache.org/dtd/repository-1.2.dtd">
<Repository>
    <Cluster>
        <Journal class="org.apache.jackrabbit.core.journal.DatabaseJournal">
            <param name="revision" value="${rep.home}/revision.log" />
            <param name="driver" value="org.postgresql.Driver" />
            <param name="url" value="${jackrabbit.repository.url}" />
            <param name="user" value="${jackrabbit.repository.user}" />
            <param name="password" value="${jackrabbit.repository.password}"
/>
            <param name="schema" value="postgresql"/>
            <param name="schemaObjectPrefix" value="J_C_"/>
        </Journal>
    </Cluster>

    <FileSystem class="org.apache.jackrabbit.core.fs.local.LocalFileSystem">
        <param name="path" value="${rep.home}/repository"/>
    </FileSystem>

    <Security appName="Jackrabbit">
        <AccessManager
class="org.apache.jackrabbit.core.security.SimpleAccessManager">
        </AccessManager>

        <LoginModule
class="org.apache.jackrabbit.core.security.SimpleLoginModule">
           <param name="anonymousId" value="anonymous"/>
        </LoginModule>
    </Security>

    <Workspaces rootPath="${rep.home}/workspaces"
defaultWorkspace="default"/>

    <Workspace name="${wsp.name}">
        <FileSystem
class="org.apache.jackrabbit.core.fs.local.LocalFileSystem">
            <param name="path" value="${wsp.home}/filesystem"/>
        </FileSystem>

        <PersistenceManager
class="org.apache.jackrabbit.core.state.db.SimpleDbPersistenceManager">
            <param name="driver" value="org.postgresql.Driver" />
        <param name="url" value="${jackrabbit.repository.url}" />
            <param name="user" value="${jackrabbit.repository.user}" />
            <param name="password" value="${jackrabbit.repository.password}"
/>
            <param name="schema" value="postgresql"/>
            <param name="schemaObjectPrefix" value="J_PM_${wsp.name}_" />
            <param name="externalBLOBs" value="false" />
        </PersistenceManager>

        <SearchIndex
class="org.apache.jackrabbit.core.query.lucene.SearchIndex">
            <param name="path" value="${wsp.home}/index"/>
        </SearchIndex>
    </Workspace>

    <Versioning rootPath="${rep.home}/version">
        <FileSystem
class="org.apache.jackrabbit.core.fs.local.LocalFileSystem">
            <param name="path" value="${rep.home}/version" />
        </FileSystem>

        <PersistenceManager
class="org.apache.jackrabbit.core.state.db.SimpleDbPersistenceManager">
            <param name="driver" value="org.postgresql.Driver" />
        <param name="url" value="${jackrabbit.repository.url}" />
            <param name="user" value="${jackrabbit.repository.user}" />
            <param name="password" value="${jackrabbit.repository.password}"
/>
            <param name="schema" value="postgresql"/>
            <param name="schemaObjectPrefix" value="J_V_PM_" />
            <param name="externalBLOBs" value="false" />
        </PersistenceManager>
    </Versioning>

    <SearchIndex
class="org.apache.jackrabbit.core.query.lucene.SearchIndex">
        <param name="path" value="${rep.home}/repository/index"/>
    </SearchIndex>
</Repository>
--snap--

Regards,
Etile

On Thu, Oct 28, 2010 at 4:51 PM, Sergiy Shyrkov <my.public.mailing@gmail.com
> wrote:

> Thank you for the prompt reply!
>
> Kind regards
> Sergiy
>
>
> On 28.10.2010 16:32, Thomas Müller wrote:
>
>> Hi,
>>
>>  Could you, please, give me some hints if there are any advantages in
>>> using
>>> DatabaseFileSystem compared to LocalFileSystem?
>>>
>> Yes, in my view LocalFileSystem is appropriate. Only config files are
>> stored in the FileSystem, no user data. LocalFileSystem is easier to
>> use and configure. Some people may want to avoid creating files in the
>> file system, so they can use a database FileSystem.
>>
>>  I assume, the information about clustering configuration
>>> (http://wiki.apache.org/jackrabbit/Clustering ) is also valid for
>>> Jackarabbit 2.1.x/2.2.x. Is it correct?
>>>
>> Yes.
>>
>> Regards,
>> Thomas
>>
>
>

Re: Problem with Clustering Setup (PostgreSQL)

Posted by Justin Edelson <ju...@justinedelson.com>.
Writing to these resources should be relatively rare, but YMMV,
obviously...


On 11/5/10 1:14 PM, "Sergiy Shyrkov" <my...@gmail.com> wrote:

>Hello Justin,
>
>I am not sure NFS is a good option here as I see no way how the locking
>and concurrent access is working from several nodes to single file
>system location.
>I was always skeptical about sharing NFS resources for multiple nodes to
>write/read, unless a locking is implemented (e.g. like Apache Lucene
>does).
>Or I am missing here something and there is no concurrent access to
>these resources?
>
>Thank you in advance!
>
>Kind regards
>Sergiy
>
>On 05.11.2010 17:56, Justin Edelson wrote:
>> It could be an instance of LocalFileSystem, if the file system pointed
>>to
>> was shared by, for example, NFS or CIFS.
>>
>> But DbFileSystem is another way to do that.
>>
>> Justin
>>
>> On 11/5/10 12:22 PM, "Sergiy Shyrkov"<my...@gmail.com>
>>wrote:
>>
>>> Hello Etile,
>>>
>>> if I correctly understood the discussion and explanations in this
>>> thread, the repository-level file system should be shared in cluster,
>>> meaning it cannot be an instance of LocalFileSystem like in your case.
>>> It should rather be DbFileSystem.
>>> Am I right?
>>>
>>> Kind regards
>>> Sergiy
>>>
>>> On 05.11.2010 09:52, Etile Basson wrote:
>>>> Hi there,
>>>>
>>>> just want to thank Thomas and Justin for their worthful hints. I
>>>> managed to
>>>> get the jackrabbit cluster up and running with PostgreSQL. Please find
>>>> my
>>>> repository.xml below this text. Do you want me to attach it to the
>>>> corresponding wiki page? It think that it might serve as a good
>>>>example
>>>> for
>>>> anyone who wants to use clustering with PostgreSQL.
>>>>
>>>> --snip--
>>>> <?xml version="1.0"?>
>>>> <!DOCTYPE Repository PUBLIC "-//The Apache Software Foundation//DTD
>>>> Jackrabbit 1.2//EN"
>>>>                               "
>>>> http://jackrabbit.apache.org/dtd/repository-1.2.dtd">
>>>> <Repository>
>>>>       <Cluster>
>>>>           <Journal
>>>> class="org.apache.jackrabbit.core.journal.DatabaseJournal">
>>>>               <param name="revision" value="${rep.home}/revision.log"
>>>>/>
>>>>               <param name="driver" value="org.postgresql.Driver" />
>>>>               <param name="url" value="${jackrabbit.repository.url}"
>>>>/>
>>>>               <param name="user"
>>>>value="${jackrabbit.repository.user}" />
>>>>               <param name="password"
>>>> value="${jackrabbit.repository.password}"
>>>> />
>>>>               <param name="schema" value="postgresql"/>
>>>>               <param name="schemaObjectPrefix" value="J_C_"/>
>>>>           </Journal>
>>>>       </Cluster>
>>>>
>>>>       <FileSystem
>>>> class="org.apache.jackrabbit.core.fs.local.LocalFileSystem">
>>>>           <param name="path" value="${rep.home}/repository"/>
>>>>       </FileSystem>
>>>>
>>>>       <Security appName="Jackrabbit">
>>>>           <AccessManager
>>>> class="org.apache.jackrabbit.core.security.SimpleAccessManager">
>>>>           </AccessManager>
>>>>
>>>>           <LoginModule
>>>> class="org.apache.jackrabbit.core.security.SimpleLoginModule">
>>>>              <param name="anonymousId" value="anonymous"/>
>>>>           </LoginModule>
>>>>       </Security>
>>>>
>>>>       <Workspaces rootPath="${rep.home}/workspaces"
>>>> defaultWorkspace="default"/>
>>>>
>>>>       <Workspace name="${wsp.name}">
>>>>           <FileSystem
>>>> class="org.apache.jackrabbit.core.fs.local.LocalFileSystem">
>>>>               <param name="path" value="${wsp.home}/filesystem"/>
>>>>           </FileSystem>
>>>>
>>>>           <PersistenceManager
>>>> 
>>>>class="org.apache.jackrabbit.core.state.db.SimpleDbPersistenceManager">
>>>>               <param name="driver" value="org.postgresql.Driver" />
>>>>           <param name="url" value="${jackrabbit.repository.url}" />
>>>>               <param name="user"
>>>>value="${jackrabbit.repository.user}" />
>>>>               <param name="password"
>>>> value="${jackrabbit.repository.password}"
>>>> />
>>>>               <param name="schema" value="postgresql"/>
>>>>               <param name="schemaObjectPrefix"
>>>>value="J_PM_${wsp.name}_"
>>>> />
>>>>               <param name="externalBLOBs" value="false" />
>>>>           </PersistenceManager>
>>>>
>>>>           <SearchIndex
>>>> class="org.apache.jackrabbit.core.query.lucene.SearchIndex">
>>>>               <param name="path" value="${wsp.home}/index"/>
>>>>           </SearchIndex>
>>>>       </Workspace>
>>>>
>>>>       <Versioning rootPath="${rep.home}/version">
>>>>           <FileSystem
>>>> class="org.apache.jackrabbit.core.fs.local.LocalFileSystem">
>>>>               <param name="path" value="${rep.home}/version" />
>>>>           </FileSystem>
>>>>
>>>>           <PersistenceManager
>>>> 
>>>>class="org.apache.jackrabbit.core.state.db.SimpleDbPersistenceManager">
>>>>               <param name="driver" value="org.postgresql.Driver" />
>>>>           <param name="url" value="${jackrabbit.repository.url}" />
>>>>               <param name="user"
>>>>value="${jackrabbit.repository.user}" />
>>>>               <param name="password"
>>>> value="${jackrabbit.repository.password}"
>>>> />
>>>>               <param name="schema" value="postgresql"/>
>>>>               <param name="schemaObjectPrefix" value="J_V_PM_" />
>>>>               <param name="externalBLOBs" value="false" />
>>>>           </PersistenceManager>
>>>>       </Versioning>
>>>>
>>>>       <SearchIndex
>>>> class="org.apache.jackrabbit.core.query.lucene.SearchIndex">
>>>>           <param name="path" value="${rep.home}/repository/index"/>
>>>>       </SearchIndex>
>>>> </Repository>
>>>> --snap--
>>>>
>>>> Regards,
>>>> Etile
>>>>
>>>> On Thu, Oct 28, 2010 at 4:51 PM, Sergiy
>>>> Shyrkov<my.public.mailing@gmail.com
>>>>> wrote:
>>>>> Thank you for the prompt reply!
>>>>>
>>>>> Kind regards
>>>>> Sergiy
>>>>>
>>>>>
>>>>> On 28.10.2010 16:32, Thomas Müller wrote:
>>>>>
>>>>>> Hi,
>>>>>>
>>>>>>    Could you, please, give me some hints if there are any
>>>>>>advantages in
>>>>>>> using
>>>>>>> DatabaseFileSystem compared to LocalFileSystem?
>>>>>>>
>>>>>> Yes, in my view LocalFileSystem is appropriate. Only config files
>>>>>>are
>>>>>> stored in the FileSystem, no user data. LocalFileSystem is easier to
>>>>>> use and configure. Some people may want to avoid creating files in
>>>>>>the
>>>>>> file system, so they can use a database FileSystem.
>>>>>>
>>>>>>    I assume, the information about clustering configuration
>>>>>>> (http://wiki.apache.org/jackrabbit/Clustering ) is also valid for
>>>>>>> Jackarabbit 2.1.x/2.2.x. Is it correct?
>>>>>>>
>>>>>> Yes.
>>>>>>
>>>>>> Regards,
>>>>>> Thomas
>>>>>>
>>
>



Re: Problem with Clustering Setup (PostgreSQL)

Posted by Sergiy Shyrkov <my...@gmail.com>.
Hello Justin,

I am not sure NFS is a good option here as I see no way how the locking 
and concurrent access is working from several nodes to single file 
system location.
I was always skeptical about sharing NFS resources for multiple nodes to 
write/read, unless a locking is implemented (e.g. like Apache Lucene does).
Or I am missing here something and there is no concurrent access to 
these resources?

Thank you in advance!

Kind regards
Sergiy

On 05.11.2010 17:56, Justin Edelson wrote:
> It could be an instance of LocalFileSystem, if the file system pointed to
> was shared by, for example, NFS or CIFS.
>
> But DbFileSystem is another way to do that.
>
> Justin
>
> On 11/5/10 12:22 PM, "Sergiy Shyrkov"<my...@gmail.com>  wrote:
>
>> Hello Etile,
>>
>> if I correctly understood the discussion and explanations in this
>> thread, the repository-level file system should be shared in cluster,
>> meaning it cannot be an instance of LocalFileSystem like in your case.
>> It should rather be DbFileSystem.
>> Am I right?
>>
>> Kind regards
>> Sergiy
>>
>> On 05.11.2010 09:52, Etile Basson wrote:
>>> Hi there,
>>>
>>> just want to thank Thomas and Justin for their worthful hints. I
>>> managed to
>>> get the jackrabbit cluster up and running with PostgreSQL. Please find
>>> my
>>> repository.xml below this text. Do you want me to attach it to the
>>> corresponding wiki page? It think that it might serve as a good example
>>> for
>>> anyone who wants to use clustering with PostgreSQL.
>>>
>>> --snip--
>>> <?xml version="1.0"?>
>>> <!DOCTYPE Repository PUBLIC "-//The Apache Software Foundation//DTD
>>> Jackrabbit 1.2//EN"
>>>                               "
>>> http://jackrabbit.apache.org/dtd/repository-1.2.dtd">
>>> <Repository>
>>>       <Cluster>
>>>           <Journal
>>> class="org.apache.jackrabbit.core.journal.DatabaseJournal">
>>>               <param name="revision" value="${rep.home}/revision.log" />
>>>               <param name="driver" value="org.postgresql.Driver" />
>>>               <param name="url" value="${jackrabbit.repository.url}" />
>>>               <param name="user" value="${jackrabbit.repository.user}" />
>>>               <param name="password"
>>> value="${jackrabbit.repository.password}"
>>> />
>>>               <param name="schema" value="postgresql"/>
>>>               <param name="schemaObjectPrefix" value="J_C_"/>
>>>           </Journal>
>>>       </Cluster>
>>>
>>>       <FileSystem
>>> class="org.apache.jackrabbit.core.fs.local.LocalFileSystem">
>>>           <param name="path" value="${rep.home}/repository"/>
>>>       </FileSystem>
>>>
>>>       <Security appName="Jackrabbit">
>>>           <AccessManager
>>> class="org.apache.jackrabbit.core.security.SimpleAccessManager">
>>>           </AccessManager>
>>>
>>>           <LoginModule
>>> class="org.apache.jackrabbit.core.security.SimpleLoginModule">
>>>              <param name="anonymousId" value="anonymous"/>
>>>           </LoginModule>
>>>       </Security>
>>>
>>>       <Workspaces rootPath="${rep.home}/workspaces"
>>> defaultWorkspace="default"/>
>>>
>>>       <Workspace name="${wsp.name}">
>>>           <FileSystem
>>> class="org.apache.jackrabbit.core.fs.local.LocalFileSystem">
>>>               <param name="path" value="${wsp.home}/filesystem"/>
>>>           </FileSystem>
>>>
>>>           <PersistenceManager
>>> class="org.apache.jackrabbit.core.state.db.SimpleDbPersistenceManager">
>>>               <param name="driver" value="org.postgresql.Driver" />
>>>           <param name="url" value="${jackrabbit.repository.url}" />
>>>               <param name="user" value="${jackrabbit.repository.user}" />
>>>               <param name="password"
>>> value="${jackrabbit.repository.password}"
>>> />
>>>               <param name="schema" value="postgresql"/>
>>>               <param name="schemaObjectPrefix" value="J_PM_${wsp.name}_"
>>> />
>>>               <param name="externalBLOBs" value="false" />
>>>           </PersistenceManager>
>>>
>>>           <SearchIndex
>>> class="org.apache.jackrabbit.core.query.lucene.SearchIndex">
>>>               <param name="path" value="${wsp.home}/index"/>
>>>           </SearchIndex>
>>>       </Workspace>
>>>
>>>       <Versioning rootPath="${rep.home}/version">
>>>           <FileSystem
>>> class="org.apache.jackrabbit.core.fs.local.LocalFileSystem">
>>>               <param name="path" value="${rep.home}/version" />
>>>           </FileSystem>
>>>
>>>           <PersistenceManager
>>> class="org.apache.jackrabbit.core.state.db.SimpleDbPersistenceManager">
>>>               <param name="driver" value="org.postgresql.Driver" />
>>>           <param name="url" value="${jackrabbit.repository.url}" />
>>>               <param name="user" value="${jackrabbit.repository.user}" />
>>>               <param name="password"
>>> value="${jackrabbit.repository.password}"
>>> />
>>>               <param name="schema" value="postgresql"/>
>>>               <param name="schemaObjectPrefix" value="J_V_PM_" />
>>>               <param name="externalBLOBs" value="false" />
>>>           </PersistenceManager>
>>>       </Versioning>
>>>
>>>       <SearchIndex
>>> class="org.apache.jackrabbit.core.query.lucene.SearchIndex">
>>>           <param name="path" value="${rep.home}/repository/index"/>
>>>       </SearchIndex>
>>> </Repository>
>>> --snap--
>>>
>>> Regards,
>>> Etile
>>>
>>> On Thu, Oct 28, 2010 at 4:51 PM, Sergiy
>>> Shyrkov<my.public.mailing@gmail.com
>>>> wrote:
>>>> Thank you for the prompt reply!
>>>>
>>>> Kind regards
>>>> Sergiy
>>>>
>>>>
>>>> On 28.10.2010 16:32, Thomas Müller wrote:
>>>>
>>>>> Hi,
>>>>>
>>>>>    Could you, please, give me some hints if there are any advantages in
>>>>>> using
>>>>>> DatabaseFileSystem compared to LocalFileSystem?
>>>>>>
>>>>> Yes, in my view LocalFileSystem is appropriate. Only config files are
>>>>> stored in the FileSystem, no user data. LocalFileSystem is easier to
>>>>> use and configure. Some people may want to avoid creating files in the
>>>>> file system, so they can use a database FileSystem.
>>>>>
>>>>>    I assume, the information about clustering configuration
>>>>>> (http://wiki.apache.org/jackrabbit/Clustering ) is also valid for
>>>>>> Jackarabbit 2.1.x/2.2.x. Is it correct?
>>>>>>
>>>>> Yes.
>>>>>
>>>>> Regards,
>>>>> Thomas
>>>>>
>


Re: Problem with Clustering Setup (PostgreSQL)

Posted by Justin Edelson <ju...@justinedelson.com>.
It could be an instance of LocalFileSystem, if the file system pointed to
was shared by, for example, NFS or CIFS.

But DbFileSystem is another way to do that.

Justin

On 11/5/10 12:22 PM, "Sergiy Shyrkov" <my...@gmail.com> wrote:

>Hello Etile,
>
>if I correctly understood the discussion and explanations in this
>thread, the repository-level file system should be shared in cluster,
>meaning it cannot be an instance of LocalFileSystem like in your case.
>It should rather be DbFileSystem.
>Am I right?
>
>Kind regards
>Sergiy
>
>On 05.11.2010 09:52, Etile Basson wrote:
>> Hi there,
>>
>> just want to thank Thomas and Justin for their worthful hints. I
>>managed to
>> get the jackrabbit cluster up and running with PostgreSQL. Please find
>>my
>> repository.xml below this text. Do you want me to attach it to the
>> corresponding wiki page? It think that it might serve as a good example
>>for
>> anyone who wants to use clustering with PostgreSQL.
>>
>> --snip--
>> <?xml version="1.0"?>
>> <!DOCTYPE Repository PUBLIC "-//The Apache Software Foundation//DTD
>> Jackrabbit 1.2//EN"
>>                              "
>> http://jackrabbit.apache.org/dtd/repository-1.2.dtd">
>> <Repository>
>>      <Cluster>
>>          <Journal
>>class="org.apache.jackrabbit.core.journal.DatabaseJournal">
>>              <param name="revision" value="${rep.home}/revision.log" />
>>              <param name="driver" value="org.postgresql.Driver" />
>>              <param name="url" value="${jackrabbit.repository.url}" />
>>              <param name="user" value="${jackrabbit.repository.user}" />
>>              <param name="password"
>>value="${jackrabbit.repository.password}"
>> />
>>              <param name="schema" value="postgresql"/>
>>              <param name="schemaObjectPrefix" value="J_C_"/>
>>          </Journal>
>>      </Cluster>
>>
>>      <FileSystem
>>class="org.apache.jackrabbit.core.fs.local.LocalFileSystem">
>>          <param name="path" value="${rep.home}/repository"/>
>>      </FileSystem>
>>
>>      <Security appName="Jackrabbit">
>>          <AccessManager
>> class="org.apache.jackrabbit.core.security.SimpleAccessManager">
>>          </AccessManager>
>>
>>          <LoginModule
>> class="org.apache.jackrabbit.core.security.SimpleLoginModule">
>>             <param name="anonymousId" value="anonymous"/>
>>          </LoginModule>
>>      </Security>
>>
>>      <Workspaces rootPath="${rep.home}/workspaces"
>> defaultWorkspace="default"/>
>>
>>      <Workspace name="${wsp.name}">
>>          <FileSystem
>> class="org.apache.jackrabbit.core.fs.local.LocalFileSystem">
>>              <param name="path" value="${wsp.home}/filesystem"/>
>>          </FileSystem>
>>
>>          <PersistenceManager
>> class="org.apache.jackrabbit.core.state.db.SimpleDbPersistenceManager">
>>              <param name="driver" value="org.postgresql.Driver" />
>>          <param name="url" value="${jackrabbit.repository.url}" />
>>              <param name="user" value="${jackrabbit.repository.user}" />
>>              <param name="password"
>>value="${jackrabbit.repository.password}"
>> />
>>              <param name="schema" value="postgresql"/>
>>              <param name="schemaObjectPrefix" value="J_PM_${wsp.name}_"
>>/>
>>              <param name="externalBLOBs" value="false" />
>>          </PersistenceManager>
>>
>>          <SearchIndex
>> class="org.apache.jackrabbit.core.query.lucene.SearchIndex">
>>              <param name="path" value="${wsp.home}/index"/>
>>          </SearchIndex>
>>      </Workspace>
>>
>>      <Versioning rootPath="${rep.home}/version">
>>          <FileSystem
>> class="org.apache.jackrabbit.core.fs.local.LocalFileSystem">
>>              <param name="path" value="${rep.home}/version" />
>>          </FileSystem>
>>
>>          <PersistenceManager
>> class="org.apache.jackrabbit.core.state.db.SimpleDbPersistenceManager">
>>              <param name="driver" value="org.postgresql.Driver" />
>>          <param name="url" value="${jackrabbit.repository.url}" />
>>              <param name="user" value="${jackrabbit.repository.user}" />
>>              <param name="password"
>>value="${jackrabbit.repository.password}"
>> />
>>              <param name="schema" value="postgresql"/>
>>              <param name="schemaObjectPrefix" value="J_V_PM_" />
>>              <param name="externalBLOBs" value="false" />
>>          </PersistenceManager>
>>      </Versioning>
>>
>>      <SearchIndex
>> class="org.apache.jackrabbit.core.query.lucene.SearchIndex">
>>          <param name="path" value="${rep.home}/repository/index"/>
>>      </SearchIndex>
>> </Repository>
>> --snap--
>>
>> Regards,
>> Etile
>>
>> On Thu, Oct 28, 2010 at 4:51 PM, Sergiy
>>Shyrkov<my.public.mailing@gmail.com
>>> wrote:
>>> Thank you for the prompt reply!
>>>
>>> Kind regards
>>> Sergiy
>>>
>>>
>>> On 28.10.2010 16:32, Thomas Müller wrote:
>>>
>>>> Hi,
>>>>
>>>>   Could you, please, give me some hints if there are any advantages in
>>>>> using
>>>>> DatabaseFileSystem compared to LocalFileSystem?
>>>>>
>>>> Yes, in my view LocalFileSystem is appropriate. Only config files are
>>>> stored in the FileSystem, no user data. LocalFileSystem is easier to
>>>> use and configure. Some people may want to avoid creating files in the
>>>> file system, so they can use a database FileSystem.
>>>>
>>>>   I assume, the information about clustering configuration
>>>>> (http://wiki.apache.org/jackrabbit/Clustering ) is also valid for
>>>>> Jackarabbit 2.1.x/2.2.x. Is it correct?
>>>>>
>>>> Yes.
>>>>
>>>> Regards,
>>>> Thomas
>>>>
>>>
>



Re: Problem with Clustering Setup (PostgreSQL)

Posted by Sergiy Shyrkov <my...@gmail.com>.
Hello Etile,

if I correctly understood the discussion and explanations in this 
thread, the repository-level file system should be shared in cluster,
meaning it cannot be an instance of LocalFileSystem like in your case. 
It should rather be DbFileSystem.
Am I right?

Kind regards
Sergiy

On 05.11.2010 09:52, Etile Basson wrote:
> Hi there,
>
> just want to thank Thomas and Justin for their worthful hints. I managed to
> get the jackrabbit cluster up and running with PostgreSQL. Please find my
> repository.xml below this text. Do you want me to attach it to the
> corresponding wiki page? It think that it might serve as a good example for
> anyone who wants to use clustering with PostgreSQL.
>
> --snip--
> <?xml version="1.0"?>
> <!DOCTYPE Repository PUBLIC "-//The Apache Software Foundation//DTD
> Jackrabbit 1.2//EN"
>                              "
> http://jackrabbit.apache.org/dtd/repository-1.2.dtd">
> <Repository>
>      <Cluster>
>          <Journal class="org.apache.jackrabbit.core.journal.DatabaseJournal">
>              <param name="revision" value="${rep.home}/revision.log" />
>              <param name="driver" value="org.postgresql.Driver" />
>              <param name="url" value="${jackrabbit.repository.url}" />
>              <param name="user" value="${jackrabbit.repository.user}" />
>              <param name="password" value="${jackrabbit.repository.password}"
> />
>              <param name="schema" value="postgresql"/>
>              <param name="schemaObjectPrefix" value="J_C_"/>
>          </Journal>
>      </Cluster>
>
>      <FileSystem class="org.apache.jackrabbit.core.fs.local.LocalFileSystem">
>          <param name="path" value="${rep.home}/repository"/>
>      </FileSystem>
>
>      <Security appName="Jackrabbit">
>          <AccessManager
> class="org.apache.jackrabbit.core.security.SimpleAccessManager">
>          </AccessManager>
>
>          <LoginModule
> class="org.apache.jackrabbit.core.security.SimpleLoginModule">
>             <param name="anonymousId" value="anonymous"/>
>          </LoginModule>
>      </Security>
>
>      <Workspaces rootPath="${rep.home}/workspaces"
> defaultWorkspace="default"/>
>
>      <Workspace name="${wsp.name}">
>          <FileSystem
> class="org.apache.jackrabbit.core.fs.local.LocalFileSystem">
>              <param name="path" value="${wsp.home}/filesystem"/>
>          </FileSystem>
>
>          <PersistenceManager
> class="org.apache.jackrabbit.core.state.db.SimpleDbPersistenceManager">
>              <param name="driver" value="org.postgresql.Driver" />
>          <param name="url" value="${jackrabbit.repository.url}" />
>              <param name="user" value="${jackrabbit.repository.user}" />
>              <param name="password" value="${jackrabbit.repository.password}"
> />
>              <param name="schema" value="postgresql"/>
>              <param name="schemaObjectPrefix" value="J_PM_${wsp.name}_" />
>              <param name="externalBLOBs" value="false" />
>          </PersistenceManager>
>
>          <SearchIndex
> class="org.apache.jackrabbit.core.query.lucene.SearchIndex">
>              <param name="path" value="${wsp.home}/index"/>
>          </SearchIndex>
>      </Workspace>
>
>      <Versioning rootPath="${rep.home}/version">
>          <FileSystem
> class="org.apache.jackrabbit.core.fs.local.LocalFileSystem">
>              <param name="path" value="${rep.home}/version" />
>          </FileSystem>
>
>          <PersistenceManager
> class="org.apache.jackrabbit.core.state.db.SimpleDbPersistenceManager">
>              <param name="driver" value="org.postgresql.Driver" />
>          <param name="url" value="${jackrabbit.repository.url}" />
>              <param name="user" value="${jackrabbit.repository.user}" />
>              <param name="password" value="${jackrabbit.repository.password}"
> />
>              <param name="schema" value="postgresql"/>
>              <param name="schemaObjectPrefix" value="J_V_PM_" />
>              <param name="externalBLOBs" value="false" />
>          </PersistenceManager>
>      </Versioning>
>
>      <SearchIndex
> class="org.apache.jackrabbit.core.query.lucene.SearchIndex">
>          <param name="path" value="${rep.home}/repository/index"/>
>      </SearchIndex>
> </Repository>
> --snap--
>
> Regards,
> Etile
>
> On Thu, Oct 28, 2010 at 4:51 PM, Sergiy Shyrkov<my.public.mailing@gmail.com
>> wrote:
>> Thank you for the prompt reply!
>>
>> Kind regards
>> Sergiy
>>
>>
>> On 28.10.2010 16:32, Thomas Müller wrote:
>>
>>> Hi,
>>>
>>>   Could you, please, give me some hints if there are any advantages in
>>>> using
>>>> DatabaseFileSystem compared to LocalFileSystem?
>>>>
>>> Yes, in my view LocalFileSystem is appropriate. Only config files are
>>> stored in the FileSystem, no user data. LocalFileSystem is easier to
>>> use and configure. Some people may want to avoid creating files in the
>>> file system, so they can use a database FileSystem.
>>>
>>>   I assume, the information about clustering configuration
>>>> (http://wiki.apache.org/jackrabbit/Clustering ) is also valid for
>>>> Jackarabbit 2.1.x/2.2.x. Is it correct?
>>>>
>>> Yes.
>>>
>>> Regards,
>>> Thomas
>>>
>>