Notice: This Wiki is now read only and edits are no longer possible. Please see: https://gitlab.eclipse.org/eclipsefdn/helpdesk/-/wikis/Wiki-shutdown-plan for the plan.
EclipseLink/Development/DatabasePlatform/MaxDBPlatform
Contents
Description
This is a subclass of DatabasePlatform that can be used by customers using the SAP MaxDB database.
Documentation
Detailed information on SAP MaxDB, documentation and downloads are found at the following locations:
http://www.sdn.sap.com/irj/sdn/maxdb
Forward mapping with EclipseLink assumes that MaxDB is configured for unicode (in version 7.7, this is the default). Unicode mode also needs to be specified in the URL as follows:
jdbc:sapdb://localhost/E32?unicode=yes
The MaxDB platform is configured in the persistence.xml by the following property:
<property name="eclipselink.target-database" value="MaxDB"/>
Limitations of the Platform
- SetQueryTimeout or the hint "javax.persistence.query.timeout" do not work on MaxDB - see bug 326503.
- The hint "javax.persistence.lock.timeout" has no effect with a positive value; a value of 0 is translated to NOWAIT.
- The maximum width of an index is 1024 bytes on MaxDB. This also limits the size of a primary key. Moreover the primary key of join tables must not exceed this limit either. As it is composed of the primary key of the two tables that are joined, the combined width of the PKs of these two tables must not exceed this limit. See bug bug 326968.
- VARCHAR [UNICODE] columns do not preserve trailing spaces - see bug 327435 .
- VARCHAR BYTE does not preserve trailing 0 bytes.
- The hint "javax.persistence.lock.timeout=0" (NOWAIT) has no effect when atempting to pessimistically lock an entity with inheritance type JOINED - see bug 326799 .
Location
Level of Testing
October 19th, 2010
- EclipseLink 2.2.0 (trunk) current build (revision: 8376)
- DB: MaxDB, kernel 7.8.01 build 004-123-218-928
- JDBC driver: MaxDB JDBC Driver, SAP AG, 7.6.06 Build 006-000-009-234 (Make-Version: 7.8.01 Build 003-123-215-703)
Test Name | Tests | Failures | Errors |
---|---|---|---|
Core SRG | 690 | 0 | 1 (*) |
JPA SRG | 202 | 0 | 0 |
JPA WDF | 819 | 0 | 0 |
Core LRG | 7508 | 0 | 2 (*) + 1 |
JPA LRG | 2271 | 0 | 1 (**) |
Server LRG (GlassFish v3) | ? | ? | ? |
(*) Reported as MaxDB JDBC Driver Bug
(**) Reported as MaxDB Bug, investigation pending
Details on Errors/Failures
Core SRG
Test Case: org.eclipse.persistence.testing.tests.SRGTestModel
Test Name | Bug | Description/Reason |
---|---|---|
ScrollableCursorNavigationAPIConformingTest | bug 326646 | cursor.last() does not result in cursor.isLast() returning true. Filed as MaxDB JDBC driver issue 3124858 2010 |
Core LRG
Test Case: org.eclipse.persistence.testing.tests.TestRunModel
Test Name | Bug | Description/Reason |
---|---|---|
ScrollableCursorNavigationAPIConformingTest | bug 326646 | Same as ScrollableCursorNavigationAPIConformingTest in Core SRG (Filed as MaxDB JDBC driver issue 3124858 2010) |
ScrollableCursorNavigationAPIConformingTest | bug 326646 | Same as ScrollableCursorNavigationAPIConformingTest in Core SRG (Filed as MaxDB JDBC driver issue 3124858 2010) |
OneToManyJoinOptimizationTest | OneToManyJoinOptimizationTest Verify Failed:null != [Employee: Jill May] |
JPA LRG
Test Case: org.eclipse.persistence.testing.tests.jpa.AllCMP3TestRunModel
PessimisticLockingExtendedScopeTestSuite
Test Name | Bug | Description/Reason |
---|---|---|
testPESSMISTIC_ES5 | bug 327472 | SQLTransactionRollbackException: [600]: Work rolled back,DEADLOCK DETECTED (Filed as MaxDB issue 3138792 2010) |
Location of tests and examples
No specific tests or examples have been written