mirror of https://github.com/apache/openjpa.git
OPENJPA-735: OpenJPA support for SolidDB
git-svn-id: https://svn.apache.org/repos/asf/openjpa/trunk@988341 13f79535-47bb-0310-9956-ffa450edef68
This commit is contained in:
parent
99332850e3
commit
adfa274b34
|
@ -174,6 +174,20 @@ users, but may not support every feature of this release, please refer to the
|
|||
8.3 JDBC3 (build 603), 8.4 JDBC3 (build 701)
|
||||
</entry>
|
||||
</row>
|
||||
<row>
|
||||
<entry colname="dbname">
|
||||
<link linkend="dbsupport_soliddb">IBM solidDB</link>
|
||||
</entry>
|
||||
<entry colname="dbversion">
|
||||
6.5.0.0
|
||||
</entry>
|
||||
<entry colname="drivname">
|
||||
solidDB JDBC Drive
|
||||
</entry>
|
||||
<entry colname="drivversion">
|
||||
2.0
|
||||
</entry>
|
||||
</row>
|
||||
<row>
|
||||
<entry colname="dbname">
|
||||
<link linkend="dbsupport_sybase">Sybase Adaptive Server Enterprise</link>
|
||||
|
@ -483,6 +497,20 @@ databases that have been fully tested against this release, please refer to the
|
|||
8.1
|
||||
</entry>
|
||||
</row>
|
||||
<row>
|
||||
<entry colname="dbname">
|
||||
<link linkend="dbsupport_solidDB">IBM solidDB</link>
|
||||
</entry>
|
||||
<entry colname="dbversion">
|
||||
6.5.0.0
|
||||
</entry>
|
||||
<entry colname="drivname">
|
||||
solidDB JDBC Driver
|
||||
</entry>
|
||||
<entry colname="drivversion">
|
||||
2.0
|
||||
</entry>
|
||||
</row>
|
||||
<row>
|
||||
<entry colname="dbname">
|
||||
<link linkend="dbsupport_sybase">Sybase Adaptive Server Enterprise</link>
|
||||
|
@ -1253,6 +1281,63 @@ supported when using
|
|||
</itemizedlist>
|
||||
</section>
|
||||
</section>
|
||||
|
||||
<section id="dbsupport_soliddb">
|
||||
<title>
|
||||
IBM solidDB
|
||||
</title>
|
||||
<example id="example_props_soliddb">
|
||||
<title>
|
||||
Example properties for IBM solidDB
|
||||
</title>
|
||||
<programlisting>
|
||||
openjpa.ConnectionDriverName: solid.jdbc.SolidDriver
|
||||
openjpa.ConnectionURL: jdbc:solid://localhost:2315/dba/dba
|
||||
</programlisting>
|
||||
</example>
|
||||
<section id="dbsupport_soliddb_table_types">
|
||||
<title>
|
||||
M-type tables vs. D-type tables
|
||||
</title>
|
||||
<para>
|
||||
IBM solidDB supports two types of tables: in-memory tables (M-tables) and
|
||||
on-disk tables (D-tables). Since cursor hold over commit can not apply to M-tables
|
||||
(which will cause SOLID Table Error 13187: The cursor cannot continue
|
||||
accessing M-tables after the transaction has committed or aborted.
|
||||
The statement must be re-executed), the default OpenJPA tables are D-tables.
|
||||
One can set the whole server to disk-based mode by adding
|
||||
[General]
|
||||
DefaultStoreIsMemory=no
|
||||
in solid.ini. The table types can also be determined by setting OpenJPA property
|
||||
"openjpa.jdbc.DBDictionary" with value "storeIsMemory=true" or "storeIsMemory=false"
|
||||
in the persistence.xml. The "STORE MEMORY" and "STORE DISK" will be appended to
|
||||
the create table DDL, respectively.
|
||||
</para>
|
||||
</section>
|
||||
<section id="dbsupport_soliddb_concurrency_control">
|
||||
<title>
|
||||
Concurrency control mechanism
|
||||
</title>
|
||||
<para>
|
||||
The default concurrency control mechanism depends on the table type:
|
||||
Disk-based tables (D-tables) are by default optimistic.
|
||||
Main-memory tables (M-tables) are always pessimistic.
|
||||
Since OpenJPA applications expects lock waits as usually is done with
|
||||
normal pessimistic databases, the server should be set to the pessimistic mode.
|
||||
The optimistic mode is about not waiting for the locks at all. That increases
|
||||
concurrency but requires more programming. The pessimistic mode with the
|
||||
READ COMMITTED isolation level (default) should get as much concurrency as one
|
||||
might need. The pessimistic locking mode can be set in solid.ini:
|
||||
[General]
|
||||
Pessimistic=yes
|
||||
One can override the locking mode on the per table base by setting OpenJPA property
|
||||
"openjpa.jdbc.DBDictionary" to value "lockingMode=PESSIMISTIC" in the persistence.xml.
|
||||
An extra SQL will be generated along with CREATE TABLE DDL:
|
||||
ALTER TABLE EX_POBJECT SET PESSIMISTIC.
|
||||
The possible values for lockingMode is OPTIMISTIC/PESSIMISTIC.
|
||||
</para>
|
||||
</section>
|
||||
</section>
|
||||
<section id="dbsupport_sybase">
|
||||
<title>
|
||||
Sybase Adaptive Server
|
||||
|
|
Loading…
Reference in New Issue