It seems to me that there may be some confusion between two separate
Sybase databases. The Sybase database driver that is referenced in the
link given (http://db.apache.org/ddlutils/databases/sybase.html) seems to
be for Sybase Adaptive Server Enterprise (ASE) 11.5.
However, based on the error message you are getting,
"java.sql.SQLException: SQL Anywhere Error -110" it would seem that you
are not actually using Sybase ASE, but rather Sybase SQL Anywhere
(formerly called Sybase Adaptive Server Anywhere )
(http://www.sybase.com/products/databasemanagement/sqlanywhere).
Although the databases share similar SQL syntax, I would not expect a
Sybase ASE driver to work with SQL Anywhere without modification.
> One thing that appears to me is that in
>
jackrabbit-core\src\main\resources\org\apache\jackrabbit\core\persistence\bundle\sybase.ddl
>
> create table ${schemaObjectPrefix}NAMES (ID INTEGER IDENTITY(1,1)
PRIMARY
> KEY, NAME varchar(255) COLLATE Latin1_General_CS_AS not null)
>
>
> is a statement that has trouble
>
> I believe
>
> create table ${schemaObjectPrefix}NAMES (ID INTEGER IDENTITY PRIMARY
KEY,
> NAME varchar(255) not null)
>
> works, but then i get the following trying to initialize the
VersionManager
> org.apache.jackrabbit.core.state.ItemStateException: failed to read
bundle:
> deadbeef-face-babe-cafe-babecafebabe: java.sql.SQLException: SQL
Anywhere
> Error -110: Item 'jtds000001' already exists
>
> at
>
org.apache.jackrabbit.core.persistence.bundle.BundleDbPersistenceManager.loadBundle(BundleDbPersistenceManager.java:1161)
>
> at
>
org.apache.jackrabbit.core.persistence.bundle.BundleDbPersistenceManager.loadBundle(BundleDbPersistenceManager.java:1094)
>
> at
>
org.apache.jackrabbit.core.persistence.bundle.AbstractBundlePersistenceManager.getBundle(AbstractBundlePersistenceManager.java:671)
>
> at
>
org.apache.jackrabbit.core.persistence.bundle.AbstractBundlePersistenceManager.exists(AbstractBundlePersistenceManager.java:496)
>
> at
>
org.apache.jackrabbit.core.version.VersionManagerImpl.<init>(VersionManagerImpl.java:141)
>
> at
>
org.apache.jackrabbit.core.RepositoryImpl.createVersionManager(RepositoryImpl.java:436)
>
> at
org.apache.jackrabbit.core.RepositoryImpl.<init>(RepositoryImpl.java:300)
>
> at
org.apache.jackrabbit.core.RepositoryImpl.create(RepositoryImpl.java:590)
>
> at
>
org.apache.jackrabbit.core.TransientRepository$2.getRepository(TransientRepository.java:241)
>
> at
>
org.apache.jackrabbit.core.TransientRepository.startRepository(TransientRepository.java:261)
>
> at
>
org.apache.jackrabbit.core.TransientRepository.login(TransientRepository.java:329)
>
> at JRSybase.main(JRSybase.java:17)
>
> Caused by: java.sql.SQLException: SQL Anywhere Error -110: Item
'jtds000001'
> already exists
>
> at
>
net.sourceforge.jtds.jdbc.SQLDiagnostic.addDiagnostic(SQLDiagnostic.java:365)
>
> at net.sourceforge.jtds.jdbc.TdsCore.tdsErrorToken(TdsCore.java:2781)
>
> at net.sourceforge.jtds.jdbc.TdsCore.nextToken(TdsCore.java:2224)
>
> at net.sourceforge.jtds.jdbc.TdsCore.getMoreResults(TdsCore.java:633)
>
> at
>
net.sourceforge.jtds.jdbc.JtdsStatement.processResults(JtdsStatement.java:525)
>
> at
>
net.sourceforge.jtds.jdbc.JtdsStatement.executeSQL(JtdsStatement.java:487)
>
> at
>
net.sourceforge.jtds.jdbc.JtdsPreparedStatement.execute(JtdsPreparedStatement.java:475)
>
> at
>
org.apache.jackrabbit.core.persistence.bundle.util.ConnectionRecoveryManager.executeStmtInternal(ConnectionRecoveryManager.java:371)
>
> at
>
org.apache.jackrabbit.core.persistence.bundle.util.ConnectionRecoveryManager.executeStmtInternal(ConnectionRecoveryManager.java:298)
>
> at
>
org.apache.jackrabbit.core.persistence.bundle.util.ConnectionRecoveryManager.executeStmt(ConnectionRecoveryManager.java:261)
>
> at
>
org.apache.jackrabbit.core.persistence.bundle.util.ConnectionRecoveryManager.executeStmt(ConnectionRecoveryManager.java:239)
>
> at
>
org.apache.jackrabbit.core.persistence.bundle.BundleDbPersistenceManager.loadBundle(BundleDbPersistenceManager.java:1136)
>
> ... 11 more
>
>
>
>
> ----- Original Message -----
> From: "Stefan Guggisberg" <[EMAIL PROTECTED]>
> To: <[email protected]>
> Sent: Wednesday, May 07, 2008 10:27 AM
> Subject: Re: Jack Rabbit support for sybase
>
>
>> On Wed, May 7, 2008 at 5:08 PM, Pulla Venkat <[EMAIL PROTECTED]>
wrote:
>>> Hi,
>>>
>>> Jack Rabbit seems to be lacking in sybase support. I didn't find much
>>> useful
>>> information as how to proceed with sybase.
>>>
>>> This issue has been reported before in user group and open issues
area
>>> in
>>> jackrabbit. Will this get resolved soon ?.
>>
>> no, i don't think so. unless somebody takes the plunge and contributes
>> his work... ;)
>>
>>>
>>> We desparately need to support sybase for jackrabbit for our
>>> application.
>>>
>>> we are having issues in writing our own implementation of persistence
>>> manager for sybase.
>>>
>> what issues?
>>
>>>
>>> Any useful pointers are welcome.
>>
>> start here: http://issues.apache.org/jira/browse/JCR-1320
>>
>> take a look at the existing implementations in the
>> o.a.j.c.persistence.bundle package.
>>
>> configure e.g. BundleDbPersistenceManager to use the ddl files
>> attached to the above issue,
>>
>> debug any issues you'll run into, create a specialized subclass
>> of BundleDbPersistenceManager and address the issues in
>> method overrides
>>
>> cheers
>> stefan
>>
>>>
>>> Thanks,
>>> Maruti
>>>