Whats New Onyx Database Version 2.0.0

In order to have better JVM version compatibility Onyx Database 2.0.0 has been migrated to Kotlin. As a result integration with Android has been made simpler and no longer requires source compatibility of 1.8. One of the benefits of the migration is that the open source code base has been reduced by 50%. The reduced codebase is simpler and easier to maintain.

Onyx Database version 1.x is not compatible with version 2.0.0. Attempting to use Onyx Database database with the newer version will result in an error.

Deprecation API and Library Changes

Maven modules including onyx-android, onyx-android-remote-driver, and onyx-database-moe have been deprecated and are no longer needed. The onyx-database and onyx-remote-driver modules fully support Android and can replace the deprecated modules.

The following APIs have been removed or deprecated

  • getWithReferenceId has been replaced with findByReference(Reference reference).
  • getWithPartitionReference has been removed.
  • getMapWithReferenceId has been removed.

The following methods have added better support for template generic types

  • saveEntity
  • find
  • getRelationship

Upgrading to version 2.0.0 will require adding type parameters for saving an entity.

Persistence Manager Factory constructor has added location as a required property. Since location is always required, it has been added to the constructor. This will be required to change when upgrading from 1.x.

Query Functions Group By, Min, Max, Sum, Count, Average, Replace, and Substring

Onyx Database version 2.1.1 Has support for query functions. You can now group by field(s) to better aggregate data.

Select functions include min, max, sum, count, replace, avg, and substring. Functions may be used with or without query groupings. Within Kotlin, support has been added within the QueryBuilder DSL syntax. Below is an example of how they are used.

See Tutorial

Improvements Android Startup, Relationship Querying, and Security

Android Startup Android startup time has been reduced by 600%.

Better Security and Encryption Onyx provides a way to improve security by overriding the default EncryptionInteractor. You can choose to change the pass key and salt or change the default encryption behavior.

Relationship Query Support Onyx has added support for hierarchical relationship queries. You can now use relationship chains as keys when specifying query criteria.

Whats New Onyx Database Version 1.3.0

Onyx Database Version 1.3.0 has been released. With it Onyx Database delivers a new way to design data driven applications.

New Features Query Caching, Android Remote Driver, Query Type Inference

Query Change Listeners is the main feature released in 1.3.0 but there were several other enhancements delivered.

Query Caching has been implemented for frequently executed queries. For the most commonly used queries, Onyx will automatically maintain a cache of results.

Android Remote Database Driver has been ported and made available for Android. Onyx In-Memory, Embedded, Web Service, and now the Remote database has been made available on a mobile platform.

Infer Query Types by using generic definitions. A change have been implemented for unchecked casts for query return types. Casting is no longer required and the pesky unchecked type warning will no longer be apparent when using the Persistence Manager API.

Whats New Onyx Database Version 1.2.1

Onyx Database Version 1.2.1 has been released. There has been some game changing features and staggering performance improvements.

Performance Improvements Smaller Footprint, Memory Leaks, Better Concurrency, and more...

In addition to the great features that were delivered there were a great deal of performance improvements.

Performance has been increased by 100%. By using a more efficient concurrency pattern Onyx Database has made the performance gap larger between embedded databases.

No more memory leaks. An effort to eliminate memory leaks was taken seriously in V1.2.1.

Warnings to 0. As an effort to deliver continuous improvement, our code base has been cleaned up to replace our technical debt. There are no warnings on the open source libraries we maintain.

See Benchmarks

Remote Database Refactor

Onyx Remote Database Server has been refactored. There are no longer any 3rd party dependencies. It is smaller and light-weight as ever.

The Onyx Remote server is now compatible with Amazon AWS EFS(Elastic File Store) and Azure SMB storage. Clustering with EFS and auto scaling is now available with Enterprise licensing. For more information regarding this, please feel free to contact us.

Contact Us

Web Service Database Refactor

The remote database and web service capability has been separated. They are no longer one of the same. The WebServiceServer now extends from the Onyx Database server.

There is no longer a confusion between the legacy socket server. RMI has since been replaced and there is no need to specify a socket server port. The Web Server however still requires a different port than the remote server. Setting up a server has been simplified.