| <html> |
| <title>Release Notes for OpenJPA</title> |
| <body> |
| <h1>Release Notes for OpenJPA</h1> |
| |
| <ul> |
| <li><a href="#Overview">Overview</a></li> |
| <li><a href="#License">License</a></li> |
| <li><a href="#Prerequisites">Prerequisites</a></li> |
| <li><a href="#Documentation">Documentation</a></li> |
| <li><a href="#GetInvolved">Getting Involved</a></li> |
| <li><a href="#Sub-task">Sub-task</a></li> |
| <li><a href="#Bug">Bug</a></li> |
| <li><a href="#Improvement">Improvement</a></li> |
| <li><a href="#New Feature">New Feature</a></li> |
| <li><a href="#Previous">RELEASE-NOTES for previous releases</a></li> |
| </ul> |
| |
| <h2><a name="Overview"></a>Overview</h2> |
| |
| <p> These notes describe the difference between OpenJPA release 1.2.0 |
| and the preceding releases: 1.0.0 and 1.1.0. |
| <P> |
| OpenJPA is a feature-rich implementation of the persistence part of |
| Java Community Process JSR-220 (Enterprise JavaBeans 3.0), which is |
| known as the Java Persistence API (JPA). |
| OpenJPA can be used as a stand-alone POJO persistence layer, or it can be |
| integrated into any EJB3.0 compliant container and many lightweight frameworks. |
| This release of OpenJPA is 100% compliant with the JPA specification. |
| </p> |
| |
| <p> |
| Additional information on the OpenJPA project may be found at the project web |
| site: <a href="http://openjpa.apache.org"> |
| http://openjpa.apache.org</a> |
| |
| <h2><a name="License"></a>License</h2> |
| <P>Licensed to the Apache Software Foundation (ASF) under one |
| or more contributor license agreements. See the NOTICE file |
| distributed with this work for additional information |
| regarding copyright ownership. The ASF licenses this file |
| to you under the Apache License, Version 2.0 (the |
| "License"); you may not use this file except in compliance |
| with the License. You may obtain a copy of the License at |
| |
| <BR><P><a href="http://www.apache.org/licenses/LICENSE-2.0"> |
| http://www.apache.org/licenses/LICENSE-2.0</a> |
| |
| <BR><P>Unless required by applicable law or agreed to in writing, |
| software distributed under the License is distributed on an |
| "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY |
| KIND, either express or implied. See the License for the |
| specific language governing permissions and limitations |
| under the License. |
| |
| <BR><P>The license may also be found in LICENSE.txt which is included |
| in each release of OpenJPA. |
| |
| <h2><a name="Prerequisites"></a>Prerequisites</h2> |
| <P> |
| In normal usage, OpenJPA requires Java 5 or higher and a relational |
| database of some sort. |
| |
| <h2><a name="Documentation"></a>Documentation</h2> |
| <p>If you have questions about OpenJPA, a good source of information is the |
| online product manual. You can find the manual for the current release as well |
| as older releases of OpenJPA at |
| <a href="http://openjpa.apache.org/documentation.html"> |
| http://openjpa.apache.org/documentation.html</a> |
| <p>If you can't find what you're looking for in the manual or would like more |
| clarification you please post to the OpenJPA development mailing list. |
| Information on all of the OpenJPA mailing lists may be found here: |
| <a href="http://openjpa.apache.org/mailing-lists.html"> |
| http://openjpa.apache.org/mailing-lists.html</a> |
| |
| <p> |
| <h2><a name="GetInvolved"></a>Getting Involved</h2> |
| <p> |
| The Apache OpenJPA project is being built by the open source community for the |
| open source community - we welcome your input and contributions! |
| <P> |
| What we are looking for |
| <ul> |
| <li> Source code and fixes contributions </li> |
| <li> Documentation assistance </li> |
| <li> Product and feature suggestions </li> |
| <li> Detailed and constructive feedback </li> |
| <li> Articles and whitepapers </li> |
| </ul> |
| <p> |
| How do I Contribute? |
| <ul> |
| <li> To discuss Apache OpenJPA topics check out the mailing lists. </li> |
| <li> Informal discussion also occurs on the #openjpa IRC channel on |
| freenode.net. </li> |
| <li> Bugs and other issues can be posted on the project JIRA. </li> |
| </ul> |
| |
| |
| Release Notes - OpenJPA - Version 1.2.0 |
| |
| <h2><a name='Sub-task'> Sub-task |
| </h2> |
| <ul> |
| <li>[<a href='https://issues.apache.org/jira/browse/OPENJPA-159'>OPENJPA-159</a>] - Make ManagedRuntime amenable to more transaction execution strategies |
| </li> |
| <li>[<a href='https://issues.apache.org/jira/browse/OPENJPA-545'>OPENJPA-545</a>] - Replace UUID implementation with JDK 5 alternatives |
| </li> |
| <li>[<a href='https://issues.apache.org/jira/browse/OPENJPA-575'>OPENJPA-575</a>] - Use do priv for to get CL for Oracle empty blob/clob |
| </li> |
| <li>[<a href='https://issues.apache.org/jira/browse/OPENJPA-591'>OPENJPA-591</a>] - Entities are flushed before being detached or serialized |
| </li> |
| <li>[<a href='https://issues.apache.org/jira/browse/OPENJPA-598'>OPENJPA-598</a>] - Make BatchingPreparedStatementManagerImpl more flexible and extensible |
| </li> |
| <li>[<a href='https://issues.apache.org/jira/browse/OPENJPA-616'>OPENJPA-616</a>] - InMemoryUpdate support for functions returning numeric value such as ABS, SQRT, SIZE etc. |
| </li> |
| <li>[<a href='https://issues.apache.org/jira/browse/OPENJPA-648'>OPENJPA-648</a>] - Table generator uses incorrect schema name |
| </li> |
| <li>[<a href='https://issues.apache.org/jira/browse/OPENJPA-661'>OPENJPA-661</a>] - Duplicate files included in binary assembly when using docbook-plugin |
| </li> |
| </ul> |
| |
| <h2><a name='Bug'> Bug |
| </h2> |
| <ul> |
| <li>[<a href='https://issues.apache.org/jira/browse/OPENJPA-20'>OPENJPA-20</a>] - Query can return embeddable class |
| </li> |
| <li>[<a href='https://issues.apache.org/jira/browse/OPENJPA-44'>OPENJPA-44</a>] - metadata-complete element in orm.xml is ignored |
| </li> |
| <li>[<a href='https://issues.apache.org/jira/browse/OPENJPA-51'>OPENJPA-51</a>] - bad sql pushdown, sub select is missing from clause |
| </li> |
| <li>[<a href='https://issues.apache.org/jira/browse/OPENJPA-112'>OPENJPA-112</a>] - Native queries and named parameters: poor error message |
| </li> |
| <li>[<a href='https://issues.apache.org/jira/browse/OPENJPA-209'>OPENJPA-209</a>] - Query returning 2 entities w/unidir 1-1 relationship gets openjpa.persistence.ArgumentException: Address with the same id already exists in the L1 cache. |
| </li> |
| <li>[<a href='https://issues.apache.org/jira/browse/OPENJPA-210'>OPENJPA-210</a>] - Query returning 2 entities w/1-1 relationship returns wrong types in the result list |
| </li> |
| <li>[<a href='https://issues.apache.org/jira/browse/OPENJPA-220'>OPENJPA-220</a>] - Examples of using ElementJoinColumn show the wrong usage |
| </li> |
| <li>[<a href='https://issues.apache.org/jira/browse/OPENJPA-241'>OPENJPA-241</a>] - Extra SQL on lazy CMR load |
| </li> |
| <li>[<a href='https://issues.apache.org/jira/browse/OPENJPA-286'>OPENJPA-286</a>] - Can't merge detached One-To-Many child instance. The entities were implement by an internal Hash container. |
| </li> |
| <li>[<a href='https://issues.apache.org/jira/browse/OPENJPA-340'>OPENJPA-340</a>] - @UniqueConstraint and corresponding XML ignored |
| </li> |
| <li>[<a href='https://issues.apache.org/jira/browse/OPENJPA-349'>OPENJPA-349</a>] - No object inserted if entity only contain ID attribute and set to IDENTITY |
| </li> |
| <li>[<a href='https://issues.apache.org/jira/browse/OPENJPA-365'>OPENJPA-365</a>] - Unexpected behavior on finding a Composite Key entity with a single value. |
| </li> |
| <li>[<a href='https://issues.apache.org/jira/browse/OPENJPA-393'>OPENJPA-393</a>] - @Column(nullable=false) setting not taken into account for String field values |
| </li> |
| <li>[<a href='https://issues.apache.org/jira/browse/OPENJPA-442'>OPENJPA-442</a>] - JIRA-407 introduced backward compatibility problem in QueryImpl |
| </li> |
| <li>[<a href='https://issues.apache.org/jira/browse/OPENJPA-456'>OPENJPA-456</a>] - Missed to validate the column name length for Join Column |
| </li> |
| <li>[<a href='https://issues.apache.org/jira/browse/OPENJPA-458'>OPENJPA-458</a>] - OpenJPA doesn't throw standard JPA exceptions |
| </li> |
| <li>[<a href='https://issues.apache.org/jira/browse/OPENJPA-459'>OPENJPA-459</a>] - Problem with bulk updates in mySQL |
| </li> |
| <li>[<a href='https://issues.apache.org/jira/browse/OPENJPA-462'>OPENJPA-462</a>] - OptimisticException is thrown instead of OptimisticLockException |
| </li> |
| <li>[<a href='https://issues.apache.org/jira/browse/OPENJPA-470'>OPENJPA-470</a>] - Custom sequences specified via @SequenceGenerator must have parentheses at the end of the class name |
| </li> |
| <li>[<a href='https://issues.apache.org/jira/browse/OPENJPA-494'>OPENJPA-494</a>] - Single Table Inheritance Strategy causes errors when reading entities from the database (discriminator problem) |
| </li> |
| <li>[<a href='https://issues.apache.org/jira/browse/OPENJPA-504'>OPENJPA-504</a>] - Duplicate order numbers in relationshiptable for the same List field |
| </li> |
| <li>[<a href='https://issues.apache.org/jira/browse/OPENJPA-533'>OPENJPA-533</a>] - Bulk update can`t set null embedded object |
| </li> |
| <li>[<a href='https://issues.apache.org/jira/browse/OPENJPA-565'>OPENJPA-565</a>] - Duplicate @NamedQuery terminates subsequent @NameQuery definitions in @NamedQueries |
| </li> |
| <li>[<a href='https://issues.apache.org/jira/browse/OPENJPA-567'>OPENJPA-567</a>] - @OrderColumn generates duplicate order numbers. |
| </li> |
| <li>[<a href='https://issues.apache.org/jira/browse/OPENJPA-572'>OPENJPA-572</a>] - Merge operation fails with IdClass composite key |
| </li> |
| <li>[<a href='https://issues.apache.org/jira/browse/OPENJPA-573'>OPENJPA-573</a>] - JPQL: The combination LIKE ESCAPE does not accept parameters |
| </li> |
| <li>[<a href='https://issues.apache.org/jira/browse/OPENJPA-574'>OPENJPA-574</a>] - Cached object in DataCache not evicted due to StatementBatching not reporting OptimisticException |
| </li> |
| <li>[<a href='https://issues.apache.org/jira/browse/OPENJPA-581'>OPENJPA-581</a>] - JNDI lookup failures are not generating useful messages |
| </li> |
| <li>[<a href='https://issues.apache.org/jira/browse/OPENJPA-586'>OPENJPA-586</a>] - Binding Query parameter fails validation for Externalized field |
| </li> |
| <li>[<a href='https://issues.apache.org/jira/browse/OPENJPA-589'>OPENJPA-589</a>] - Can not retrieve M-to-M data when DataCache is on |
| </li> |
| <li>[<a href='https://issues.apache.org/jira/browse/OPENJPA-590'>OPENJPA-590</a>] - The push-down sql for JPQL has unpredictable ordering in the set clause for update statement |
| </li> |
| <li>[<a href='https://issues.apache.org/jira/browse/OPENJPA-594'>OPENJPA-594</a>] - Incorrect schema separator used for Informix tables |
| </li> |
| <li>[<a href='https://issues.apache.org/jira/browse/OPENJPA-595'>OPENJPA-595</a>] - An error occurred while parsing the query filter "SELECT t FROM PessimisticA t WHERE t.id = ?1". Error message: No field named "id" in class "t" |
| </li> |
| <li>[<a href='https://issues.apache.org/jira/browse/OPENJPA-596'>OPENJPA-596</a>] - ClassCastException during in-memory update with Informix IDS 10.0 |
| </li> |
| <li>[<a href='https://issues.apache.org/jira/browse/OPENJPA-602'>OPENJPA-602</a>] - NullPointerException at org.apache.openjpa.jdbc.meta.strats.RelationToManyInverseKeyFieldStrategy.map |
| </li> |
| <li>[<a href='https://issues.apache.org/jira/browse/OPENJPA-605'>OPENJPA-605</a>] - Informix will throw an exception when a unique index is explictily created on the primary key columns |
| </li> |
| <li>[<a href='https://issues.apache.org/jira/browse/OPENJPA-606'>OPENJPA-606</a>] - InformixDictionary default setting beaks many testcases |
| </li> |
| <li>[<a href='https://issues.apache.org/jira/browse/OPENJPA-607'>OPENJPA-607</a>] - Extraneous "( )" on DISTINCT, ALL, ANY results in SQL syntax errors on some database systems |
| </li> |
| <li>[<a href='https://issues.apache.org/jira/browse/OPENJPA-612'>OPENJPA-612</a>] - Add support for calculating update value in QueryImpl.updateInMemory |
| </li> |
| <li>[<a href='https://issues.apache.org/jira/browse/OPENJPA-614'>OPENJPA-614</a>] - SqlServer does not support Timestamp precision in nano second |
| </li> |
| <li>[<a href='https://issues.apache.org/jira/browse/OPENJPA-617'>OPENJPA-617</a>] - Use of hardcoded DB platform strings should be avoided |
| </li> |
| <li>[<a href='https://issues.apache.org/jira/browse/OPENJPA-619'>OPENJPA-619</a>] - Typos in the manual |
| </li> |
| <li>[<a href='https://issues.apache.org/jira/browse/OPENJPA-622'>OPENJPA-622</a>] - Informix -lock timieout, cursor not open problem for NonJTA datasource transaction RESOURCE_LOCAL in JEE |
| </li> |
| <li>[<a href='https://issues.apache.org/jira/browse/OPENJPA-625'>OPENJPA-625</a>] - Error when removing embeddable entities from a persistent collection |
| </li> |
| <li>[<a href='https://issues.apache.org/jira/browse/OPENJPA-629'>OPENJPA-629</a>] - When creating foreign keys the schema name is not trimmed for WS before checking DB |
| </li> |
| <li>[<a href='https://issues.apache.org/jira/browse/OPENJPA-630'>OPENJPA-630</a>] - Honor batchlimit=1 in statement batching support. |
| </li> |
| <li>[<a href='https://issues.apache.org/jira/browse/OPENJPA-634'>OPENJPA-634</a>] - SQLException not reported from Batched statement |
| </li> |
| <li>[<a href='https://issues.apache.org/jira/browse/OPENJPA-637'>OPENJPA-637</a>] - Significant performance degradation when data cache is enabled |
| </li> |
| <li>[<a href='https://issues.apache.org/jira/browse/OPENJPA-642'>OPENJPA-642</a>] - Sybase create foreign key on delete set null failed with syntax error |
| </li> |
| <li>[<a href='https://issues.apache.org/jira/browse/OPENJPA-644'>OPENJPA-644</a>] - Handle databaseProductVersion string from newer jcc driver for DB2 ISeries |
| </li> |
| <li>[<a href='https://issues.apache.org/jira/browse/OPENJPA-647'>OPENJPA-647</a>] - Dynamic update to DataCacheTimeout property is not updated in the ClassMetadata |
| </li> |
| <li>[<a href='https://issues.apache.org/jira/browse/OPENJPA-653'>OPENJPA-653</a>] - Concurrency issue with query cache enabled |
| </li> |
| <li>[<a href='https://issues.apache.org/jira/browse/OPENJPA-656'>OPENJPA-656</a>] - Incorrect connection URL causes NPE when using JDBC Driver |
| </li> |
| <li>[<a href='https://issues.apache.org/jira/browse/OPENJPA-657'>OPENJPA-657</a>] - Compile error: "The method getTextContent() is undefined for the type Node" |
| </li> |
| <li>[<a href='https://issues.apache.org/jira/browse/OPENJPA-659'>OPENJPA-659</a>] - No state snapshot is available on @Embedded class when using runtime enhancement via spring-tomcat-weaver |
| </li> |
| <li>[<a href='https://issues.apache.org/jira/browse/OPENJPA-660'>OPENJPA-660</a>] - ClassCastException when using OneToMany Relation and collection is subclass using Discriminator with SINGLE_TABLE strategy. |
| </li> |
| <li>[<a href='https://issues.apache.org/jira/browse/OPENJPA-664'>OPENJPA-664</a>] - OpenJPA should prohibit when the name of a schema components such as Table, Column, Constraint exceeds maximum permissible length for the database platform |
| </li> |
| <li>[<a href='https://issues.apache.org/jira/browse/OPENJPA-665'>OPENJPA-665</a>] - OpenJPA allows commit where fields with @Column(nullable=false) set to null |
| </li> |
| <li>[<a href='https://issues.apache.org/jira/browse/OPENJPA-668'>OPENJPA-668</a>] - Test failures with IBM JDK (xml parsing) |
| </li> |
| <li>[<a href='https://issues.apache.org/jira/browse/OPENJPA-669'>OPENJPA-669</a>] - NativeSequences can be incremented within the business transaction |
| </li> |
| <li>[<a href='https://issues.apache.org/jira/browse/OPENJPA-670'>OPENJPA-670</a>] - Discriminator column is missing from table when inheritance is used without annotation |
| </li> |
| </ul> |
| |
| <h2><a name='Improvement'> Improvement |
| </h2> |
| <ul> |
| <li>[<a href='https://issues.apache.org/jira/browse/OPENJPA-149'>OPENJPA-149</a>] - non-jta-data-source must be specified in WebSphere environments |
| </li> |
| <li>[<a href='https://issues.apache.org/jira/browse/OPENJPA-235'>OPENJPA-235</a>] - SQL reordering to avoid non-nullable foreign key constraint violations |
| </li> |
| <li>[<a href='https://issues.apache.org/jira/browse/OPENJPA-407'>OPENJPA-407</a>] - Cache SQL (or closer precursors to SQL) more aggressively |
| </li> |
| <li>[<a href='https://issues.apache.org/jira/browse/OPENJPA-515'>OPENJPA-515</a>] - OpenJPA extension for distributed databases |
| </li> |
| <li>[<a href='https://issues.apache.org/jira/browse/OPENJPA-570'>OPENJPA-570</a>] - Misleading "Found duplicate query" warning message |
| </li> |
| <li>[<a href='https://issues.apache.org/jira/browse/OPENJPA-578'>OPENJPA-578</a>] - Specifying a default for VersionStrategy in persistence.xml has no effect when a version field is present in the entity class. |
| </li> |
| <li>[<a href='https://issues.apache.org/jira/browse/OPENJPA-584'>OPENJPA-584</a>] - OpenJPA-149 changes are not IDE friendly |
| </li> |
| <li>[<a href='https://issues.apache.org/jira/browse/OPENJPA-601'>OPENJPA-601</a>] - Remove connection requirement for build action in SchemaTool |
| </li> |
| <li>[<a href='https://issues.apache.org/jira/browse/OPENJPA-604'>OPENJPA-604</a>] - Log spec sets in persistence unit's property fail with exception when run in different locale |
| </li> |
| <li>[<a href='https://issues.apache.org/jira/browse/OPENJPA-631'>OPENJPA-631</a>] - Report detailed message when executeBatch throws SQLException for DB2 |
| </li> |
| <li>[<a href='https://issues.apache.org/jira/browse/OPENJPA-633'>OPENJPA-633</a>] - Update the release process to use maven plugins |
| </li> |
| <li>[<a href='https://issues.apache.org/jira/browse/OPENJPA-666'>OPENJPA-666</a>] - MS SQL Server 2005 does not support native sequences. |
| </li> |
| <li>[<a href='https://issues.apache.org/jira/browse/OPENJPA-667'>OPENJPA-667</a>] - Documentaion on configuration properties should link to corresponding JavaDoc method description |
| </li> |
| </ul> |
| |
| <h2><a name='New Feature'> New Feature |
| </h2> |
| <ul> |
| <li>[<a href='https://issues.apache.org/jira/browse/OPENJPA-187'>OPENJPA-187</a>] - MEMBER OF query fails on OpenJPA, but works fine with TopLink and Hibernate EM |
| </li> |
| <li>[<a href='https://issues.apache.org/jira/browse/OPENJPA-305'>OPENJPA-305</a>] - Dynamic configuration of EntityManagerFactory |
| </li> |
| </ul> |
| |
| |
| <h2><a name="Previous"></a> Previous Releases |
| </h2> |
| Release notes for earlier releases of OpenJPA may be found in SVN at the following locations. |
| <li><a href='http://svn.apache.org/viewvc/openjpa/tags/1.1.0/openjpa-project/RELEASE-NOTES.html?view=markup'>OpenJPA 1.1.0 RELEASE-NOTES.html</a></li> |
| <li><a href='http://svn.apache.org/viewvc/openjpa/tags/1.0.0/openjpa-project/RELEASE-NOTES.html?view=markup'>OpenJPA 1.0.0 RELEASE-NOTES.html</a></li> |
| </body> |
| </html> |