documentation/sphinx/source/release-notes/release-notes-630.rst
############# Release Notes #############
(PR #8558) <https://github.com/apple/foundationdb/pull/8558>_SpecialKeyRangeAsyncImpl::getRange bug. (PR #6453) <https://github.com/apple/foundationdb/pull/6453>_ConflictingKeysImpl::getRange bug. (PR #7724) <https://github.com/apple/foundationdb/pull/7724>_(PR #6453) <https://github.com/apple/foundationdb/pull/6453>_(PR #6413) <https://github.com/apple/foundationdb/pull/6413>_(PR #6193) <https://github.com/apple/foundationdb/pull/6193>_(PR #6115) <https://github.com/apple/foundationdb/pull/6115>_(PR #6025) <https://github.com/apple/foundationdb/pull/6025>_(PR #6106) <https://github.com/apple/foundationdb/pull/6106>_(PR #6088) <https://github.com/apple/foundationdb/pull/6088>_(PR #6073) <https://github.com/apple/foundationdb/pull/6073>_(PR #5760) <https://github.com/apple/foundationdb/pull/5760>_(PR #5759) <https://github.com/apple/foundationdb/pull/5759>_(PR #5771) <https://github.com/apple/foundationdb/pull/5771>_(PR #5774) <https://github.com/apple/foundationdb/pull/5774>_(PR #5665) <https://github.com/apple/foundationdb/pull/5665>_(PR #5674) <https://github.com/apple/foundationdb/pull/5674>_(PR #5689) <https://github.com/apple/foundationdb/pull/5689>_(PR #5695) <https://github.com/apple/foundationdb/pull/5695>_(PR #5696) <https://github.com/apple/foundationdb/pull/5696>_(PR 5607) <https://github.com/apple/foundationdb/pull/5607>_(Issue #5595) <https://github.com/apple/foundationdb/issues/5595>_(PR 5461) <https://github.com/apple/foundationdb/pull/5461>_(PR #5367) <https://github.com/apple/foundationdb/pull/5367>_(PR #5330) <https://github.com/apple/foundationdb/pull/5330>_trace_partial_file_suffix network option. This option will give unfinished trace files a special suffix to indicate they're not complete yet. When the trace file is complete, it is renamed to remove the suffix. (PR #5330) <https://github.com/apple/foundationdb/pull/5330>_RemovedDeadBackupLayerStatus trace event. (PR #5356) <https://github.com/apple/foundationdb/pull/5356>_(PR #5212) <https://github.com/apple/foundationdb/pull/5212>_(PR #5249) <https://github.com/apple/foundationdb/pull/5249>_TimeKeeperCommit trace event. (PR #5415) <https://github.com/apple/foundationdb/pull/5415>_RecruitFromConfigurationRetry trace event to improve recruitment observability. (PR #5455) <https://github.com/apple/foundationdb/pull/5455>_(PR #5460) <https://github.com/apple/foundationdb/pull/5460>_(PR #5221) <https://github.com/apple/foundationdb/pull/5221>_(PR #5221) <https://github.com/apple/foundationdb/pull/5221>_(PR #5255) <https://github.com/apple/foundationdb/pull/5255>_(PR #5228) <https://github.com/apple/foundationdb/pull/5228>_(PR #5173) <https://github.com/apple/foundationdb/pull/5173>_(PR #5160) <https://github.com/apple/foundationdb/pull/5160>_TLogPopDetails trace event to tLog pop. (PR #5134) <https://github.com/apple/foundationdb/pull/5134>_CommitBatchingEmptyMessageRatio metric to track the ratio of empty messages to tlogs. (PR #5087) <https://github.com/apple/foundationdb/pull/5087>_(PR #5046) <https://github.com/apple/foundationdb/pull/5046>_RecoveryInternal and ProxyReplies trace events to recovery_transaction step in recovery. (PR #5038) <https://github.com/apple/foundationdb/pull/5038>_(PR #5033) <https://github.com/apple/foundationdb/pull/5033>_ClusterControllerWorkerFailed trace event when a worker is removed from cluster controller. (PR #5035) <https://github.com/apple/foundationdb/pull/5035>_(PR #5019) <https://github.com/apple/foundationdb/pull/5019>_MasterMetrics trace event to count the number of requests of each type received. (PR #4829) <https://github.com/apple/foundationdb/pull/4829>_RecoveryCount to trace events when a transaction log begins. (PR #4944) <https://github.com/apple/foundationdb/pull/4944>_(PR #4907) <https://github.com/apple/foundationdb/pull/4907>_(PR #4932) <https://github.com/apple/foundationdb/pull/4932>_(PR #4932) <https://github.com/apple/foundationdb/pull/4932>_(PR #4863) <https://github.com/apple/foundationdb/pull/4863>_cluster.bounce_impact section to status to report if there will be any extra effects when bouncing the cluster, and if so, the reason for those effects. (PR #4770) <https://github.com/apple/foundationdb/pull/4770>_fetched_versions to the storage metrics section of status to report how fast a storage server is catching up in versions. (PR #4770) <https://github.com/apple/foundationdb/pull/4770>_fetches_from_logs to the storage metrics section of status to report how frequently a storage server fetches updates from transaction logs. (PR #4770) <https://github.com/apple/foundationdb/pull/4770>_bypass_unreadable transaction option which allows get operations to read from sections of keyspace that have become unreadable because of versionstamp operations. (PR #4774) <https://github.com/apple/foundationdb/pull/4774>_(PR #4810) <https://github.com/apple/foundationdb/pull/4810>_(PR #4824) <https://github.com/apple/foundationdb/pull/4824>_commit_batching_window_size to the proxy roles section of status to record statistics about commit batching window size on each proxy. (PR #4736) <https://github.com/apple/foundationdb/pull/4736>_(PR #4667) <https://github.com/apple/foundationdb/pull/4667>_(PR #4421) <https://github.com/apple/foundationdb/pull/4421>_proxy_memory_limit_exceeded. (PR #4526) <https://github.com/apple/foundationdb/pull/4526>_(PR #4554) <https://github.com/apple/foundationdb/pull/4554>_(PR #4454) <https://github.com/apple/foundationdb/pull/4454>_iteration_progression size defaults from 256 to 4096 bytes for better performance. (PR #4416) <https://github.com/apple/foundationdb/pull/4416>_FDBTransaction and RangeQuery. (PR #4385) <https://github.com/apple/foundationdb/pull/4385>_(PR #4269) <https://github.com/apple/foundationdb/pull/4269>_(PR #4332) <https://github.com/apple/foundationdb/pull/4332>_(Issue #4022) <https://github.com/apple/foundationdb/pull/4022>_workload.transactions.rejected_for_queued_too_long to status to report the number of transaction commits that failed because they were queued too long and could no longer be checked for conflicts. (PR #4353) <https://github.com/apple/foundationdb/pull/4353>_(PR #4201) <https://github.com/apple/foundationdb/pull/4201>_(PR #4270) <https://github.com/apple/foundationdb/pull/4270>_(PR #4258) <https://github.com/apple/foundationdb/pull/4258>_(PR #4175) <https://github.com/apple/foundationdb/pull/4175>_(PR #4161) <https://github.com/apple/foundationdb/pull/4161>_(PR #4128) <https://github.com/apple/foundationdb/pull/4128>_(PR #4112) <https://github.com/apple/foundationdb/pull/4112>_(PR #4104) <https://github.com/apple/foundationdb/pull/4104>_(PR #3935) <https://github.com/apple/foundationdb/pull/3935>_(PR #3983) <https://github.com/apple/foundationdb/pull/3983>_(PR #3983) <https://github.com/apple/foundationdb/pull/3983>_fdbcli, and certain types of tags can be automatically throttled by ratekeeper. (PR #2942) <https://github.com/apple/foundationdb/pull/2942>_getRange with the special key prefix \xff\xff/transaction/conflicting_keys/. (PR 2257) <https://github.com/apple/foundationdb/pull/2257>_exclude failed command to fdbcli. This command designates that a process is dead and will never come back, so the transaction logs can forget about mutations sent to that process. (PR #1955) <https://github.com/apple/foundationdb/pull/1955>_(Fast Restore Project) <https://github.com/apple/foundationdb/projects/7>_(PR #1625) <https://github.com/apple/foundationdb/pull/1625>_ (PR #2588) <https://github.com/apple/foundationdb/pull/2588>_ (PR #2642) <https://github.com/apple/foundationdb/pull/2642>_(PR #2537) <https://github.com/apple/foundationdb/pull/2537>_lock and unlock commands to fdbcli which lock or unlock a cluster. (PR #2890) <https://github.com/apple/foundationdb/pull/2890>_[\xff\xff, \xff\xff\xff)). (PR #2662) <https://github.com/apple/foundationdb/pull/2662>_--dstonly option of fdbdr abort. (PR 3457) <https://github.com/apple/foundationdb/pull/3457>_(PR #2520) <https://github.com/apple/foundationdb/pull/2520>_(PR #2518) <https://github.com/apple/foundationdb/pull/2518>_(PR #2941) <https://github.com/apple/foundationdb/pull/2941>_(PR #3069) <https://github.com/apple/foundationdb/pull/3069>_(PR #2735) <https://github.com/apple/foundationdb/pull/2735>_(PR #2735) <https://github.com/apple/foundationdb/pull/2735>_(PR #2986) <https://github.com/apple/foundationdb/pull/2986>_ (PR #2915) <https://github.com/apple/foundationdb/pull/2915>_ (PR #3024) <https://github.com/apple/foundationdb/pull/3024>_ (PR #2999) <https://github.com/apple/foundationdb/pull/2999>_(PR #1988) <https://github.com/apple/foundationdb/pull/1988>_ (PR #3103) <https://github.com/apple/foundationdb/pull/3103>_(PR #2648) <https://github.com/apple/foundationdb/pull/2648>_(PR #2538) <https://github.com/apple/foundationdb/pull/2538>_(PR #2513) <https://github.com/apple/foundationdb/pull/2513>_(PR #2028) <https://github.com/apple/foundationdb/pull/2028>_(PR #2882) <https://github.com/apple/foundationdb/pull/2882>_(PR #3063) <https://github.com/apple/foundationdb/pull/3063>_(PR #3068) <https://github.com/apple/foundationdb/pull/3068>_(PR #3403) <https://github.com/apple/foundationdb/pull/3403>_(PR #2932) <https://github.com/apple/foundationdb/pull/2932>_(PR #2917) <https://github.com/apple/foundationdb/pull/2917>_(PR #1985) <https://github.com/apple/foundationdb/pull/1985>_batch_transaction_throttled error instead of hanging indefinitely. (PR #1868) <https://github.com/apple/foundationdb/pull/1868>_(PR #2213) <https://github.com/apple/foundationdb/pull/2213>_SetVersionstampedKey atomic operation no longer conflicts with versions smaller than the current read version of the transaction. (PR #2557) <https://github.com/apple/foundationdb/pull/2557>_(PR #2499) <https://github.com/apple/foundationdb/pull/2499>_(PR #2228) <https://github.com/apple/foundationdb/pull/2228>_(PR #3051) <https://github.com/apple/foundationdb/pull/3051>_(PR #3026) <https://github.com/apple/foundationdb/pull/3026>_(PR #3153) <https://github.com/apple/foundationdb/pull/3153>_DISABLE_POSIX_KERNEL_AIO. (PR #2888) <https://github.com/apple/foundationdb/pull/2888>_(PR #3533) <https://github.com/apple/foundationdb/pull/3533>_(PR #3530) <https://github.com/apple/foundationdb/pull/3530>_(PR #3537) <https://github.com/apple/foundationdb/pull/3537>_fdbcli --exec 'exclude no_wait ...' would incorrectly report that processes can safely be removed from the cluster. [6.3.5] (PR #3566) <https://github.com/apple/foundationdb/pull/3566>_(PR #3845) <https://github.com/apple/foundationdb/pull/3845>_(PR #3850) <https://github.com/apple/foundationdb/pull/3850>_(PR #3964) <https://github.com/apple/foundationdb/pull/3964>_memory.available_bytes can no longer exceed the memory limit of the process. For purposes of this statistic, processes on the same machine will be allocated memory proportionally based on the size of their memory limits. (PR #3174) <https://github.com/apple/foundationdb/pull/3174>_cluster.database_locked status field with cluster.database_lock_state, which contains two subfields: locked (boolean) and lock_uid (which contains the database lock uid if the database is locked). (PR #2058) <https://github.com/apple/foundationdb/pull/2058>_worst_version_lag_storage_server and limiting_version_lag_storage_server from the cluster.qos section. The worst_data_lag_storage_server and limiting_data_lag_storage_server objects can be used instead. (PR #3196) <https://github.com/apple/foundationdb/pull/3196>_status command inside fdbcli. (PR #2605) <https://github.com/apple/foundationdb/pull/2605>_ (PR #2820) <https://github.com/apple/foundationdb/pull/2820>_status json output, even the value is reverted back to the default value. [6.3.5] (PR #3610) <https://github.com/apple/foundationdb/pull/3610>_(PR #4353) <https://github.com/apple/foundationdb/pull/4353>_API version upgrade guide <api-version-upgrade-guide-630> for upgrade details.@fdb.transactional decorator will now throw an error if the decorated function returns a generator. (PR #1724) <https://github.com/apple/foundationdb/pull/1724>_(PR #2809) <https://github.com/apple/foundationdb/pull/2809>_ByteArrayUtil. (PR #2823) <https://github.com/apple/foundationdb/pull/2823>_FDB.disableShutdownHook that can be used to prevent the default shutdown hook from running. Users of this new function should make sure to call stopNetwork before terminating a client process. (PR #2635) <https://github.com/apple/foundationdb/pull/2635>_keyAfter utility function that can be used to create the immediate next key for a given byte array. (PR #2458) <https://github.com/apple/foundationdb/pull/2458>_getSummary() and getResults() JNI calls for getRange() queries. [6.3.5] (PR #3681) <https://github.com/apple/foundationdb/pull/3681>_DirectByteBuffers in getRange() requests for better performance, which can be enabled using FDB.enableDirectBufferQueries. [6.3.5] (PR #3681) <https://github.com/apple/foundationdb/pull/3681>_Transact function will unwrap errors that have been wrapped using xerrors to determine if a retryable FoundationDB error is in the error chain. (PR #3131) <https://github.com/apple/foundationdb/pull/3131>_Subspace.PackWithVersionstamp that can be used to pack a Tuple that contains a versionstamp. (PR #2243) <https://github.com/apple/foundationdb/pull/2243>_Stringer interface for Tuple, Subspace, UUID, and Versionstamp. (PR #3032) <https://github.com/apple/foundationdb/pull/3032>_FDBKeyValue struct's key and value members have changed type from void* to uint8_t*. (PR #2622) <https://github.com/apple/foundationdb/pull/2622>_enable_slow_task_profiling network option and replaced it with enable_run_loop_profiling. (PR #2608) <https://github.com/apple/foundationdb/pull/2608>_ReadHotRangeLog. (PR #2046) <https://github.com/apple/foundationdb/pull/2046>_ (PR #2378) <https://github.com/apple/foundationdb/pull/2378>_ (PR #2532) <https://github.com/apple/foundationdb/pull/2532>_(PR #3079) <https://github.com/apple/foundationdb/pull/3079>_ (PR #3205) <https://github.com/apple/foundationdb/pull/3205>_TRACE_FILE_IDENTIFIER that can be used to provide a custom identifier string that will be part of the file name for all trace log files created on the client. (PR #2869) <https://github.com/apple/foundationdb/pull/2869>_TRACE_LOG_GROUP option on a client process after the database has been created. (PR #2862) <https://github.com/apple/foundationdb/pull/2862>_TRACE_CLOCK_SOURCE that can be used to switch the trace event timestamps to use a realtime clock source. (PR #2329) <https://github.com/apple/foundationdb/pull/2329>_INCLUDE_PORT_IN_ADDRESS transaction option is now on by default. This means get_addresses_for_key will always return ports in the address strings. (PR #2639) <https://github.com/apple/foundationdb/pull/2639>_getversion command to fdbcli which returns the current read version of the cluster. (PR #2882) <https://github.com/apple/foundationdb/pull/2882>_advanceversion command to fdbcli which increases the current version of a cluster. (PR #2965) <https://github.com/apple/foundationdb/pull/2965>_(PR #2608) <https://github.com/apple/foundationdb/pull/2608>_(PR #2198) <https://github.com/apple/foundationdb/pull/2198>_-add_prefix and -remove_prefix options with --add_prefix and --remove_prefix in fdbrestore (PR 3206) <https://github.com/apple/foundationdb/pull/3206>_\xff\xff/metrics/data_distribution_stats. (PR #2547) <https://github.com/apple/foundationdb/pull/2547>_\xff\xff/worker_interfaces/ keyspace now begins at a key which includes a trailing / (previously \xff\xff/worker_interfaces). Range reads to this range now respect the end key passed into the range and include the keyspace prefix in the resulting keys. (PR #3095) <https://github.com/apple/foundationdb/pull/3095>_(PR #2634) <https://github.com/apple/foundationdb/pull/2634>_(PR #2684) <https://github.com/apple/foundationdb/pull/2684>_fdb_run_network multiple times in a single run of a client program now returns an error instead of causing undefined behavior. [6.3.1] (PR #3229) <https://github.com/apple/foundationdb/pull/3229>_request_timeout changed to request_timeout_min, with prior name still supported. (PR #3533) <https://github.com/apple/foundationdb/pull/3533>_(PR #3703) <https://github.com/apple/foundationdb/pull/3703>_(PR #3706) <https://github.com/apple/foundationdb/pull/3706>_(PR #3809) <https://github.com/apple/foundationdb/pull/3809>_(PR #3833) <https://github.com/apple/foundationdb/pull/3833>_(6.2 Release Notes) </release-notes/release-notes-620>(6.2 Release Notes) </release-notes/release-notes-620>(6.2 Release Notes) </release-notes/release-notes-620>(6.2 Release Notes) </release-notes/release-notes-620>(6.2 Release Notes) </release-notes/release-notes-620>(6.2 Release Notes) </release-notes/release-notes-620>(PR #3377) <https://github.com/apple/foundationdb/pull/3377>_MIN_DELAY_STORAGE_CANDIDACY_SECONDS knob to MIN_DELAY_CC_WORST_FIT_CANDIDACY_SECONDS. [6.3.2] (PR #3327) <https://github.com/apple/foundationdb/pull/3327>_(PR #3352) <https://github.com/apple/foundationdb/pull/3352>_(PR #3361) <https://github.com/apple/foundationdb/pull/3361>_(PR #3653) <https://github.com/apple/foundationdb/pull/3653>_batch_transaction_throttled for API versions greater than or equal to 630. [6.3.6] (PR #3799) <https://github.com/apple/foundationdb/pull/3799>_(PR #3836) <https://github.com/apple/foundationdb/pull/3836>_(PR #3845) <https://github.com/apple/foundationdb/pull/3845>_6.2 (API Version 620) </release-notes/release-notes-620>6.1 (API Version 610) </release-notes/release-notes-610>6.0 (API Version 600) </release-notes/release-notes-600>5.2 (API Version 520) </release-notes/release-notes-520>5.1 (API Version 510) </release-notes/release-notes-510>5.0 (API Version 500) </release-notes/release-notes-500>4.6 (API Version 460) </release-notes/release-notes-460>4.5 (API Version 450) </release-notes/release-notes-450>4.4 (API Version 440) </release-notes/release-notes-440>4.3 (API Version 430) </release-notes/release-notes-430>4.2 (API Version 420) </release-notes/release-notes-420>4.1 (API Version 410) </release-notes/release-notes-410>4.0 (API Version 400) </release-notes/release-notes-400>3.0 (API Version 300) </release-notes/release-notes-300>2.0 (API Version 200) </release-notes/release-notes-200>1.0 (API Version 100) </release-notes/release-notes-100>Beta 3 (API Version 23) </release-notes/release-notes-023>Beta 2 (API Version 22) </release-notes/release-notes-022>Beta 1 (API Version 21) </release-notes/release-notes-021>Alpha 6 (API Version 16) </release-notes/release-notes-016>Alpha 5 (API Version 14) </release-notes/release-notes-014>