Release Notes

7.3.37

  • Same as 7.3.36 release with AVX enabled.

7.3.36

  • Fixed a DR corruption issue where destination cluster gets no mutations. (PR #11246)

  • Added rocksdb direct_io knobs. (PR #11267)

7.3.35

  • Same as 7.3.34 release with AVX enabled.

7.3.34

  • Added storage-queue-aware load balancer for data distributor. (PR #11195)

  • Added a checksum field in MutationRef. (PR #11193)

  • Abort processes when abnormal shutdown is initiated to enable coredumps. (PR #11198)

  • Fixed fdbcli’s checkall debug command. (PR #11208)

  • Added knobs for enabling RocksDB in-memory checksums for data structures. (PR #11214)

  • Fixed calculation of EmptyMessageRatio when version vector was enabled. (PR #11227)

  • Added consistency checker urgent mode. (PR #11228)

  • Disabled compaction compaction for newly added shard and fixed block cache usage reporting. (PR #11247)

  • Fixed setting perpetual_storage_wiggle_engine is considered as wrongly configured. (PR #11252)

  • Added a max range deletions knob before flush. (PR #11243)

7.3.33

  • Same as 7.3.32 release with AVX enabled.

7.3.32

  • Enabled data distributor verbose tracing by default. (PR #11159)

  • Added RocksDB file checksum knobs. (PR #11171)

  • Fixed a regression that caused rebalance data moves to be scheduled at a much lower frequency. (PR #11167)

  • Added throttling of RocksDB flushes when memtable layers exceed a limit. (PR #11182)

  • Added a trace event when a log router cannot find its primary peek location. (PR #11180)

  • Upgraded RocksDB version to 8.10.0. (PR #11175)

  • Added periodical logging for RocksDB compaction reasons. (PR #11186)

7.3.31

  • Same as 7.3.30 release with AVX disabled.

7.3.30

  • Fixed an issue in Ratekeeper that could cause StorageQueueInfo loss. (PR #11124)

  • Fixed checkall command for large shards. (PR #11121)

7.3.29

  • Same as 7.3.28 release with AVX disabled.

7.3.28

  • Fixed a race condition in kvstorerockddb when accessing latencySample. (PR #11114)

  • Added support for physical shard move. (PR #11086)

  • Disabled CPU based team selection in rebalance data move. (PR #11110)

7.3.27

  • Same as 7.3.26 release with AVX disabled.

7.3.26

7.3.25

  • Same as 7.3.24 release with AVX enabled.

7.3.24

  • Released with AVX disabled.

  • Added support for large shard. (PR#10965)

  • Fixed perpetual wiggle locality match regex. (PR#10973)

  • Added a knob to throttle perpetual wiggle data move. (PR#10957)

7.3.19

  • Same as 7.3.18 release with AVX enabled.

7.3.18

  • Released with AVX disabled.

  • Changed Event to use std::latch from c++20. (PR #10929)

  • Added support for preinstalled libfmt. (PR #10929)

  • Changed perpetual_storage_wiggle_locality database option to take a list of localities. (PR #10928)

  • Fixed the trailing newline in c++filt output for Implib.so. (PR #10921)

  • Stopped tracking a storage server after its removal. (PR #10921)

  • Fixed Ratekeeper for not accounting dropped requests. (PR #10921)

  • Fixed a memory leak of cluster controller’s status json invocation. (PR #10921)

  • Fixed cluster controller from issuing many point reads for storage metadata. (PR #10906)

  • Fixed multiple issues with AuditStorage. (PR #10895)

  • Disabled storage server read sampling by default. (PR #10899)

7.3.17

  • Same as 7.3.16 release with AVX enabled.

7.3.16

  • Released with AVX disabled.

  • Added location_metadata fdbcli to query shard locations and assignements. (PR #10428)

  • Added degraded/disconnected peer recovery in gray failure. (PR #10541)

  • Added replica and metadata audit support. (PR #10631)

  • Added a SecurityMode for data distributor where data movements are not allowed but auditStorage is enabled. (PR #10660)

  • Remove SS entries from RateKeeper once it is down. (PR #10681)

  • Added the support of manual compaction for Sharded RocksDB. (PR #10815)

7.3.0

Fixes

  • Fixed a consistency scan infinite looping without progress bug when a storage server is removed. (PR #9154)

  • Fixed a backup worker assertion failure. (PR #8886)

  • Fixed a DD stuck issue when the remote data center is dead. (PR #9338)

  • Exclude command will not perform a write if the addresses being excluded are already excluded. (PR #9873)

  • ConsistencyCheck should finish after complete scan than failing on first mismatch. (PR #8539)

Bindings

Performance

  • Improvements on physical shard creation to reduce shard count. (PR #9067)

  • Older TLog generations are garbage collected as soon as they are no longer needed. (PR #10289)

Reliability

  • Gray failure will monitor satellite TLog disconnections.

  • Storage progress is logged during the slow recovery. (PR #9041)

  • Added a new network option fail_incompatible_client. If the option is set, transactions are failing with fail_incompatible_client in case of an attempt to connect to a cluster without providing a compatible client library

Status

Other Changes

  • Added MonotonicTime field, based on system clock, to CommitDebug trace events, for accurate timing.

  • Added a new function fdb_database_get_client_status providing a client-side connection status information in json format.

  • Added a new network option retain_client_library_copies to avoid deleting the temporary library copies after completion of the process. This may be useful in various debugging and profiling scenarios.

  • Added a new network option trace_initialize_on_setup to enable client traces already on fdb_setup_network, so that traces do not get lost on client configuration issues

  • TraceEvents related to TLS handshake, new connections, and tenant access by authorization token are no longer subject to suppression or throttling, using an internal “AuditedEvent” TraceEvent classification

  • Usage of authorization token is logged as part of AuditedEvent, with 5-second suppression time window for duplicate entries (suppression time window is controlled by AUDIT_TIME_WINDOW flow knob)

Earlier release notes