Creating a new RDBMS Adapter can be a very easy task. To write the Oracle Adapter I've created an Oracle schema and an empty OracleRDBMSAdapter that simply extended org.apache.slide.store.impl.rdbms.StandardRDBMSAdapter. Then I've run Slide with the JDBCStore configured to use my new OracleRDBMSAdapter and tested every webdav method with a client. If one method failed (usually for a SQLException), watching the stack trace I could understand what StandardRDBMSAdapter method must be overwritten in my OracleRDBMSAdapter. :) All the overwritten methods I wrote differs only from the Sql statements except the methods that manage Blobs.

I've found a problem with transaction isolation: Slide use Serializable isolation by default but with Oracle that doesn't work (it's a setting in Domain.xml, you must change it there). There's a thread about this problem on slide-dev mailing list here.

When you have finished writing your Store / Adapter, you should RunTheTestSuite!

Davide S.

I have spent almost one week investigating this problem with Oracle as I suspected it was related to bugs inside Slide. However, after some checking that everything is alright inside Slide, minutious inspection and tracing of Oracle connections with the nice toad tool and discussions in other mailing lists I now suspect this is indeed an Oracle problem. The solution is to simply keep to the Oracle standard isolation mode and not to use Serializable mode.

Threads about this problem:

Oliver Zeigermann

CreateAnewDatabaseAdapter (last edited 2009-09-20 22:02:45 by localhost)