ObjectDB for Java/JDO Changelog

What's new in ObjectDB for Java/JDO 2.3.1

Oct 3, 2011
  • Added support for using ObjectDB with JBoss AS 7.0.
  • Sample databases (world.odb, points.odb) included in ObjectDB distribution.
  • New default Explorer colors (apply with Tools > Options > Fonts > Reset All).
  • New menu for accessing local databases (in $objectdb/db) in the Explorer.
  • Improved UnsupportedOperationException error message.
  • Fixed a pessimistic lock timeout bug (issue #70).
  • Fixed a ClassCastException in using a composite index in queries (issue #71).
  • Fixed handling derived Id fields in composite PK embedded IDs.
  • Fixed default ObjectDB home path ($objectdb) in NetBeans RCP.
  • Fixed a Doctor and Replication regression (Type session exceeds timeout).
  • Removed Conflicting modifiers validation check and error message.

New in ObjectDB for Java/JDO 2.3.0 (Oct 3, 2011)

  • Added the ability to edit databases in the Explorer (issue #1).
  • Added the ability to execute queries in the Explorer (issue #2).
  • Other small Explorer improvements.
  • Added support of IN operator in JPQL queries.
  • Added support of ";drop" database url parameter.
  • Adjusted the Enhancer to the new Java 7 class file format.
  • Improved error message for invalid mapped by (inverse) fields (issue #64).
  • Improved persisting byte[] by reducing required storage space.
  • Removed a shutdown hook that leads to memory leak (issue #63).
  • Completed missing documentation (e.g. UPDATE & DELETE queries).
  • Fixed memory leak issues.
  • Fixed server hang and deadlock issues.
  • Fixed several NullPointerException bugs.
  • Fixed the "Failed to generate dynamic type" exception.
  • Fixed a bug in query plans that use an inherited index.
  • Fixed bugs in queries on collections.
  • Fixed evaluation of $temp in the configuration file.

New in ObjectDB for Java/JDO 2.2.9 (Oct 3, 2011)

  • Added new configuration to enable / disable auto serialization of non persistable types (now disabled by default).
  • Added support of date methods (YEAR, MONTH, DAY, HOUR, MINUTE, SECOND).
  • Added support of bypassing no arg constructors of entity classes.
  • Added support of using persistent array fields with parameterized type.
  • Added error on using transient fields (or properties) in queries.
  • Added type information to enhancement exceptions.
  • Improved support of non standard database file suffixes.
  • Changed fetch of collection elements.
  • Fixed an ArrayIndexOutOfBoundsException bug in using nested embedded objects. (issue #59).
  • Fixed a JMX Remote - ObjectDB Enhancer Agent conflict.
  • Fixed a ClassCastException bug in complex JOIN queries.
  • Fixed a NullPointerException in querying an empty database.
  • Fixed a online backup file lock problem.
  • Fixed a bug in managing a new entity after an attempt to find it in the database.
  • Fixed a bug in using LIKE in AND/OR in criteria queries.
  • Fixed a bug in AND/OR grouping in criteria queries.
  • Fixed a "Failed to write the value of field property" bug.
  • Fixed a NullPointerException bug in query execution.
  • Fixed a bug in using non managed non enhanced entity objects as parameters or in criteria queries (issue #54).
  • Fixed a bug in using primary key in results of a JOIN query.
  • Fixed a recursive @PreUpdate call bug (when the callback updates the entity).

New in ObjectDB for Java/JDO 2.2.8 (Oct 3, 2011)

  • Fixed a critical bug in extensive removal operations of large objects.
  • Improved the performance of navigation through an inverse (mapped by) field if the owner field is indexed.
  • Fixed a LEFT OUTER JOIN bug.
  • Fixed a bug in parsing queries with parenthesis followed by NOT.
  • Fixed a bug in running online backup with no arguments.
  • Added option for running the Doctor without activating disabled indexes.
  • Fixed a Doctor bug in fixing old (< 2.0) database files.
  • Fixed a temporary file creation problem.
  • Fixed a bug in size evaluation of cached query single results.
  • Fixed internal NullPointerException-s (issues #51, #52, #53).
  • Fixed a pessimistic locking deadlock (issue #50).

New in ObjectDB for Java/JDO 2.2.7 (Oct 3, 2011)

  • Added support of report generation using BIRT.
  • Fixed a bug in query optimization of DISTINCT.
  • Fixed a bug in keeping removed entity object in the L2 cache.
  • Fixed orphan removal of owner entity object in bidirectional relationship.
  • Fixed an "Attempt to persist a reference to a non managed instance" bug.
  • Fixed internal NullPointerException (issue #49)
  • Fixed internal ArrayIndexOutOfBoundsException.
  • Fixed a conflict with IBM J9 JVM by disabling unsafe optimization.
  • Fixed a bug in applying nested eager fetch when enhancement is disabled.
  • Fixed the "Annotated methods must follow the JavaBeans naming convention" exception (issue #47).

New in ObjectDB for Java/JDO 2.2.6 (Oct 3, 2011)

  • Fixed the "Attempt to reuse an existing primary key value" after flush bug.
  • Fixed a bug in tracking changes to collections of new flushed entity objects.
  • Fixed generated value (ID allocation) bug with flush and in EJB containers.
  • Fixed a NullPointerException on getObjectsById.
  • Fixed a server freeze (no response) issue.
  • Fixed a NullPointerException in metamodel with embedded ID (issue #43).
  • Fixed an error message for invalid query parameter (issue @45).
  • Fixed pom.xml files in the Maven tutorials to use Java 1.5 / 1.6.

New in ObjectDB for Java/JDO 2.2.5 (Oct 3, 2011)

  • Added support of navigation through collections (as a JPQL extension).
  • Added version display to the Server and Explorer About dialog boxes.
  • Fixed an UPDATE/DELETE query bug in client-server mode.
  • Fixed an ArrayIndexOutOfBoundsException in retrieval of large objects.
  • Fixed Explorer display of user defined serializable objects.
  • Fixed a bug in using NOT NULL in criteria queries.
  • Fixed a bug in using strings in criteria queries.
  • Fixed a bug in collection change tracking in a new entity object.
  • Fixed merging entity objects of another EntityManager.
  • Fixed a bug in concurrent EntityManagerFactory instantiation.
  • Fixed a bug in comparison of collections to values in queries.

New in ObjectDB for Java/JDO 2.2.4 (Oct 3, 2011)

  • Added support of JPA UPDATE and DELETE queries (issue #11).
  • Added support of pessimistic lock timeout (javax.persistence.lock.timeout).
  • Added implementation of the getParametersgetParameters()Query's methodGet the parameter objects corresponding to the declared parameters of the query.
  • See JavaDoc Reference Page... method.
  • Added exception on pessimistic locking retrieval with no active transaction.
  • Improved support of entity objects in criteria queries.
  • Improved Explorer performance by disabling EAGER fetch.
  • Fixed critical bugs in using flush.
  • Fixed bugs in cascading merge.
  • Fixed a multithreading deadlock bug.
  • Fixed a bug in using JOIN FETCH with DISTINCT.
  • Fixed Metamodel API's getTypeId method to support single ID field.

New in ObjectDB for Java/JDO 2.2.3 (Oct 3, 2011)

  • Added support of @ElementCollectionjavax.persistence.ElementCollectionJPA annotationDefines a collection of instances of a basic type or embeddable class.
  • See JavaDoc Reference Page... (for setting eager fetch of non entity collections, such as List).
  • Improved performance of eager fetch in queries.
  • Added Maven build enhancement to the bundled examples.
  • Fixed a schema evolution bug in renaming user types.
  • Fixed a bug in handling schema evolution (regression of 2.2.0).
  • Fixed a bug in queries on large objects.
  • Fixed a bug in using persistent properties with incomplete enhancement.

New in ObjectDB for Java/JDO 2.2.2 (Oct 3, 2011)

  • Changed log format to include date and time.
  • Changed class loader management.
  • Fixed handling multiple order expressions in inverse (mapped by) fields.
  • Fixed the behavior of CacheStoreMode setting in L2 shared cache.
  • Fixed TreeSet and TreeMap element comparison bugs.
  • Fixed an Explorer bug in opening tables for selected rows.
  • Fixed a replication configuration error.