-
Task
-
Resolution: Done
-
Major
-
None
The current JDBC CacheStore implementation has the following shortcomings:
- poor support for vendor specific queries (e.g. MySQL's replace into)
- complex configuration is required to support the key types that cannot be converted to a String easily.
To address this issue:
- Introduce a single unified JDBC CacheStore implementation.
- Support an arbitrary key type as long as it can be serialized via Marshaller.
- Support both text and binary key.
- Encode the binary key into a text key using an efficient text encoding if the target database doesn't support binary key column.
- Provide much more flexibility in supporting vendor specific extensions. Let the user extend our CacheStore implementation and override the DB access (no more TableManipulation).
Once implemented, the existing JDBC CacheStore could be deprecated.
Configuring this would be, for example, GenericJdbcCacheStore which would have no vendor-specific optimisations, and MySqlJdbcCacheStore (subclasses GenericJdbcCacheStore) which would contain MySQL specific optimisations, etc.
- blocks
-
ISPN-686 JdbcStringBasedCacheStore loads previous data from store before an insert
- Closed
-
ISPN-965 Query for loading some rows from CacheStore is not correct for HSQLDB 1.8.0.7
- Closed
-
ISPN-20 check whether locking in JDBC cache stores can be replaced with SELECT FOR UPDATE
- Closed
- relates to
-
ISPN-1592 Jdbc binary cache store throwing conversion error when working with Sybase DB
- Closed
-
ISPN-2082 JdbcStringBasedCacheStore: ORA-24816 when storing BLOB values > 4000 bytes
- Closed
-
ISPN-1204 Make JDBC cache store use implicit schemas for database tables
- Closed