Access Platform : Migration between versions

DataNucleus Access Platform 1.1 builds on the 1.0 release, adding on more features around the currently supported datastores, and additionally changing the JDK requirement to be JDK1.5 or above. All releases are checked regularly against the JDO/JPA TCKs, meaning that DataNucleus has reached a level of stability in terms of functionality. Occasionally, due to unknown bugs, or due to new functionality being introduced we need to change some aspects of DataNucleus. As a result sometimes users will have to make some changes to move between versions of DataNucleus. We aim to keep this to a minimum.

Migration from 1.1.4 to 1.1.5

Migrating from DataNucleus 1.1.4 to 1.1.5 will require the following changes

  • The JDO 2.3 jar should be upgraded to jdo2-api-2.3-eb.jar. Available from the DataNucleus M2 repository.


Migration from 1.1.3 to 1.1.4

Migrating from DataNucleus 1.1.3 to 1.1.4 will require the following changes

  • The persistence property datanucleus.cache.level2 has been removed and the enabling/disabling of the L2 cache is now controlled by datanucleus.cache.level2.type setting to "none" or otherwise. The previous type of "default" is renamed to "weak"
  • The persistence property datanucleus.cache.query.type is added allowing setting of the query cache type.


Migration from 1.1.2 to 1.1.3

Migrating from DataNucleus 1.1.2 to 1.1.3 will require the following changes

  • The persistence property datanucleus.findObjectCheckInheritance is no longer required and instead the optional argument passed in to PM.getObjectById is used to determine whether to check the inheritance of the object (JDO2.3)


Migration from 1.1.1 to 1.1.2

Migrating from DataNucleus 1.1.1 to 1.1.2 will require the following changes

  • NucleusJDOHelper.getObjectStateAsString() has been deprecated for some time and is now removed.
  • Specification of "persistence-unit" now respects exclude-unlisted-classes settings and by default will scan for unlisted classes from the root of the persistence unit


Migration from 1.1.0 to 1.1.1

Migrating from DataNucleus 1.1.0 to 1.1.1 should not require any changes.



Migration from 1.1.0 Milestone4 to 1.1.0 Release

Migrating from DataNucleus 1.1.0 M4 to 1.1.0 Release will require the following changes.

  • The value for query timeouts datanucleus.query.timeout was previously in seconds, but is now in milliseconds. Adjust values accordingly. This is also now a standard JDO property.


Migration from 1.1.0 Milestone3 to 1.1.0 Milestone4

Migrating from DataNucleus 1.1.0 M3 to 1.1.0 M4 will require the following changes.

  • The BCEL enhancer has been removed and you must use ASM now.


Migration from 1.1.0 Milestone2 to 1.1.0 Milestone3

Migrating from DataNucleus 1.1.0 M2 to 1.1.0 M3 will require the following changes.

  • The persistence property datanucleus.datastoreIdentityClassName is renamed to datanucleus.datastoreIdentityType
  • The programmatic API for the DataNucleusEnhancer has had some changes to align it better with the new JDO2.3 Enhancer API
  • The programmatic API for the RDBMS SchemaTool has had some changes to allow multiple instances


Migration from 1.1.0 Milestone1 to 1.1.0 Milestone2

Migrating from DataNucleus 1.1.0 M1 to 1.1.0 M2 will require the following changes.

  • All "POID" generator classes have been repackaged and renamed. They are now stored in org.datanucleus.store.valuegenerator
  • Persistence properties relating to "poid" are renamed
    • datanucleus.poid.transactionIsolation is now datanucleus.valuegeneration.transactionIsolation
    • datanucleus.poid.transactionAttribute is now datanucleus.valuegeneration.transactionAttribute
  • Log category "DataNucleus.POID" is renamed to "DataNucleus.ValueGeneration"


Migration from 1.0.0 Release to 1.1.0 Milestone1

Migrating from DataNucleus 1.0.0 Release to 1.1.0 M1 will require the following changes.

  • Upgrade your JDK to be 1.5 or above
  • If using db4o, you must now use version 7.0 or above.
  • The Java5 plugin has been removed and a JPA plugin added. All JDO annotations are now in "core"
  • The "springframework" plugin is no longer required. Specification of transaction isolation can now be performed via the JDO2.2 interface.
  • The plugin extension-point org.datanucleus.java5.annotations has been renamed to org.datanucleus.annotations
  • NucleusSQL queries for RDBMS are now no longer supported. Please use straight SQL