DataNucleus AccessPlatform 3.3 Release Notes

The 3.3 release of AccessPlatform is available under the Apache 2 license from our download page

Version 3.3 includes the following over 3.2

  • JPA 2.1 : support for Criteria FROM "ON" clause.

  • JPA 2.1 : support for Criteria UPDATE/DELETE statements.

  • JPA 2.1 : support for ForeignKey and Index specification for schema generation.

  • JPA 2.1 : support for JPQL "FUNCTION"

  • JPA 2.1 : support for EntityGraphs

  • Several bug fixes, and minor feature additions.


No further releases


DataNucleus AccessPlatform 3.3.6

Jan 1st 2014 : Version 3.3.6 includes the following changes

  • Auto-generate MANIFEST.MF OSGi information using Maven bundle plugin

  • Change use of StringBuffer to StringBuilder for efficiency

  • Add fix to enhancement contract for Java7+ for getter when using persistence properties

  • Add support for in-memory query evaluation of String.concat

  • Provide fallback API for runtime enhancement

  • Add metadata checks for some common primary-key specification errors

  • Support persistence of StringBuilder fields

  • JPA : Fix Criteria FromImpl getJoins/getFetches to return empty set when null

  • XML : restructured to allow potential of using different JAXB implementations internally

  • XML : add support for XML indentation formatting

  • Cache : upgraded Coherence support to 3.6+

  • RDBMS : support added for query range in datastore for Derby, SQLServer 2012, Firebird

  • RDBMS : support added for sequences with SQLServer 2012

  • RDBMS : support added for M-N relations using ordered lists

  • RDBMS : fixes to schema creation for M-N relations

  • RDBMS : support added for parameters with bulk-fetch feature

  • RDBMS : bulk-fetch support added for array fields

  • RDBMS : add ability to turn off bulk-fetch on a per-query basis

  • Geospatial : new plugin comprising merged spatial/awtgeom plugins

  • Geospatial : added some missing PostGIS methods and validated against latest PostGIS JDBC driver

  • MongoDB : improved handling of ordering/range parts of query to correct previous contribution

  • MongoDB : upgrade to use latest java driver

  • HBase : fix problem with retrieval of Enum stored as numeric (ordinal)

  • Various other bug fixes and minor improvements


DataNucleus AccessPlatform 3.3.5

Dec 10th 2013 : Version 3.3.5 includes the following changes

  • Wrap any exception thrown from JDOHelper.getObjectId so that it meets the JDO spec

  • Fix to class loading for property validators for OSGi

  • Couple of fixes for optimistic relationship management

  • JDO : Change PMF to be Serializable

  • JPA : Change EMF and CriteriaQuery to be Serializable

  • JPA : Fix criteria CONCAT support to give correct JPQL string form

  • JPA : Add support for IN with criteria queries via CriteriaBuilder

  • JPA : Add support for JPQL "TREAT" in WHERE clause

  • RDBMS : Add support for bulk fetch of multi-valued collection fields of a candidate when in FetchPlan of a query (removes "1+N" problem)

  • RDBMS : Add support for SQLServer to handle JDOQL String.substring with 2 args (Daniel Dai)

  • RDBMS : Add support for JDOQL String.concat (Daniel Dai)

  • RDBMS : Fix to detection of type of backing store required for a collection, using metadata more

  • MongoDB : Add support for specifying the MongoOptions when creating the first connection (Robin Zhang)

  • Spatial : Fix some missing PostGIS methods

  • Various other bug fixes and minor improvements


DataNucleus AccessPlatform 3.3.4

Nov 19th 2013 : Version 3.3.4 includes the following changes

  • Metadata : Add level of locking to metadata load process to assist in multithreaded environments

  • Metadata : fix bug in OrderMetadata for multithreaded environments

  • Fix to some potential startup problems with ExecutionContext/ObjectProvider in multithreaded environments

  • Change "datanucleus.SerializeRead", "datanucleus.cache.collections", "datanucleus.deletionPolicy", "datanucleus.query.jdoql.allowAll", "datanucleus.query.sql.allowAll" to be overrideable on the PM/EM

  • Cache : update javax.cache support to "1.0-PFD" standard

  • JPA : Fix to metamodel Attribute.isOptional to return false for PK fields

  • RDBMS : Fix to persistence of bidirectional 1-N with Set<interface>

  • RDBMS : Change backing stores to be one per field and be thread-safe

  • RDBMS : Support for more boolean expressions in result clause for JDOQL/JPQL

  • RDBMS : Support for persisting a field serialised into a local file

  • RDBMS : Support for persisting a File type field streamed to/from datastore

  • RDBMS : Upgrade "datasource" plugin point to be "connectionpool", adding more capabilities

  • Neo4j : support for persistence of map fields (Map<PC,NonPC>, Map<NonPC, PC>)

  • Neo4j : support for using embedded database with user-provided configuration properties

  • Neo4j : support for access to underlying Cypher query for a JDOQL/JPQL query

  • MongoDB : support for query evaluation of several String methods in-datastore (Marcin Jurkowski)

  • MongoDB : support for query evaluation of Collection.contains in-datastore (Marcin Jurkowski)

  • MongoDB : fix to retrieval of class version field (Marcin Jurkowski)

  • MongoDB : support for query literals of type Character

  • Various other bug fixes and minor improvements


DataNucleus AccessPlatform 3.3.3

