FoundationDB Alpha 6
FoundationDB now supports both clients and development servers on Mac OS X.
FoundationDB now supports both clients and development servers on (64-bit) Windows.
All language APIs are supported on Linux, Mac, and Windows (except for Ruby on Windows, because there is not a 64-bit Ruby for Windows.)
The set of coordination servers can be safely changed on-the-fly via the CLI.
Unintentional deletion of the coordination state files is now ACID-safe and self-correcting when a majority of the state files still exist.
The foundationdb.conf file format has changed.
A new more flexible and automatic system for network configuration. Common server setups will auto-configure using the cluster file. More advanced setups are supported via separate configurable listen and public addresses.
The CLI now support tab-completion.
The CLI now supports setting transaction options
The CLI has a new command “getrangekeys” that returns the keys in a range and omits the values.
The database size estimate shown in the CLI status is much more accurate.
Improved latency performance for intense workloads with range-read operations.
Improved performance and decreased memory usage for certain intense write workloads targeting a small set of keys (such as sequential insert).
An incorrect result could be returned by a range read when: (1) The range start was specified using a non-default “less than” type key selector; and (2) the range read started at the beginning of the database; and (3) the transaction also included a prior write to a key less than the key of the begin key selector.
In certain cases a FoundationDB cluster would not correctly re-configure itself to achieve a more optimal usage of servers of specific machine classes.
Changes to all APIs
The API version has been updated from 14 to 16. (Thanks to our API versioning technology, programs requesting API version 14 will work unmodified.)
resetmethod of a transaction now also resets transaction options.
System keys (those beginning with the byte
0xFF) are now inaccessible by default.
Simpler network setup: The network connection options are no longer necessary and have been deprecated.
Changes to the Java API
A new construct AsyncUtil.whileTrue() simplifies writing loops using the asynchronous version of the Java FDB client.
Earlier release notes
For changes in alpha 5, see Release Notes (Alpha 5).