Release Notes
7.4.0
Features (Supported)
Added support to restore from new backup’s partitioned log files. (PR #11901)
Added LRU-like cache replacement for in-memory page checksums to save memory usage. (PR #11194)
Added gray failure features to track remote processes and allow complaints from storage servers. (PR #11717), (PR #11753)
Added network option to disable non-TLS connections. (PR #9984)
Features (Experimental)
Added support to bulk load TBs’ snapshot of key-values from S3 to an empty cluster. (Bulk Load User Guide), (PR #11369)
Added support to bulk dump TBs’ snapshot of key-values to S3 from an idle cluster. (Bulk Dump User Guide), (PR #11780)
Added support to upload/download to/from S3 (for bulk dump and bulk load). (PR #11899)
Added support to perform exclusive read range lock that blocks user write traffic to a specific range. (Range Lock User Guide), (PR #11693)
Added multiple improvements to the version vector feature, so that commits are sent only to tlogs buddied with the storage server that will receive the mutations.
Added support to compute mutation and accumulative checksums to conduct real-time detection of mutation corruptions on write path. (PR #11255)
Added support to detect hot shards and throttle commits to them. (PR #10970)
Added support to synthesize test data on a cluster. (PR #11107)
Added support to compare storage replicas on reads. (PR #11235)
Added gRPC integration with Flow. (PR #11782), (PR #11892), (PR #12023)
Performance
Improved storage performance with ptree optimizations. (PR #11435)
Added yields to backup agents to avoid slow tasks. (PR #10878)
Fixes
Fixed a fdbmonitor issue on FreeBSD where child processes continued to run after fdbmonitor termination. (PR #11361)
Fixed issues where backup workers missed mutations and caused assertion failures. (PR #11908), (PR #12026), (PR #12046)
Fixed AuditStorage empty range read error. (PR #12043)
Fixed an issue where failover was triggered even though remote storage servers were lagging behind. (PR #11054)
Fixed an issue where fdbserver was not being able to join the cluster during an upgrade. (PR #9814)
Fixed an assert in GetMappedRange that depends on the range read returning once it has at least one result. (PR #10522)
Fixed an issue where clients connecting to coordination server were never getting a response. (PR #10363)
Fixed an issue where describeBackup() never updated continousLogEnd property. (PR #10488)
Fixed an issue where watch was stuck due to races. (PR #11112)
Fixed an issue where ConnectionMonitor would incorrectly close connections. (PR #10495)
Fixed an issue where TSS conversion can be stuck sometimes. (PR #10711)
Fixed an issue where status timeout error on Cluster Controller was incorrectly triggering recovery. (PR #10791)
Status
Added RocksDB version to status JSON. (PR #11868)
Added support to fetch a specific group of status JSON fields. (PR #10927)
Added gray failure excluded processes to status JSON. (PR #11758)
Bindings
Fixed an issue where not calling Close() on the db object would result in memory leak in Go bindings. This is a breaking change since clients are now expected to close their db to avoid memory leak. (PR #11394)
Fixed an issue causing SIGSEGV when network routine was started multiple times concurrently in Go bindings. (PR #11104)
Fixed an issue where user’s transaction function FoundationDB error was getting reset in Go bindings. (PR #11810)
Fixed an issue causing panic when connecting to database from multiple threads in Go bindings. (PR #10702)
Added support to cancel snapshots and R/O transactions in Go bindings. (PR #11614)
Added GetClientStatus method to database in Go bindings. (PR #11627)
Other Changes
Removed upgrade support from 6.2 and earlier TLogs and made xxhash checksum the default for TLog. (PR #11667)
Added rate keeper logs for zones with lowest tps. (PR #11067)
Added LOG_CONNECTION_ATTEMPTS_ENABLED and CONNECTION_LOG_DIRECTORY to log all incoming connections to an external file. (PR #11704)
Added exclude in progress signal to fdbcli. (PR #11569)
Added a sidecar container that refreshes S3 credentials. (PR #11945)
Fixed an issue where storage and tlog store types were not valid as part of configure command. (PR #10876)
Improved BytesWritten in MovingData trace event to account for non-overlapped server lists. (PR #10076)
Dependencies
Upgraded boost to version 1.86. (PR #11788)
Upgraded awssdk to version 1.11.473. (PR #11853)
Upgraded RocksDB to 9.7.3. (PR #11735)
Added support for GCC 13 and Clang 19 compilers.