Release Notes for OpenJPA

        * Overview
        * License
        * Prerequisites
        * Documentation
        * Getting Involved
        * Sub-tasks
        * Bugs
        * Improvements
        * New Features
        * Test

Overview

   These notes describe the difference between OpenJPA release 2.0.0 Milestone
   1 and the preceding release, 1.2.0. 

   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.

   This release of OpenJPA also includes some functionality from the Java 
   Community Process JSR-317 (JPA 2.0). For the complete list of supported 
   features please refer to the OpenJPA online issue tracker: 
   http://issues.apache.org/jira/browse/OPENJPA.

   Additional information on the OpenJPA project may be found at the project
   web site: http://openjpa.apache.org

License

   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

   http://www.apache.org/licenses/LICENSE-2.0

   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.

   The license may also be found in LICENSE.txt which is included in each
   release of OpenJPA.

Prerequisites

   In normal usage, OpenJPA requires Java 5 or higher and a relational 
   database of some sort.

Documentation

   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
   http://openjpa.apache.org/documentation.html

   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:
   http://openjpa.apache.org/mailing-lists.html

Getting Involved

   The Apache OpenJPA project is being built by the open source community for
   the open source community - we welcome your input and contributions!

   What we are looking for
        * Source code and fixes contributions
        * Documentation assistance
        * Product and feature suggestions
        * Detailed and constructive feedback
        * Articles and whitepapers

   How do I Contribute?
        * To discuss Apache OpenJPA topics check out the mailing lists.
        * Informal discussion also occurs on the #openjpa IRC channel on
       freenode.net.
        * Bugs and other issues can be posted on the project JIRA.

                          OpenJPA 2.0.0 Milestone 1 Release Notes

Sub-task

    * [OPENJPA-722] - persist - clear - merge scenario doesn't work
    * [OPENJPA-744] - Extra SQL on LAZY/EAGER ManyToOne relation
    * [OPENJPA-754] - Un-scheduled pre/postUpdate callbacks from persist.
    * [OPENJPA-765] - Check for insertable or updateable before checking value for null
    * [OPENJPA-769] - Add compatibility option to use previous column naming convention
    * [OPENJPA-770] - Use annotations instead of excluding tests in pom.xml
    * [OPENJPA-782] - Support for collections of embeddables and basic types
    * [OPENJPA-803] - Update SequenceGenerator to support schema and catalog
    * [OPENJPA-804] - JPA 2.0 spec API update - iteration 1
    * [OPENJPA-805] - JPQL updates - iteration 1
    * [OPENJPA-809] - Support JPA 2.0 Cache Interface
    * [OPENJPA-823] - Add JPA 2.0 schemas and appropriately validate for version
    * [OPENJPA-837] - OpenJPA 2.0: Update OpenJPA documentation with new persistence schemas
    * [OPENJPA-850] - Support equivalent names for plug-in value
    * [OPENJPA-851] - Support for enhanced map collection (and corresponding annotations)
    * [OPENJPA-855] - JPA2 Query support for Index function
    * [OPENJPA-856] - JPA2 Query support for entity type expressions
    * [OPENJPA-861] - Update the manual for XML column support for MySQL

Bug

    * [OPENJPA-557] - Primary key sequences broken with postgres schemas
    * [OPENJPA-580] - Need a better algorithm to find DBDictionary classname in DBDictionaryFactory
    * [OPENJPA-732] - Updates to entities via Lifecycle callback methods
    * [OPENJPA-751] - Typos in the manual
    * [OPENJPA-755] - OpenJPA thows EntityExistsException trying persist a preexisting, detached entity
    * [OPENJPA-761] - SchemaTool failed with a NPE in ForeignKey.join
    * [OPENJPA-762] - Batch execution fails for Oracle when batch limit set to -1 (unlimited batch size)
    * [OPENJPA-764] - Query parsing error with IN expression and String functions such as UPPER()
    * [OPENJPA-777] - Exception is thrown during retrieval of an entity which contains a persistent collection of embeddable
    * [OPENJPA-787] - slices query.getSingleResult is broken
    * [OPENJPA-792] - An entity persist may fail when @MappedSupercalss is specified.
    * [OPENJPA-795] - enhancer throws an exception when parsing column name "first.name" because it thinks 'first' is a table name
    * [OPENJPA-811] - With Oracle, OpenJPA allows setting non-nullable field to null
    * [OPENJPA-815] - Exception is thrown when retrieving an entity which contains an embeddable and the embeddable contains a toMany relation
    * [OPENJPA-818] - TCK module should use Geronimo JPA 2.0 EA jar
    * [OPENJPA-819] - NPE when no metadata is defined for a persistent class
    * [OPENJPA-834] - State field mapped to XML column has incorrect value when loaded from database
    * [OPENJPA-835] - Loading nested toMany EAGER relation resuled in PersistenceException
    * [OPENJPA-836] - after em.clear the datacache is inconsistent
    * [OPENJPA-838] - fix parameter setting problem when QuerySQLCache is on
    * [OPENJPA-843] - Unnecessary version update on inverse-side of a 1-m relationship
    * [OPENJPA-853] - Informix cursor not open problem if synchronizeMapping set true
    * [OPENJPA-863] - Unexpected mere-cascade behavior when cascade.all/merge specified on both sides of relationships !!!
    * [OPENJPA-864] - Subquery problems with SYNTAX_DATABASE (Oracle)
    * [OPENJPA-872] - Compound custom id in bidirectional many-to-one
    * [OPENJPA-873] - @MappedSuperClass Cause Null Pointer Exception in Class With IdClass

Improvement

    * [OPENJPA-742] - Add line number and column number to QueryMetaData
    * [OPENJPA-752] - ProxySetupStateManager.setProxyData routing through PersistanceCapable caused "PersistenceException: null"
    * [OPENJPA-772] - Use apache pom as parent
    * [OPENJPA-778] - cleaning up build for openjpa-kernel
    * [OPENJPA-779] - patch for eclipse .project and .classpath files...
    * [OPENJPA-780] - code review for DistributedStoreManager
    * [OPENJPA-781] - openjpa-jdbc depends on postgres driver, should be "provided"
    * [OPENJPA-783] - openjpa-lib/pom.xml has extraneous code
    * [OPENJPA-784] - more pom.xml dependency cleanup
    * [OPENJPA-817] - Order of inserts lost when using ConstraintUpdateManager
    * [OPENJPA-854] - Testcases should not specify log level

New Feature

    * [OPENJPA-773] - Upgrade to JPA 2
    * [OPENJPA-800] - OpenJPA 2.0 iteration 1 primary task
    * [OPENJPA-807] - OpenJPA 2.0 iteration 2 primary task
    * [OPENJPA-831] - OpenJPA 2.0 iteration 1.5 (holiday) primary task
    * [OPENJPA-846] - XML column support for MySQL

Test

    * [OPENJPA-833] - An improved test case for XML column mapping

Change log for previous releases : 

OpenJPA 1.2.0 Changes:
    http://svn.apache.org/viewvc/openjpa/tags/1.2.0/openjpa-project/CHANGES.txt?view=markup

OpenJPA 1.1.0 Changes:
    http://svn.apache.org/viewvc/openjpa/tags/1.1.0/openjpa-project/CHANGES.txt?view=markup

OpenJPA 1.0.0 Changes: 
    http://svn.apache.org/viewvc/openjpa/tags/1.0.0/openjpa-project/CHANGES.txt?view=markup