Oracle NoSQL Database C API Change Log

Release 4.4.6

The C interface for the Oracle NoSQL Database is implemented using the Java Native Interface (JNI) to make calls to the Java client. This means that it requires a JVM on the client and the Java JDK for building.

Changes in 4.4.6

  1. Updated release version to 4.4.6. Re-package the C interface using kvproxy-4.4.6.

Changes in 4.3.10

  1. Updated release version to 4.3.10. Re-package the C interface using kvproxy-4.3.10.

Changes in 4.3.6

  1. Updated release version to 4.3.6. Re-package the C interface using kvproxy-4.3.6.

Changes in 4.2.14

  1. Updated release version to 4.2.14. Re-package the C interface using kvproxy-4.2.14.

Changes in 4.2.10

  1. Updated release version to 4.2.10. There are no other changes or bug fixes in this release.

Changes in 3.0.14

API Changes:

  1. Added new interfaces to make copying and donation of value and key objects more efficient:

Bug fixes:

  1. Fixed a bug where kv_lob_read() might return 0 bytes. This occurred in an AIX JVM [#23758].
  2. Fixed a bug where, if Avro values (kv_value_t) are used in a kv_operations_t list that has had kv_operations_set_copy() called on it, the values could be corrupted. With this, and related changes it is recommended that kv_operations_set_donate() be used instead, assuming that all kv_version_t, kv_value_t, and kv_key_t instances are independent copies and owned by the caller. [#23770].
  3. Fixed a bug where kv_avro_get_current_schemas() would return an incorrect, positive number if it failed. [#23771]

Changes in 3.0.9

New Features:

This release adds support for new features in Oracle NoSQL Database release 3, including zone support and security features.
  1. Added interfaces to handle data center/zone support. Read zones interface was added.
  2. Added interfaces to handle the password authentication for users and systems.
  3. The SSL transport can now be used to encrypt data on the network to prevent unauthorized access to that data.

API Changes:

  1. Added API to handle data center/zone support. Read zones interface was added.
  2. Renamed the kv_node_metrics_t field datacenter_name to zone_name, to use the new zone terminology.
  3. Added the value KV_CONSISTENCY_NONE_NO_MASTER to kv_consistency_enum.
  4. Added API functions to enable SSL transport communication.
  5. Added API functions to handle the authorization of user logins.

Bug fixes:

  1. Fixed a bug where kv_lob_read might return 0 bytes. This occurred in an AIX JVM [#23758].

Changes in 2.1.57

New Features:

  1. The ParallelScan interface was recently added to the core product allows for configuration and use of a store scan operation that proceeds in parallel, accessing multiple partitions at the same time. The normal store iteration acts in a serial manner, one partition at a time. This release adds a C API for this new interface. It is recommended that this be used rather than the older serial store iterator interface.

API Changes:

  1. This release adds a C API for ParallelScan interface. It is recommended that this be used rather than the older serial store iterator interface.

Changes in 2.0.39

Bug fixes:

  1. Two independent bugs were fixed that resulted in SIGSEGV with the JVM and/or process heap memory corruption. While somewhat exacerbated by use of iterators and use of consistency paramters, these problems could occur in any application. Fixing these bugs is the primary reason for this patch release [#22538], [#22544].

Documentation, Installation and Integration:

  1. The default options in CMakeLists.txt were changed to better use RPATH options to make linking of the library and applications simpler [#22545].
  2. A "template" area was added to examples/CMakeLists.txt to enable applications to integrate into the product's CMake build infrastructure. This simplifies compilation and linking.

Changes in 2.0.26

Bug fixes:

  1. A number of memory leaks related to repeated opening and closing of a store have been fixed. These would result in the JVM running out of heap over a long period of time.
  2. A change was made (in the Java-based, core product) that fixes a problem where accessing an Avro schema with default values from the C API would not work correctly. It is worth a reminder that default values in Avro schema are not currently supported by the Avro C library (as of 1.7.3). Until they are schema evolution and C/Java interoperability are not fully available in Avro.

New Features:

  1. Added C API to handle Large Object (LOB) support. A number of new configuration calls as well as the read/write interface itself were added.

API Changes:

  1. Added C API to handle Large Object (LOB) support. A number of new configuration calls as well as the read/write interface itself were added.