Skip to main content

Notice: this Wiki will be going read only early in 2024 and edits will no longer be possible. Please see: https://gitlab.eclipse.org/eclipsefdn/helpdesk/-/wikis/Wiki-shutdown-plan for the plan.

Jump to: navigation, search

Difference between revisions of "EclipseLink/Development/Incubator/Extensions/HANAPlatform"

(Documentation)
(Replacing page with ''''Note: This page has become obsolete as the database platform for SAP HANA Database has been promoted from incubation to the main EclipseLink repository starting with release...')
 
(41 intermediate revisions by the same user not shown)
Line 1: Line 1:
Note: This page describes an extension of EclipseLink that is part of the EclipseLink incubator.  Incubator projects are published so the community can use them either to progress towards having them included in the main product, or to use in their own implementations. They have been tested to varying levels and as such, we recommend doing your own testing before including any of this code in a production-level product.
+
'''Note: This page has become obsolete as the database platform for SAP HANA Database has been promoted from incubation to the main EclipseLink repository starting with release 2.5.0.'''
  
== Bugs ==
+
Information on the HANA database platform is maintained [[EclipseLink/Development/DatabasePlatform/HANAPlatform|here]].
 
+
* <strike>{{bug|380226}}</strike> (Database Platform for SAP HANA Database) - Initial bug for taking HANAPlatform to the incubator (resolved)
+
* {{bug|383862}} (Preparing Database Platform for SAP HANA Database for Promotion into trunk) - Bug for collecting/tracking test issues
+
 
+
==Description==
+
 
+
This is a subclass of DatabasePlatform that can be used by customers using the SAP HANA database.
+
 
+
== Documentation  ==
+
 
+
TBD
+
 
+
=== Limitations of the Platform ===
+
 
+
* Reserved SQL keywords cannot be used as table, column or sequence names. Use a different name, or enclose the name in double quotes. For example: <code>@Column(name="\"LANGUAGE\"")</code>
+
* Pessimistic locking adds 'FOR UPDATE' to the SELECT statement, and cannot be used with queries that use DISTINCT.
+
* Pessimistic locking cannot be used with queries that select from multiple tables.
+
* The LockNoWait option of Pessimistic Locking cannot be used; it is ignored when specified (i.e. only 'FOR UPDATE' is added to the SELECT statement).
+
* Bulk update and delete operations that require multiple tables to be accessed cannot be used (e.g. bulk operation on an entity that is part of an inheritance hierarchy, UpdateAll and DeleteAll queries).
+
* '= NULL' and '<> NULL' cannot be used for null comparisons in the WHERE clause. Use 'IS (NOT) NULL' instead.
+
* Scrollable cursors are not supported - see {{bug|384116}}.
+
* Query timeouts are not supported.
+
 
+
== Location ==
+
 
+
TBD
+
 
+
== Level of Testing ==
+
 
+
=== 9. May 2012 ===
+
 
+
* EclipseLink trunk (Revision: 11315, 8. May 2012) + HANA Platform (commit 42f8f48be32a4c3d4e4fea11425f62e30e2f15b6, 9. May 2012)
+
* DB: SAP HANA 1.00.26.361335
+
* JDBC Driver: SAP In-Memory Database JDBC Driver 1.00.20 Build 0355749-1510
+
 
+
{|{{BMTableStyle}}
+
|-{{BMTHStyle}}
+
! Test Name
+
! Tests
+
! Failures/Errors
+
|- bgcolor="#ffe0e0"
+
| Core SRG || 692 || 1
+
|- bgcolor="#ffe0e0"
+
| JPA SRG || 238 || 8
+
|- bgcolor="#ffe0e0"
+
| JPA WDF || 852 || 1
+
|- bgcolor="#ffe0e0"
+
| Core LRG || 7983 || 10
+
|- bgcolor="#ffe0e0"
+
| JPA LRG || 2720 || 41
+
|- bgcolor="#ffffe0"
+
| Server LRG (GlassFish v3)|| ? || ?
+
|}
+
 
+
==== Details on Errors/Failures ====
+
 
+
===== Core SRG =====
+
 
+
{|{{BMTableStyle}}
+
|-{{BMTHStyle}}
+
! Test Name
+
! Bug
+
! Description/Reason
+
|- bgcolor="#ffe0e0"
+
| org.eclipse.persistence.testing.tests.expressions.ReadAllExpressionTest.ExpressionFunctionTest || n/a || Invalid operator \[platform operator - Cast\] in expression
+
|}
+
 
+
===== JPA SRG =====
+
{|{{BMTableStyle}}
+
|-{{BMTHStyle}}
+
! Test Name
+
! Bug
+
! Description/Reason
+
|- bgcolor="#ffe0e0"
+
| org.eclipse.persistence.testing.tests.jpa.advanced.EntityManagerJUnitTestSuite.testPESSIMISTIC_ExtendedScope || n/a || FOR UPDATE clause is not allowed here because of subquery or join in FROM clause
+
|- bgcolor="#ffe0e0"
+
| org.eclipse.persistence.testing.tests.jpa.advanced.EntityManagerJUnitTestSuite.testPESSIMISTIC_FORCE_INCREMENTLock || n/a || FOR UPDATE clause is not allowed here because of subquery or join in FROM clause
+
|- bgcolor="#ffe0e0"
+
| org.eclipse.persistence.testing.tests.jpa.advanced.EntityManagerJUnitTestSuite.testPESSIMISTIC_READLockWithNoChanges || n/a || FOR UPDATE clause is not allowed here because of subquery or join in FROM clause
+
|- bgcolor="#ffe0e0"
+
| org.eclipse.persistence.testing.tests.jpa.advanced.EntityManagerJUnitTestSuite.testPESSIMISTIC_WRITELockWithNoChanges || n/a || FOR UPDATE clause is not allowed here because of subquery or join in FROM clause
+
|- bgcolor="#ffe0e0"
+
| org.eclipse.persistence.testing.tests.jpa.advanced.EntityManagerJUnitTestSuite.testPessimisticLockHintStartsTransaction || n/a || FOR UPDATE clause is not allowed here because of subquery or join in FROM clause
+
|- bgcolor="#ffe0e0"
+
| org.eclipse.persistence.testing.tests.jpa.advanced.EntityManagerJUnitTestSuite.testSequenceObjectDefinition || n/a || Transaction is currently active
+
|- bgcolor="#ffe0e0"
+
| org.eclipse.persistence.testing.tests.jpa.advanced.EntityManagerJUnitTestSuite.testUpdateUsingTempStorage || n/a || Query requires temporary storage, but HANAPlatform doesn't support temporary tables |
+
|- bgcolor="#ffe0e0"
+
| org.eclipse.persistence.testing.tests.jpa.advanced.EntityManagerJUnitTestSuite.testUpdateUsingTempStorageWithParameter || n/a || Query requires temporary storage, but HANAPlatform doesn't support temporary tables
+
|}
+
 
+
===== JPA WDF =====
+
 
+
{|{{BMTableStyle}}
+
|-{{BMTHStyle}}
+
! Test Name
+
! Bug
+
! Description/Reason
+
|- bgcolor="#ffe0e0"
+
| org.eclipse.persistence.testing.tests.wdf.jpa1.generator.TestSequence.testAllocSize || n/a || wrong allocation expected:<4> but was:<2>
+
|}
+
 
+
===== Core LRG =====
+
 
+
{|{{BMTableStyle}}
+
|-{{BMTHStyle}}
+
! Test Name
+
! Bug
+
! Description/Reason
+
|- bgcolor="#ffe0e0"
+
| org.eclipse.persistence.testing.tests.expressions.ReadAllExpressionTest.ExpressionFunctionTest || n/a || Invalid operator \[platform operator - Cast\] in expression
+
|- bgcolor="#ffe0e0"
+
| org.eclipse.persistence.testing.tests.queries.QueryFrameworkTestSuite$5.JoinSubclassesQueryTest || n/a || Invalid argument resultSetType, use TYPE_FORWARD_ONLY
+
|- bgcolor="#ffe0e0"
+
| org.eclipse.persistence.testing.tests.queries.QueryFrameworkTestSuite$2.UnionTest || n/a || Invalid operator \[platform operator - UNION\] in expression
+
|- bgcolor="#ffe0e0"
+
| org.eclipse.persistence.testing.tests.feature.CacheStatementBatchWritingTest.CacheStatementBatchWritingTest || n/a || Statements were not cached correctly
+
|}
+
 
+
===== JPA LRG =====
+
 
+
{|{{BMTableStyle}}
+
|-{{BMTHStyle}}
+
! Test Name
+
! Bug
+
! Description/Reason
+
|- bgcolor="#ffe0e0"
+
| org.eclipse.persistence.testing.tests.jpa.advanced.EntityManagerJUnitTestSuite.testPESSIMISTIC_ExtendedScope || n/a || FOR UPDATE clause is not allowed here because of subquery or join in FROM clause
+
|- bgcolor="#ffe0e0"
+
| org.eclipse.persistence.testing.tests.jpa.advanced.EntityManagerJUnitTestSuite.testPESSIMISTIC_FORCE_INCREMENTLock || n/a || FOR UPDATE clause is not allowed here because of subquery or join in FROM clause
+
|- bgcolor="#ffe0e0"
+
| org.eclipse.persistence.testing.tests.jpa.advanced.EntityManagerJUnitTestSuite.testPESSIMISTIC_READLockWithNoChanges || n/a || FOR UPDATE clause is not allowed here because of subquery or join in FROM clause
+
|- bgcolor="#ffe0e0"
+
| org.eclipse.persistence.testing.tests.jpa.advanced.EntityManagerJUnitTestSuite.testPESSIMISTIC_WRITELockWithNoChanges || n/a || FOR UPDATE clause is not allowed here because of subquery or join in FROM clause
+
|- bgcolor="#ffe0e0"
+
| org.eclipse.persistence.testing.tests.jpa.advanced.EntityManagerJUnitTestSuite.testPessimisticLockHintStartsTransaction || n/a || FOR UPDATE clause is not allowed here because of subquery or join in FROM clause
+
|- bgcolor="#ffe0e0"
+
| org.eclipse.persistence.testing.tests.jpa.advanced.EntityManagerJUnitTestSuite.testSequenceObjectDefinition || n/a || Transaction is currently active
+
|- bgcolor="#ffe0e0"
+
| org.eclipse.persistence.testing.tests.jpa.advanced.EntityManagerJUnitTestSuite.testUpdateUsingTempStorage || n/a || Query requires temporary storage, but HANAPlatform doesn't support temporary tables
+
|- bgcolor="#ffe0e0"
+
| org.eclipse.persistence.testing.tests.jpa.advanced.EntityManagerJUnitTestSuite.testUpdateUsingTempStorageWithParameter || n/a || Query requires temporary storage, but HANAPlatform doesn't support temporary tables
+
|- bgcolor="#ffe0e0"
+
| org.eclipse.persistence.testing.tests.jpa.advanced.JPAAdvancedTestModel.JPAAdvancedTestModel || n/a || platform DatabasePlatform does not support NativeSequence
+
|- bgcolor="#ffe0e0"
+
| org.eclipse.persistence.testing.tests.jpa.advanced.PessimisticLockingExtendedScopeTestSuite.testPESSMISTIC_ES4 || n/a || FOR UPDATE clause is not allowed here because of subquery or join in FROM clause
+
|- bgcolor="#ffe0e0"
+
| org.eclipse.persistence.testing.tests.jpa.advanced.PessimisticLockingExtendedScopeTestSuite.testPESSMISTIC_ES8 || n/a || FOR UPDATE clause is not allowed here because of subquery or join in FROM clause
+
|- bgcolor="#ffe0e0"
+
| org.eclipse.persistence.testing.tests.jpa.advanced.PessimisticLockingExtendedScopeTestSuite.testPESSMISTIC_ES9 || n/a || FOR UPDATE clause is not allowed here because of subquery or join in FROM clause
+
|- bgcolor="#ffe0e0"
+
| org.eclipse.persistence.testing.tests.jpa.advanced.UpdateAllQueryAdvancedJunitTest.testFirstNamePrefixBLADoubleSalaryForSalaryForFirstName || n/a || Query requires temporary storage, but HANAPlatform doesn't support temporary tables
+
|- bgcolor="#ffe0e0"
+
| org.eclipse.persistence.testing.tests.jpa.complexaggregate.CMP3ComplexAggregateTestModel.CMP3ComplexAggregateTestModel || n/a || XML_MERGE_PROJECT_SEQ: platform DatabasePlatform does not support NativeSequence
+
|- bgcolor="#ffe0e0"
+
| org.eclipse.persistence.testing.tests.jpa.composite.advanced.EntityManagerJUnitTestSuite.testGetLockModeType || n/a || FOR UPDATE clause is not allowed here because of subquery or join in FROM clause
+
|- bgcolor="#ffe0e0"
+
| org.eclipse.persistence.testing.tests.jpa.composite.advanced.EntityManagerJUnitTestSuite.testLockWithJoinedInheritanceStrategy || n/a || FOR UPDATE clause is not allowed here because of subquery or join in FROM clause
+
|- bgcolor="#ffe0e0"
+
| org.eclipse.persistence.testing.tests.jpa.composite.advanced.EntityManagerJUnitTestSuite.testPESSIMISTIC_FORCE_INCREMENTLock || n/a || FOR UPDATE clause is not allowed here because of subquery or join in FROM clause
+
|- bgcolor="#ffe0e0"
+
| org.eclipse.persistence.testing.tests.jpa.composite.advanced.EntityManagerJUnitTestSuite.testPESSIMISTIC_READLockWithNoChanges || n/a || FOR UPDATE clause is not allowed here because of subquery or join in FROM clause
+
|- bgcolor="#ffe0e0"
+
| org.eclipse.persistence.testing.tests.jpa.composite.advanced.EntityManagerJUnitTestSuite.testPESSIMISTIC_WRITELockWithNoChanges || n/a || FOR UPDATE clause is not allowed here because of subquery or join in FROM clause
+
|- bgcolor="#ffe0e0"
+
| org.eclipse.persistence.testing.tests.jpa.composite.advanced.EntityManagerJUnitTestSuite.testPessimisticLockHintStartsTransaction || n/a || FOR UPDATE clause is not allowed here because of subquery or join in FROM clause
+
|- bgcolor="#ffe0e0"
+
| org.eclipse.persistence.testing.tests.jpa.composite.advanced.EntityManagerJUnitTestSuite.testSequenceObjectDefinition || n/a || cannot use duplicate sequence name: TESTCOMPSEQOBJECTDEFINITION
+
|- bgcolor="#ffe0e0"
+
| org.eclipse.persistence.testing.tests.jpa.criteria.AdvancedCriteriaQueryTestSuite.testCursors || n/a || Invalid argument resultSetType, use TYPE_FORWARD_ONLY
+
|- bgcolor="#ffe0e0"
+
| org.eclipse.persistence.testing.tests.jpa.criteria.AdvancedQueryTestSuite.testCursors || n/a || Invalid argument resultSetType, use TYPE_FORWARD_ONLY
+
|- bgcolor="#ffe0e0"
+
| org.eclipse.persistence.testing.tests.jpa.ddlgeneration.DDLGenerationExtendTablesJUnitTestSuite.testDDLUniqueKeysAsJoinColumns || n/a || invalid column name: B_CODE
+
|- bgcolor="#ffe0e0"
+
| org.eclipse.persistence.testing.tests.jpa.ddlgeneration.DDLGenerationExtendTablesJUnitTestSuite.testManyToManyWithMultipleJoinColumns || n/a || invalid column name: B_CODE
+
|- bgcolor="#ffe0e0"
+
| org.eclipse.persistence.testing.tests.jpa.ddlgeneration.DDLGenerationExtendTablesJUnitTestSuite.testPrimaryKeyJoinColumns || n/a || invalid column name: NAME
+
|- bgcolor="#ffe0e0"
+
| org.eclipse.persistence.testing.tests.jpa.fieldaccess.advanced.EntityManagerJUnitTestSuite.testSequenceObjectDefinition || n/a || cannot use duplicate sequence name: TESTFASEQOBJECTSDEFINITION
+
|- bgcolor="#ffe0e0"
+
| org.eclipse.persistence.testing.tests.jpa.fieldaccess.advanced.EntityManagerJUnitTestSuite.testUpdateUsingTempStorage || n/a || Query requires temporary storage, but HANAPlatform doesn't support temporary tables
+
|- bgcolor="#ffe0e0"
+
| org.eclipse.persistence.testing.tests.jpa.fieldaccess.advanced.EntityManagerJUnitTestSuite.testUpdateUsingTempStorageWithParameter || n/a || Query requires temporary storage, but HANAPlatform doesn't support temporary tables
+
|- bgcolor="#ffe0e0"
+
| org.eclipse.persistence.testing.tests.jpa.fieldaccess.advanced.UpdateAllQueryAdvancedJunitTest.testFirstNamePrefixBLADoubleSalaryForSalaryForFirstName || n/a || Query requires temporary storage, but HANAPlatform doesn't support temporary tables
+
|- bgcolor="#ffe0e0"
+
| org.eclipse.persistence.testing.tests.jpa.inheritance.CMP3InheritanceTestModel.CMP3InheritanceTestModel || n/a || XML_MERGE_PROJECT_SEQ: platform DatabasePlatform does not support NativeSequence
+
|- bgcolor="#ffe0e0"
+
| org.eclipse.persistence.testing.tests.jpa.jpql.AdvancedQueryTestSuite.testCursors || n/a || Invalid argument resultSetType, use TYPE_FORWARD_ONLY
+
|- bgcolor="#ffe0e0"
+
| org.eclipse.persistence.testing.tests.jpa.jpql.AdvancedQueryTestSuite.testLockWithSecondaryTable || n/a || Transaction rolled back because transaction was set to RollbackOnly
+
|- bgcolor="#ffe0e0"
+
| org.eclipse.persistence.testing.tests.jpa.jpql.AdvancedQueryTestSuite.testQueryPESSIMISTIC_FORCE_INCREMENTLock || n/a || FOR UPDATE clause is not allowed here because of subquery or join in FROM clause
+
|- bgcolor="#ffe0e0"
+
| org.eclipse.persistence.testing.tests.jpa.jpql.AdvancedQueryTestSuite.testQueryPESSIMISTIC_READLock || n/a || Transaction rolled back because transaction was set to RollbackOnly
+
|- bgcolor="#ffe0e0"
+
| org.eclipse.persistence.testing.tests.jpa.jpql.AdvancedQueryTestSuite.testQueryPESSIMISTIC_WRITELock || n/a || Transaction rolled back because transaction was set to RollbackOnly
+
|- bgcolor="#ffe0e0"
+
| org.eclipse.persistence.testing.tests.jpa.jpql.JUnitJPQLComplexTestSuite.testCast || n/a || Invalid operator \[platform operator - Cast\] in expression
+
|- bgcolor="#ffe0e0"
+
| org.eclipse.persistence.testing.tests.jpa.jpql.JUnitJPQLComplexTestSuite.testExtract || n/a || Invalid operator \[platform operator - Extract\] in expression
+
|- bgcolor="#ffe0e0"
+
| org.eclipse.persistence.testing.tests.jpa.jpql.JUnitJPQLComplexTestSuite.testPessimisticLock || n/a || FOR UPDATE clause is not allowed here because of subquery or join in FROM clause
+
|- bgcolor="#ffe0e0"
+
| org.eclipse.persistence.testing.tests.jpa.jpql.JUnitJPQLComplexTestSuite.testSubselectInFrom || n/a || Invalid query key \[count\] in expression
+
|- bgcolor="#ffe0e0"
+
| org.eclipse.persistence.testing.tests.jpa.jpql.JUnitJPQLComplexTestSuite.testUnion || n/a || Invalid operator \[platform operator - UNION\] in expression
+
|}
+
 
+
== Location of tests and examples==
+
 
+
No specific tests or examples have been written
+

Latest revision as of 04:51, 5 March 2013

Note: This page has become obsolete as the database platform for SAP HANA Database has been promoted from incubation to the main EclipseLink repository starting with release 2.5.0.

Information on the HANA database platform is maintained here.

Back to the top