Oct 23rd 2013 : Version 3.3.3 includes the following changes

  • JPA : fix to metamodel SimpleAttributeImpl.isVersion (Adrian Ber)

  • JPA : add support for multi-field join syntax in JPQL FROM clause

  • JPA : update to handling of JPQL range when just first result set

  • JPA : support inherited TypeConverters (Adrian Ber)

  • JPA : pass properties from EMF to ClassTransformer when run in managed mode

  • RDBMS : fix for SQLServer schema name problem (Shanyu Zhao)

  • RDBMS : add support for using FetchPlan when querying over "complete-table" candidate (previous just retrieved primary key)

  • RDBMS : improvement in process to determine class name when no subclasses known about, to avoid SQL

  • RDBMS : support for persisting Double type into SQLServer FLOAT datastore type (Shuaishai Nie)

  • JSON : fix to retrieval of objects in query so that application-identity cases have id assigned

  • MongoDB : add support for query ordering being processed in the datastore (Marcin Jurkowski))

  • Rename "google-collections" plugin to "guava"

  • JDO : distribute jdo-api 3.1-rc1

  • Various other bug fixes and minor improvements


DataNucleus AccessPlatform 3.3.2

Aug 31st 2013 : Version 3.3.2 includes the following changes

  • L2 Cache : store class name of "id" of object to avoid some inheritance lookups

  • L2 Cache : allow configurable "update" mode

  • L2 Cache : cache copies of Date, Calendar when caching fields of those types

  • Update javax.cache support to v0.9

  • Add fallback method for getting types of a TypeConverter

  • Improvement to lookup of an object using class name from the identity where possible

  • Key FetchPlan for a class by the class name rather than by its metadata

  • JPA : fix support for Criteria function() method

  • RDBMS : support for querying ==/!= of String parameters

  • RDBMS : support query select of fetch plan fields of related N-1 FK field

  • RDBMS : support detection of discriminator in SQL query

  • HBase : improvement for primitive wrapper field types

  • Various other bug fixes and minor improvements


DataNucleus AccessPlatform 3.3.1

Aug 1st 2013 : Version 3.3.1 includes the following changes

  • Provide different ObjectProvider (StateManager) when using non-RDBMS datastores

  • Improve process of defining static query method support

  • In-memory querying : add support for String.charAt(int)

  • Upgrade javax.cache support to v0.8

  • MetaData : fix to merging of unmapped columns from ORM mapping file

  • JPA : fix to handling of ForeignKey annotations

  • JPA : fix to OSGi MANIFEST version info

  • RDBMS : add support for ordering with NULLS FIRST/NULLS LAST in JDOQL/JPQL

  • RDBMS : add support for use of startup load-scripts etc

  • RDBMS : fix to entrySet for FK Map where the key/value have inheritance

  • RDBMS : fix to handling of auto-apply of TypeConverter

  • MongoDB : fix to handling of version field under some circumstances

  • Spatial : various additions for use with PostGIS (Baris Ergun)

  • Various other bug fixes and minor improvements


DataNucleus AccessPlatform 3.3.0.RELEASE

Jun 27th 2013 : Version 3.3 RELEASE includes the following changes

  • JPA : Add support for JPA 2.1 EntityGraph

  • JPA : Add support for JPA 2.1 @Converter autoApply and @Convert disableConversion

  • Fix to JPA fields marked as embedded to cascade persist/delete etc

  • Drop support for DataNucleus extension @FetchGroup/@FetchPlan

  • Fix to attach process for SCO collections under some circumstances

  • Fix to L2 cache to not perform lookup if identity is for class that is not cacheable

  • Schema Generation : fix to case where using complete-table and version/discriminator not being added to subclasses

  • Fix to query caching to cater for FetchPlan being different on a query


DataNucleus AccessPlatform 3.3.0.M1

Jun 9th 2013 : Version 3.3 Milestone 1 includes the following changes

  • Mapping : cater for inheritance with (multiple) MappedSuperclass part way down tree but with superclass Entity with own table (i.e effectively @MappedSubclass)

  • SchemaTool : support properties file and/or System props overriding persistence.xml

  • Simplify internal metadata storage for fetch groups and constraints

  • Rename "datanucleus.metadata.validate" persistence property to "datanucleus.metadata.xml.validate"

  • Add "datanucleus.metadata.xml.namespaceAware" to allow control over use of XML namespaces

  • Fix to operation queue for Map remove operations

  • Add check on specification of discriminator value for abstract classes

  • JPA : Support more <order-column> situations

  • JPA : run against JPA 2.1 API jar

  • JPA : Support JPA 2.1 Index and ForeignKey specification

  • JPA : Support JPA 2.1 JPQL "FUNCTION"

  • JPA : Support JPA 2.1 Criteria UPDATE/DELETE

  • JPA : Support JPA 2.1 FROM "ON" in Criteria query

  • JPA : Drop support for DN extension @Index annotation (use JPA 2.1 annotation now)

  • RDBMS : Schema Generation improvement to better cater for any ordering of input classes

  • RDBMS : Schema Generation fix to recursive initialisation of PK of a table

  • RDBMS : Fix to handling of FK Map where key/value have inheritance and the value/key is stored in a superclass

  • RDBMS : Fix to value-map discriminator handling for embedded object

  • RDBMS : add ability to invoke any SQL function (for JPA 2.1)

  • MongoDB : fix to explicitly specify the storage type for primitive wrapper types

  • Various minor bug fixes and improvements