DataNucleus Access Platform 2.1 M1 Released
April 2nd 2010- DataNucleus Access Platform 2.1 ("Thomson") Milestone 1 is released.
DataNucleus Access Platform provides persistence and retrieval of Java objects to/from
a wide range of datastores including RDBMS, db4o, LDAP, XML, and Excel.
Version 2.1 Milestone 1 includes the following changes
- Addition of plugin for persistence of javax.time (JSR0310) types
- Fix to a typo in the use of ConnectionFactory when defining the datastore as a DataSource
- Cleanup to process of creation of L1/L2/Query caches
- Change generic query compilation expression tree bidirectional for ease of navigation
- Support generic query compilation of {param}.field
- Enforce JDO2 spec rules for JDOQL result/grouping/ordering clauses validity
- Fix to generic query compilation of {variable}.field
- Fix to generic query compilation of cast expressions
- Added checks on invalid use of keywords during generic query compialtion
- Fix to generic query compilation of {array}.length
- Fix to use of Extent to close all iterators correctly
- FIx to in-memory evaluation of queries to better handle date equality
- Fix to getParent() of class/package metadata of JDO Metadata API
- Fix to use of set() on ListIterator obtained from list wrapper
- Fix to persistence of object with reference to the same object
- RDBMS : change to use "JDOQL2" implementation by default. Use "JDOQL-Legacy" if wanting
the old JDOQL implementation.
- RDBMS : having expression that are not boolean should throw XXXUserException for JDOQL2
- RDBMS : fix to use of parameters for range and passed in as unnamed to API
- RDBMS : fix to caching of queries when using String.matches with input parameter for JDOQL2
- RDBMS : fix to not create indexes for serialised field (problem on MySQL)
- RDBMS : support override of datastore mapping by user plugins
- RDBMS : fix to only use CROSS JOIN with Derby from v10.6 onwards
- RDBMS : fix to use of Boolean expression/literals for JDOQL2
- RDBMS : fix to candidate query on persistent interface candidate for JDOQL2
- RDBMS : add support for persistent object "identity" as input parameter for JDOQL2
- RDBMS : fix to numeric type comparisons for JDOQL2
- RDBMS : fix to use of parameter in result clause when null for JDOQL2
- RDBMS : add support for Cast expression in result clause for JDOQL2
- RDBMS : add support for array of expressions in JDOQL2
- RDBMS : add support for joins to interface implementations in JDOQL2
- RDBMS : add support for subquery.contains() in JDOQL2
- RDBMS : fix handling of DISTINCT in JDOQL2
- RDBMS : make use of Query imports when resolving classes in instanceof/cast for JDOQL2
- RDBMS : fix use of navigation of N-1 relation via join table in JDOQL2
- RDBMS : Delete "JPQL-Legacy" implementation
- JodaTime : fix handling of null fields
- JPA : upgrade to use JPA2 "final" jar API
- Much internal refactoring has also been performed to remove unneeded components
or to simplify the API's for things needed in the 2.1 timeline. Any use of internal
API's by applications will likely need changes.
This release is downloadable under an Apache 2 license from the
DataNucleus community site.