You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@jackrabbit.apache.org by Flavio Donzé <fd...@scodi.ch> on 2009/03/25 17:20:32 UTC
Database Datastore "tablePrefix"
Hello
I'm using the following DataStore settings. After I start Jackrabbit the second time I get an exception.
<DataStore class="org.apache.jackrabbit.core.data.db.DbDataStore">
<param name="url" value="jdbc:postgresql:repo"/>
<param name="user" value=".."/>
<param name="password" value=".."/>
<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"/>
<param name="tablePrefix" value="rep_"/>
<param name="schemaObjectPrefix" value=""/>
</DataStore>
org.postgresql.util.PSQLException: ERROR: relation "rep_datastore" already exists
at org.postgresql.core.v3.QueryExecutorImpl.receiveErrorResponse(QueryExecutorImpl.java:1608)
at org.postgresql.core.v3.QueryExecutorImpl.processResults(QueryExecutorImpl.java:1343)
at org.postgresql.core.v3.QueryExecutorImpl.execute(QueryExecutorImpl.java:194)
at org.postgresql.jdbc2.AbstractJdbc2Statement.execute(AbstractJdbc2Statement.java:451)
at org.postgresql.jdbc2.AbstractJdbc2Statement.executeWithFlags(AbstractJdbc2Statement.java:350)
at org.postgresql.jdbc2.AbstractJdbc2Statement.execute(AbstractJdbc2Statement.java:343)
at org.apache.jackrabbit.core.persistence.bundle.util.ConnectionRecoveryManager.executeStmtInternal(ConnectionRecoveryManager.java:365)
at org.apache.jackrabbit.core.persistence.bundle.util.ConnectionRecoveryManager.executeStmtInternal(ConnectionRecoveryManager.java:292)
at org.apache.jackrabbit.core.persistence.bundle.util.ConnectionRecoveryManager.executeStmt(ConnectionRecoveryManager.java:257)
at org.apache.jackrabbit.core.persistence.bundle.util.ConnectionRecoveryManager.executeStmt(ConnectionRecoveryManager.java:237)
at org.apache.jackrabbit.core.data.db.DbDataStore.init(DbDataStore.java:491)
at org.apache.jackrabbit.core.RepositoryImpl.createDataStore(RepositoryImpl.java:662)
at org.apache.jackrabbit.core.RepositoryImpl.<init>(RepositoryImpl.java:271)
at org.apache.jackrabbit.core.RepositoryImpl.create(RepositoryImpl.java:557)
This behavior only occurs if "tablePrefix" is set, if I leave it blank everything works fine.
Should I report a bug?
Grüsse aus Beckenried
Flavio Donzé, Software Engineer
SCODi 4P
henzler informatik gmbh
Teichstrasse 7
CH-4106 Therwil
Phone +41 (0)41 9110522
Web www.scodi.ch<http://www.scodi.ch/>
Re: Database Datastore "tablePrefix"
Posted by Alexander Klimetschek <ak...@day.com>.
On Wed, Mar 25, 2009 at 5:20 PM, Flavio Donzé <fd...@scodi.ch> wrote:
> org.postgresql.util.PSQLException: ERROR: relation "rep_datastore" already
> exists
This looks to me like there is a relation with that name, so the
DbDataStore cannot create a table with the same name (it checks
whether a table exists under that name before running the create table
statement). Have a look at what's inside the database, and maybe
delete that or simply choose a different tablePrefix.
Regards,
Alex
--
Alexander Klimetschek
alexander.klimetschek@day.com