2001-06-07 version 1.10 |
- automatic activation on querying objects changed to preconfigured depth of 5, independent of
the QBE example object, configurable globally and class-specific. - additional ObjectContainer#activate(Object, depth) method to activate a tree
of any size with one call.- explicit commit() method for checkpoints.- support for simple type wrappers in Object variables.- support for multi-dimensional arrays. - query evaluation mode changed to "contains" for arrays. - support for Vector and Hashtable including "contains" queries. - JDK 2 specific: - support for all Collection classes including
"contains" queries.- support for private or parameterised constructors. - support for inner classes. - ObjectCallback methods to allow code execution upon storage events. Examples of
use: cascaded delete, cascaded copy and cascaded update.- Configuration interface for - refactoring classnames and fieldnames. - customized activation depths. - customized update depths. - activation events. - translation of objects on storage and instantiation. - configurable storage of transient members. - ignoring fields in queries. - automatic schema evolution now allows to change the data type of members. - db4o used to store and restore static members and use them for query evaluation. Fixed. - extreme regression tests allowed to find and fix some rare bugs that could occur on the deletion of objects. - Java Web Start problem fixed. - additional security handling to prevent user application code to open a database file twice. - performance improvements > 10%. - regression test code is included with the download. |
2001-01-31 version 1.0 |
- completely revised interface. - Smart reflection allows the storage of objects without any modifications to their class files. - A JDK 2 version enables the storage of private and protected members. - Unicode version. - A dedicated EPOC version contains a workaround for an EPOC JVM bug. - members of class Object are stored.- Interface members are stored.- storage wrapper for java.util.Date |
2000-12-11 version 0.40 |
- fully revised architecture and file format. - x50 performance boost. - x50 decrease of database file size. - x50 decrease in resource consumption. - delete() is implemented. - 20 samples allow a quick start. - messages are off and can be turned on with echo() |
2000-10-22 version 0.20 |
- The new db4o JDBC interface completely exports and imports object data. The
mechanism allows the migration of db4o data in case of future changes to the db4o
file format. The jdbc documentation provides further
information. - The provided sourcecode packages were revised. - Fixes 0.11 to 0.13 are included. |
2000-09-18 version 0.10 |
- db4o was repackaged. All classes are now found in com.db4o.*. - The interface naming was streamlined. PersistentHandle >> DbHandle. getPersistentHandle() >> db(). - db4o is now distributed as a jar. - Navigation through member links is now possible with PersistentObject.db().activate() - Instantiation logic was rewritten to support this feature. - The storage format was improved for less space consumption and better performance. |
2000-08-20 | - Support for inheritance. - Test routines in com.db4o.test.Test.java ensure a consistent stability of implemented features. |
2000-08-08 | - db4o opens the public mailing list db4o@egroups.com. |
2000-08-05 | - Support for arrays. - The schema updating mechanism is started automatically with every start of the engine. |
2000-07-18 | The indexing mechanism is implemented with a red-black binary tree. A test with the benchmark database showed an improvement by more than 500%. |
2000-07-08 | - The read algorithm now only reads objects, which are actually needed. - First concept of the db4o query interface |
2000-07-06 | First JDBC import run on an SQL database with 1 MB size. Large amounts of data are now available for testing and performance analysis. |
2000-06-30 | - Support for Double, double, Float, float, Short, short, Character, char, Boolean, boolean, Byte, byte. - Rewrite of YapVariables to implement a clean structure instead of two objects per data type. |
2000-06-23 | Support for Long, long, Integer, int, Boolean and boolean. |
2000-06-17 | - Update is implemented. db4o.set(object) forces a depth(1) equality check on all members. - Address indirection is implemented. see YapProxy for details - Extensions of com.db4o.collection.Comparator avoid reflection in comparisons. |
2000-06-15 | joss is renamed to db4o. Thanks to Christian Runte for the suggestion. |
2000-05-28 | get() and set() are implemented. Java classes with String- and Object-Members can be stored and retrieved. |
2000-05-28 | Begin of this log. |
2000-04-04 | Thanks to Brian Lee Price for the contribution of ideas to yap. |
2000-01-01 | The first line of code. |
2001-06-15 version 1.11 |
The QBE query optimizer could omit certain results in certain n-to-n relationship- and data-combinations. Fixed. |
2001-03-06 version 1.04 |
- Db4o.use(javax.jnlp.JNLPRandomAccessFile) was implemented to allow
the usage of db4o within a Java Web Start
application.
|
2001-02-26 version 1.03 |
- ObjectContainer.get(null) would result in a NullPointerException
if empty classes were present in the data file. Introduced in 1.01. Fixed.- Enhanced benchmark code. |
2001-02-09 version 1.02 |
- A file memory leak introduced in 1.0 caused continuous growth of the data
file on updates. Fixed. - Performance improvement with the great help of a coding contest in the German Java newsgroup de.comp.lang.java. |
2001-02-02 version 1.01 |
- Unicode versions only: String query-by example would not produce any
results. Fixed. - ObjectContainer.get(null) dump was accelerated and is now
independent of
possible constructor side effects.
|
2000-12-16 version 0.43 |
Fix for simple type array bug and array update. |
2000-12-14 version 0.42 |
- delete() inconsistency and crash fixed - Db4o.delete(null) no longer crashes. - numerous SQLImport() fixes |
2000-12-12 version 0.41 |
Performance update only. |
2000-11-15 version 0.22 |
Javadocs were generated for version 0.21 to satisfy the request from the mailing list. |
2000-10-25 version 0.21 |
The finalize() function in Db4o now enforces that the engine is shut down correctly with Db4o.down(). System.runFinalizersOnExit(true) is set for the moment, in spite of the potential errors on some VMs. A better method will be implemented in the near future. |
2000-10-20 version 0.13 |
- A second call to Db4o.set() would not update descendant values. Fixed. - A workaround for an EPOC JDK bug is included. |
2000-10-08 version 0.12 |
Query evaluation fix. Ancestor values are no longer ignored. |
2000-10-06 version 0.11 |
- Major speed enhancement - Fix to automatic schema recognition. Descendant changes no longer produce exceptions. |
2000-08-28 | - String updating reenabled. - Test routine now includes update and more array features. - Null values are possible in arrays. - A file format change was necessary for arrays. |