jackrabbit-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From viz06 <vijaykumarsharma_1...@yahoo.com>
Subject DataStore table name
Date Tue, 24 Jun 2008 13:28:25 GMT

There seems to be a bug configuring DataStore. I am using the following
configuration

<DataStore class="org.apache.jackrabbit.core.data.db.DbDataStore">
            
            
            
            
            
            
            
            
            
    </DataStore>

this works the first time around and creates the table cmr_datastore, but on
2nd run I get this oracle error

ORA-00955: name is already used by an existing object

On digging up code it seems the below check (in DbDataStore)for existing
datastore table is wrong. This is checking for tableSQL (DATASTORE)and if
not found creates CMR_DATASTORE. 


ResultSet rs = meta.getTables(null, null, tableSQL, null);

boolean exists = rs.next();
rs.close();
if (!exists) {
      conn.executeStmt(createTableSQL, null);
}

where tableSQL is DataStore (default value) while createTableSQL is 'CREATE
TABLE ${tablePrefix}${table}(ID VARCHAR(255) PRIMARY KEY, LENGTH NUMBER,
LAST_MODIFIED NUMBER, DATA BLOB'

For 1st run system could not find cmr_datastore table hence it creates one,
on 2nd run again it checks if the datastore table exists as it doesn't, it
tries creating cmr_datastore which fails because it already exists.

I couldn't find any mention of this issue on the forum or anywhere else.
Could it me an issue with my environment, which I really doubt.

I am using Jackrabbit 1.4.4.

Thanks
-- 
View this message in context: http://www.nabble.com/DataStore-table-name-tp18091039p18091039.html
Sent from the Jackrabbit - Users mailing list archive at Nabble.com.


Mime
View raw message