Rethinkdb 2.4.0 – “Night of the Living Dead” Released
RethinkDB 2.4 introduces write hooks and bitwise operations besides bug fixes.
Read the blog post for more details.
Compatibility
Data files from RethinkDB version 1.16 onward will be automatically
migrated. As with any major release, back up your data files before
performing the upgrade. Please read the RethinkDB 2.4.0 release
notes if you're upgrading from version 2.3.x or
earlier.
RethinkDB 2.4.0 servers cannot be mixed with servers running RethinkDB
2.3.x or earlier in the same cluster.
Official Drivers
Except for JavaScript, the official drivers are now generally
maintained as separate projects. But note that there is some coupling
of RethinkDB console commands, like rethinkdb dump
, with the Python
driver. RethinkDB 2.4 contains some old copies of the drivers to keep./test/run
working with minimal effort. The JavaScript driver is
still used in the Web UI. However, the web assets are now
pre-generated, at src/gen/web_assets.cc, making the presence of the
driver in the repository not strictly necessary.
Here are links to the official drivers:
API-breaking changes
- Write hooks add a new field to the table configuration.
- A bugfix changes the
match
command's behavior on empty regexes.
It had previously been behaving incorrectly.
Substantive Changes
(Issue numbers point into the https://github.com/rethinkdb/rethinkdb
bugtracker.)
- ReQL
- Added the
set_write_hook
andget_write_hook
commands, which attach to
tables a function that can modify the behavior of any write. (#5813) - Added bitwise operators for number types:
bit_and
,bit_not
,bit_or
,bit_sal
,bit_sar
andbit_xor
. (#6534) - Permitted the hyphen character (
-
) to be used in table names. (#5537) - Users may be granted permissions on system tables. (#5692)
- Make
iso8601
command round, not truncate. (#6909) - Fix timestamp millisecond down-truncation bug. (#6272)
- Added the
- Server
- Fixed crash with limit change feed
inserted
guarantee failure. (#6710) - Avoid using DNS resolution when finding network interface addresses. (#6588)
- Removed update checker. (#6791)
- Added experimental support for arm64/aarch64. (#6438)
- Added experimental support for Power8/LE platform. (#6317)
- Fixed race condition in the query cache. (#6564)
- Avoid quadratic growth in segmented vector. (#6385)
- Big-Endian fixes and s390x support. (#6242)
- Fixed crash with limit change feed
- Web UI
- Compilation
- JavaScript Driver
- Avoided mutating object passed to
r.connect
. (#6575)
- Avoided mutating object passed to
- Python Driver
- Other Drivers
- Changes omitted, as they're in separate repositories.
from Hacker News https://ift.tt/1bLBrsO