[ 
https://issues.apache.org/jira/browse/JCR-1366?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12567760#action_12567760
 ] 

Tyson Norris commented on JCR-1366:
-----------------------------------

We would like to be able to change the table name so that its use is obvious - 
i.e. change "DATASTORE" to "JACKRABBIT_DATASTORE". It is unlikely that we would 
have a collision with the name DATASTORE, but nevertheless, it is possible. All 
other config options have proper working prefix options so that all of our 
JACKRABBIT tables are effectively named with the prefix "JACKRABBIT_".

Thanks!
Tyson

> DbDataStore: tablePrefix not accomodated during init test for existing 
> DATASTORE table
> --------------------------------------------------------------------------------------
>
>                 Key: JCR-1366
>                 URL: https://issues.apache.org/jira/browse/JCR-1366
>             Project: Jackrabbit
>          Issue Type: New Feature
>          Components: jackrabbit-core
>    Affects Versions: 1.4
>         Environment: jdk 1.6, win xp, SQL SERVER 2007, jTDS jdbc driver
>            Reporter: Tyson Norris
>            Priority: Minor
>
> we are providing a test db deployment with prepopulated data, including 
> jackrabbit DataStore. I tried specifying the tablePrefix when creating the 
> initial repository, and tables are created properly.
> However, when a clean installation is run with a fresh database that has an 
> existing DataStore (stored at JACKRABBIT_DS_DATASTORE table), the startup 
> fails, because during init, the meta data only checks for tables name 
> matching the tableSQL property:
> ResultSet rs = meta.getTables(null, null, tableSQL, null);
> but the tableSQL property is never modified based on the tablePrefix property 
> (other uses of tableSQL modify queries based on the prefix).
> I think the init method should modify the tested table name based on the 
> tablePrefix.
> Note: I assume different JDBC drivers may handle this differently (we are 
> using SQL Server 2007 and jTDS driver), since the DatabaseMetaData is API is 
> unclear on the parameter to getTables being a "tableNamePattern" - should 
> wildcards work? Or should a specific table be specified? 
> My DataStore config is below:
>     <DataStore class="org.apache.jackrabbit.core.data.db.DbDataStore">
>       <param name="className" 
> value="org.apache.jackrabbit.core.data.db.DbDataStore"/>
>       <param name="url" 
> value="jdbc:jtds:SQLServer://localhost:1433/nga_admin;prepareSQL=2;responseBuffering=adaptive"/>
>       <param name="user" value="sa"/>
>       <param name="password" value=""/>
>       <param name="databaseType" value="sqlserver"/>
>       <param name="driver" value="net.sourceforge.jtds.jdbc.Driver"/>
>       <!-- a bug in jackrabbit makes tablePrefix not work -->
>       <param name="tablePrefix" value="JACKRABBIT_DS_">
>       <param name="minRecordLength" value="1"/>
>       <param name="maxConnections" value="2"/>
>       <param name="copyWhenReading" value="true"/>         
>     </DataStore>

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply via email to