jackrabbit-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Thomas Müller <thomas.muel...@day.com>
Subject Re: Exception while creating workspace created on another cluster node
Date Wed, 01 Apr 2009 14:01:33 GMT
Hi,

It looks like a different problem. Can you reproduce this problem
starting with an empty repository?

Regards,
Thomas


On Wed, Apr 1, 2009 at 3:53 PM, Dipu <dipu.wkt@googlemail.com> wrote:
> Hi all,
>
> It looks like the problem i am getting now is what mentioned here
> https://issues.apache.org/jira/browse/JCR-1558
>
> Is it an issue or is it again some thing configured wrongly in my repository.xml
>
> Thanks & Regards
> Dipu
>
> On Thu, Mar 19, 2009 at 12:51 PM, Thomas Müller <thomas.mueller@day.com> wrote:
>> Hi,
>>
>> Most likely the problem is that both cluster nodes point to the same
>> file system. I have updated the documentation at
>> http://wiki.apache.org/jackrabbit/Clustering
>>
>> "Clustering in Jackrabbit works as follows: content is shared between
>> all cluster nodes. That means all Jackrabbit cluster nodes need access
>> to the SAME persistent storage (persistence manager and data store).
>> However, each cluster node needs its own (private) FileSystem and
>> search index. "
>>
>> Regards,
>> Thomas
>>
>>
>>
>> 2009/3/19 Dipu <dipu.wkt@googlemail.com>:
>>> Hi Thomas,
>>>
>>> Thanks for the reply.
>>>
>>> This is the error message that gets logged, there is no stacktrace
>>>
>>> 2009-03-19 11:19:19:046 ERROR
>>> org.apache.jackrabbit.core.cluster.ClusterNode
>>> [ClusterNode-dev_node_hestia] - Unable to create workspace: failed to
>>> create workspace configuration at path
>>> /configRootPath/brix_ws_59e521c6_676b_4782_9ba9_ef3651e1fb54/workspace.xml:
>>> file system entry already exists:
>>> /configRootPath/brix_ws_59e521c6_676b_4782_9ba9_ef3651e1fb54
>>>
>>> createFolder  method in DatabaseFileSystem class is throwing the
>>> new FileSystemException("file system entry already exists: " +
>>> folderPath); which gets propagated and ClusterNode.process method logs
>>> it.
>>>
>>> this is how the real URL looks
>>>
>>> <param name="url" value="jdbc:postgresql://something.production.mcom/dbname"
/>
>>>
>>> we connect to the DB fine and i don't think there is any problem there.
>>>
>>> Regards
>>> Dipu
>>>
>>>
>>> 2009/3/19 Thomas Müller <thomas.mueller@day.com>:
>>>> Hi,
>>>>
>>>> Could you post the exception message and stack trace please?
>>>>
>>>> <param name="url" value="jdbc:postgresql://url" />
>>>>
>>>> Could you also include the real URL?
>>>>
>>>> Regards,
>>>> Thomas
>>>>
>>>>
>>>> On Wed, Mar 18, 2009 at 5:41 PM, Dipu <dipu.wkt@googlemail.com> wrote:
>>>>> Hi,
>>>>>
>>>>> This is how my repository.xml looks, can someone check if there is
>>>>> anything wrong
>>>>> with my configuration that's resulting in the failure please.
>>>>>
>>>>> <?xml version="1.0"?>
>>>>> <!--
>>>>>   Licensed to the Apache Software Foundation (ASF) under one or more
>>>>>   contributor license agreements.  See the NOTICE file distributed
with
>>>>>   this work for additional information regarding copyright ownership.
>>>>>   The ASF licenses this file to You under the Apache License, Version
2.0
>>>>>   (the "License"); you may not use this file except in compliance with
>>>>>   the License.  You may obtain a copy of the License at
>>>>>
>>>>>       http://www.apache.org/licenses/LICENSE-2.0
>>>>>
>>>>>   Unless required by applicable law or agreed to in writing, software
>>>>>   distributed under the License is distributed on an "AS IS" BASIS,
>>>>>   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
>>>>>   See the License for the specific language governing permissions and
>>>>>   limitations under the License.
>>>>> -->
>>>>> <!DOCTYPE Repository PUBLIC "-//The Apache Software Foundation//DTD
>>>>> Jackrabbit 1.5//EN"
>>>>>
>>>>> "http://jackrabbit.apache.org/dtd/repository-1.5.dtd">
>>>>> <!-- Example Repository Configuration File -->
>>>>> <Repository>
>>>>>    <!--
>>>>>        virtual file system where the repository stores global state
>>>>>        (e.g. registered namespaces, custom node types, etc.)
>>>>>    -->
>>>>>    <!--
>>>>>    <FileSystem class="org.apache.jackrabbit.core.fs.local.LocalFileSystem">
>>>>>        <param name="path" value="${rep.home}/repository"/>
>>>>>    </FileSystem>
>>>>>    -->
>>>>>    <!--
>>>>>        Database File System (Cluster Configuration)
>>>>>        -->
>>>>>
>>>>>        <FileSystem class="org.apache.jackrabbit.core.fs.db.DbFileSystem">
>>>>>                <param name="driver" value="org.postgresql.Driver"/>
>>>>>                <param name="url" value="jdbc:postgresql://url"
/>
>>>>>                <param name="user" value="user" />
>>>>>                <param name="password" value="pwd" />
>>>>>                <param name="schema" value="postgresql"/>
>>>>>                <param name="schemaObjectPrefix" value="J_R_FS_"/>
>>>>>        </FileSystem>
>>>>>
>>>>>    <!--
>>>>>        security configuration
>>>>>    -->
>>>>>    <Security appName="Jackrabbit">
>>>>>        <!--
>>>>>            access manager:
>>>>>            class: FQN of class implementing the AccessManager interface
>>>>>        -->
>>>>>        <AccessManager
>>>>> class="org.apache.jackrabbit.core.security.SimpleAccessManager">
>>>>>            <!-- <param name="config" value="${rep.home}/access.xml"/>
-->
>>>>>        </AccessManager>
>>>>>
>>>>>        <LoginModule
>>>>> class="org.apache.jackrabbit.core.security.SimpleLoginModule">
>>>>>           <!-- anonymous user name ('anonymous' is the default
value) -->
>>>>>           <param name="anonymousId" value="anonymous"/>
>>>>>           <!--
>>>>>              default user name to be used instead of the anonymous
user
>>>>>              when no login credentials are provided (unset by
default)
>>>>>           -->
>>>>>           <!-- <param name="defaultUserId" value="superuser"/>
-->
>>>>>        </LoginModule>
>>>>>    </Security>
>>>>>
>>>>>    <!--
>>>>>        location of workspaces root directory and name of default
workspace
>>>>>    -->
>>>>>
>>>>>   <Workspaces rootPath="${rep.home}/workspaces"
>>>>> defaultWorkspace="default" configRootPath="/configRootPath"/>
>>>>>
>>>>>    <!--
>>>>>        workspace configuration template:
>>>>>        used to create the initial workspace if there's no workspace
yet
>>>>>    -->
>>>>>    <Workspace name="${wsp.name}">
>>>>>        <!--
>>>>>            virtual file system of the workspace:
>>>>>            class: FQN of class implementing the FileSystem interface
>>>>>        -->
>>>>>         <!--
>>>>>        <FileSystem class="org.apache.jackrabbit.core.fs.local.LocalFileSystem">
>>>>>            <param name="path" value="${wsp.home}"/>
>>>>>        </FileSystem>
>>>>>        -->
>>>>>        <FileSystem class="org.apache.jackrabbit.core.fs.db.DbFileSystem">
>>>>>                        <param name="driver" value="org.postgresql.Driver"/>
>>>>>                        <param name="url" value="jdbc:postgresql://url"
/>
>>>>>                        <param name="user" value="user"
/>
>>>>>                        <param name="password" value="pwd"
/>
>>>>>                        <param name="schema" value="postgresql"/>
>>>>>                        <param name="schemaObjectPrefix"
value="J_FS_${wsp.name}_"/>
>>>>>                </FileSystem>
>>>>>
>>>>>        <!--
>>>>>            persistence manager of the workspace:
>>>>>            class: FQN of class implementing the PersistenceManager
interface
>>>>>        -->
>>>>>
>>>>>        <!--
>>>>>        <PersistenceManager
>>>>> class="org.apache.jackrabbit.core.persistence.bundle.DerbyPersistenceManager">
>>>>>          <param name="url" value="jdbc:derby:${wsp.home}/db;create=true"/>
>>>>>          <param name="schemaObjectPrefix" value="${wsp.name}_"/>
>>>>>        </PersistenceManager>
>>>>>        -->
>>>>>
>>>>>         <PersistenceManager
>>>>> class="org.apache.jackrabbit.core.persistence.bundle.PostgreSQLPersistenceManager">
>>>>>                <param name="url" value="jdbc:postgresql://url"/>
>>>>>                <param name="user" value="user"/>
>>>>>                <param name="password" value="pwd"/>
>>>>>                <param name="schemaObjectPrefix" value="J_PM_${wsp.name}_"/>
>>>>>                <param name="externalBLOBs" value="false"/>
>>>>>        </PersistenceManager>
>>>>>
>>>>>        <!--
>>>>>            Search index and the file system it uses.
>>>>>            class: FQN of class implementing the QueryHandler interface
>>>>>        -->
>>>>>        <SearchIndex
>>>>> class="org.apache.jackrabbit.core.query.lucene.SearchIndex">
>>>>>            <param name="path" value="${wsp.home}/index"/>
>>>>>            <param name="textFilterClasses"
>>>>> value="org.apache.jackrabbit.extractor.MsWordTextExtractor,org.apache.jackrabbit.extractor.MsExcelTextExtractor,org.apache.jackrabbit.extractor.MsPowerPointTextExtractor,org.apache.jackrabbit.extractor.PdfTextExtractor,org.apache.jackrabbit.extractor.OpenOfficeTextExtractor,org.apache.jackrabbit.extractor.RTFTextExtractor,brix.jcr.jackrabbit.HtmlTextExtractor,org.apache.jackrabbit.extractor.XMLTextExtractor"/>
>>>>>            <param name="extractorPoolSize " value="2"/>
>>>>>            <param name="supportHighlighting" value="true"/>
>>>>>        </SearchIndex>
>>>>>
>>>>>        <ISMLocking
>>>>> class="org.apache.jackrabbit.core.state.FineGrainedISMLocking"></ISMLocking>
>>>>>
>>>>>    </Workspace>
>>>>>
>>>>>    <!--
>>>>>        Configures the versioning
>>>>>    -->
>>>>>    <Versioning rootPath="${rep.home}/version">
>>>>>        <!--
>>>>>            Configures the filesystem to use for versioning for
the respective
>>>>>            persistence manager
>>>>>        -->
>>>>>        <!--
>>>>>        <FileSystem class="org.apache.jackrabbit.core.fs.local.LocalFileSystem">
>>>>>            <param name="path" value="${rep.home}/version" />
>>>>>        </FileSystem>
>>>>>         -->
>>>>>         <!--
>>>>>                Database File System and Persistence (Cluster
Configuration)
>>>>>                -->
>>>>>
>>>>>                <FileSystem class="org.apache.jackrabbit.core.fs.db.DbFileSystem">
>>>>>                        <param name="driver" value="org.postgresql.Driver"/>
>>>>>                        <param name="url" value="jdbc:postgresql://url"
/>
>>>>>                        <param name="user" value="user"
/>
>>>>>                        <param name="password" value="pwd"
/>
>>>>>                        <param name="schema" value="postgresql"/>
>>>>>                        <param name="schemaObjectPrefix"
value="J_V_FS_"/>
>>>>>                </FileSystem>
>>>>>
>>>>>        <!--
>>>>>            Configures the persistence manager to be used for
>>>>> persisting version state.
>>>>>            Please note that the current versioning implementation
is based on
>>>>>            a 'normal' persistence manager, but this could change
in future
>>>>>            implementations.
>>>>>        -->
>>>>>        <!--
>>>>>        <PersistenceManager
>>>>> class="org.apache.jackrabbit.core.persistence.bundle.DerbyPersistenceManager">
>>>>>          <param name="url"
>>>>> value="jdbc:derby:${rep.home}/version/db;create=true"/>
>>>>>          <param name="schemaObjectPrefix" value="version_"/>
>>>>>        </PersistenceManager>
>>>>>         -->
>>>>>         <PersistenceManager
>>>>> class="org.apache.jackrabbit.core.persistence.bundle.PostgreSQLPersistenceManager">
>>>>>                <param name="url" value="dbc:postgresql://url"/>
>>>>>                <param name="user" value="user"/>
>>>>>                <param name="password" value="pwd"/>
>>>>>                <param name="schemaObjectPrefix" value="J_V_PM_"/>
>>>>>                <param name="externalBLOBs" value="false"/>
>>>>>        </PersistenceManager>
>>>>>
>>>>>        <ISMLocking
>>>>> class="org.apache.jackrabbit.core.state.FineGrainedISMLocking"></ISMLocking>
>>>>>
>>>>>    </Versioning>
>>>>>
>>>>>    <!--
>>>>>        Search index for content that is shared repository wide
>>>>>        (/jcr:system tree, contains mainly versions)
>>>>>    -->
>>>>>    <SearchIndex class="org.apache.jackrabbit.core.query.lucene.SearchIndex">
>>>>>        <param name="path" value="${rep.home}/repository/index"/>
>>>>>        <param name="textFilterClasses"
>>>>> value="org.apache.jackrabbit.extractor.MsWordTextExtractor,org.apache.jackrabbit.extractor.MsExcelTextExtractor,org.apache.jackrabbit.extractor.MsPowerPointTextExtractor,org.apache.jackrabbit.extractor.PdfTextExtractor,org.apache.jackrabbit.extractor.OpenOfficeTextExtractor,org.apache.jackrabbit.extractor.RTFTextExtractor,brix.jcr.jackrabbit.HtmlTextExtractor,org.apache.jackrabbit.extractor.XMLTextExtractor"/>
>>>>>        <param name="extractorPoolSize " value="2"/>
>>>>>        <param name="supportHighlighting" value="true"/>
>>>>>    </SearchIndex>
>>>>>
>>>>>
>>>>>   <!--
>>>>>        Cluster Configuration
>>>>>        -->
>>>>>
>>>>>        <Cluster id="dev_node_hestia" syncDelay="5">
>>>>>                <Journal class="org.apache.jackrabbit.core.journal.DatabaseJournal">
>>>>>                        <param name="revision" value="${rep.home}/revision"/>
>>>>>                        <param name="driver" value="org.postgresql.Driver"/>
>>>>>                        <param name="url" value="jdbc:postgresql://url"
/>
>>>>>                        <param name="user" value="user"
/>
>>>>>                        <param name="password" value="pwd"
/>
>>>>>                        <param name="schema" value="postgresql"/>
>>>>>                        <param name="schemaObjectPrefix"
value="J_C_"/>
>>>>>                </Journal>
>>>>>    </Cluster>
>>>>>
>>>>>
>>>>>        <DataStore class="org.apache.jackrabbit.core.data.db.DbDataStore">
>>>>>                <param name="url" value="jdbc:postgresql://url"
/>
>>>>>                <param name="user" value="user" />
>>>>>                <param name="password" value="pwd" />
>>>>>                <param name="databaseType" value="postgresql"
/>
>>>>>                <param name="driver" value="org.postgresql.Driver"
/>
>>>>>                <param name="minRecordLength" value="1024"
/>
>>>>>                <param name="maxConnections" value="3" />
>>>>>                <param name="copyWhenReading" value="true"
/>
>>>>>        </DataStore>
>>>>>
>>>>>
>>>>> </Repository>
>>>>>
>>>>>
>>>>> Thanks
>>>>> Dipu
>>>>>
>>>>
>>>
>>
>

Mime
View raw message