What yugabyte/yugabyte-db shipped
Written by FoxPlug from the repository's own releases; not affiliated with Yugabyte. Paste your own repository in the box below and FoxPlug writes the same weekly update for your product. This page is an automatic summary of the releases, pull requests and commits in github.com/yugabyte/yugabyte-db; Yugabyte did not write it and does not use or endorse FoxPlug. Every line links to the change it describes.
Get a weekly update like this for your product, free
Week of October 5, 2026
What shipped
- Yb-master now defaults
quick_leader_electionon, so an RF3 universe gets its first master leader without waiting a full election timeout on create or restart. Pull request #34783 - The tserver runs its local initdb while it waits for the master, instead of only after TabletServer::Init, shortening cluster startup. Pull request #34785
- The YSQL lease poller requests its first lease immediately rather than waiting a full
ysql_lease_refresher_interval_ms. Pull request #34787 - Local initdb on the tserver skips config probes and the postgres version check, cutting the number of postgres starts per node first start. Pull request #34786
- ExternalMiniCluster shuts down its tablet servers in parallel instead of one after another, so tests no longer spend as long stopping as starting. Pull request #34791
- DocDB allocates retryable request ids from sharded lock free allocators instead of one spinlock and std::set on the client. Pull request #34297
- DocDB replaces strings::Substitute and StringPrintf with Format() in src/yb and removes strings::Substitute. Pull request #34804
- YSQL returns free memory to the OS after connection startup, where TCMalloc previously kept freed catalog preload pages in its page heap. Pull request #34712
- Heartbeat locking pattern changed, with a follow-up fix for a deadlock between heartbeats and create colocated tables or vector index. Pull request #34674
- Last_autoanalyze and
autoanalyze_countare exposed inpg_stat_user_tables, classifying YB Auto Analyze backends as automatic ANALYZE processes. Pull request #33998
Why it matters
This week cuts cluster startup latency across the board: quicker master leader election, initdb overlapping the wait for the master, an immediate first YSQL lease, and fewer postgres starts per node. It also trims client-side and tserver-side overhead, undoes a heartbeat deadlock, returns freed preload memory to the OS, and exposes standard PostgreSQL auto analyze columns so monitoring works with familiar views.
Changelog entry
- Allocate retryable request ids from sharded lock free allocators. Pull request #34297
- Change heartbeat locking and fix a deadlock with create colocated tables and vector index. Pull request #34674
- Replace strings::Substitute and StringPrintf with Format() in src/yb. Pull request #34804
- Skip config probes and the postgres version check in local initdb. Pull request #34786
- Run the tserver's local initdb while it waits for the master. Pull request #34785
- Enable quick sys catalog leader election on master create and restart by default. Pull request #34783
- Request the first YSQL lease immediately. Pull request #34787
- Shut down ExternalMiniCluster tablet servers in parallel. Pull request #34791
- Expose
last_autoanalyzeandautoanalyze_countinpg_stat_user_tables. Pull request #33998 - Return free memory to the OS after connection startup. Pull request #34712
- Deflake RemoteBootstrapITest.TestRBSWithLazySuperblockFlush. Pull request #33575
- Do not trigger Jenkins builds for Markdown-only changes. Pull request #34773
Cluster startup gets faster this week: quick master leader election, tserver initdb overlapping the wait for master, an immediate first YSQL lease, and fewer postgres starts per node. Plus fewer postgres starts, heartbeats deadlock fix, and last_autoanalyze in pg_stat_user_tables
This week's changes focus on how fast a cluster and its connections come up. yb-master now defaults quick_leader_election on, so an RF3 universe does not wait a full election timeout for its first master leader on create or restart. The tserver runs its local initdb while waiting for the master rather than after TabletServer::Init, skips config probes and the postgres version check during local initdb, and requests its first YSQL lease immediately instead of waiting a full refresh interval. Tests shut down ExternalMiniCluster tablet servers in parallel. Elsewhere: retryable request ids come from sharded lock free allocators, strings::Substitute and StringPrintf are replaced by Format() in src/yb, free memory is returned to the OS after connection startup, a heartbeat deadlock with colocate
Week of September 28, 2026
What shipped
- Cache statistics updates now happen outside mutex locks in docdb, reducing contention since the values are already atomic. Pull request #34465
- RocksDB cache metrics were simplified to reduce redundancy across per-rocksdb statistics and lookup path counters. Pull request #34462
- Catalog preload batch size limits now apply per-RPC instead of per-operation, fixing prefetch budget distribution across tables. Pull request #34357
- Catalog cache preload now frees scanned rows after copying them, reducing memory overhead during initial connections. Pull request #34365
- Relcache preload scratch space is freed per row instead of after all relations build, lowering peak memory usage. Pull request #34396
- Google benchmark microbenchmarks support was added via ADD_YB_BENCHMARK to build C++ performance tests. Pull request #34536
- SST statistics including garbage and droppable-age data are now exported as Prometheus gauges for operational monitoring. Pull request #34014
- Write fence checks now judge against an operation's assigned hybrid time instead of a different reference point. Pull request #34382
- Yugabyted now displays yb-admin stdout when admin operations fail, making error messages visible to users. Pull request #34241
- Documentation explains the default concurrent mode behavior for CREATE INDEX. Pull request #34509
Why it matters
This week's changes focus on reducing memory overhead in catalog operations and improving observability for cache and SST behavior. Memory improvements to catalog preload and relcache building will reduce connection latency and peak memory on first connections after DDL. New cache metrics and SST statistics exports enable operators to build dashboards and understand compaction thresholds.
Changelog entry
- Docdb: Cache statistics updates now occur outside of mutex lock Pull request #34465
- Docdb: Simplified rocksdb cache metrics to reduce redundancy Pull request #34462
- YSQL: Prefetch batch bytes limit now applies per-RPC instead of per-operation Pull request #34357
- YSQL: Free scanned rows during catalog cache preload Pull request #34365
- YSQL: Free relcache preload scratch memory per row Pull request #34396
- Build: Added google/benchmark microbenchmark support with ADD_YB_BENCHMARK Pull request #34536
- DocDB: Export SST statistics as Prometheus gauges Pull request #34014
- DocDB: Judge write fence against operation's assigned hybrid time Pull request #34382
- Yugabyted: Show yb-admin stdout when admin operations fail Pull request #34241
- YSQL: Fixed leaked file descriptor on truncated qpm.stat read Pull request #34425
- YSQL: Honor
client_connection_check_intervalduring InitPostgres preload Pull request #34352 - Docs: Clarified CREATE INDEX default concurrent mode behavior Pull request #34509
Catalog preload now frees memory per row instead of batching, and cache metrics update outside locks. SST statistics export to Prometheus for monitoring.
This week we reduced catalog preload memory overhead by freeing scanned rows immediately rather than batching deletions, lowering peak memory during first connections after DDL. Cache statistics now update outside mutex locks to reduce contention. We also added Prometheus exports for SST garbage statistics, enabling operators to build dashboards and study compaction thresholds.
Week of September 21, 2026
What shipped
- YSQL catalog cache preloading now uses a 10 MiB aggregate response budget instead of 1,024-row page limits, reducing serial master round trips after DDL on large catalogs in multi-region clusters. Pull request #34178
- DocDB now supports an optional
max_num_replicasconstraint on placement blocks for cluster, table, and tablespace policies to control replica distribution. Pull request #32828 - DocDB thin client now supports UINT32 columns, enabling it to open tables keyed by oids. Pull request #34152
- LongOperationTracker lock contention reduced by replacing a single process-wide mutex with per-entry locking. Pull request #33273
- DocDB now reports per-drive write throughput alongside fsync latency metrics for better device performance interpretation. Pull request #34082
- YSQL fixed a NULL crash in row comparison binds when comparing rows with NULL varlena columns. Release
- DocDB thin client stack trace collection now uses libunwind to prevent deadlocks during creation on certain allocators. Pull request #34198
- YSQL webserver test isolation on macOS fixed by reordering pkill options to prevent unrelated process kills during parallel test runs. Pull request #33588
- YBA now allows skipping storage configuration validation via runtime config for backup storage that the YBA host cannot directly reach. Pull request #34081
- Build system now reruns new tests on integration lanes to catch flakiness introduced at commit time. Pull request #34029
Why it matters
This week ships improvements to query performance and reliability: catalog preloading is faster on large clusters, placement constraints provide better control over replica distribution, and thin client support for more column types enables new use cases. Several fixes address crashes, deadlocks, and test isolation issues that improve stability.
Changelog entry
- YSQL: Fixed PgSchemaVersionMismatchBackfillTest.BackfillSurfaceAsSerializationFailure Release
- YSQL: Fixed NULL crash in row comparison binds with varlena key columns Release
- YSQL: Fixed TestWebserverKill killing unrelated processes on macOS Pull request #33588
- YSQL: Batch catalog preload requests by 10 MiB byte limits instead of 1,024-row limits Pull request #34178
- DocDB: Added UINT32 column support to
yb_thin_clientfor oid-keyed tables Pull request #34159 - DocDB: Colocated tombstone cache now persists across schema GC and backfill Pull request #34153
- DocDB: Non-ASCII bytes now properly escaped in Slice::ToDebugString regardless of locale Pull request #33568
- DocDB: Thin client stack traces now collected through libunwind to prevent deadlocks Pull request #34198
- YSQL: Fixed PgSchemaVersionMismatchBackfillTest.BackfillSurfacesAsSerializationFailure under TSAN Pull request #34206
- DocDB: Raft catch-up unstuck by advancing
last_received_current_leaderon fully-deduplicated requests Pull request #34085 - DocDB: Sort indicator now visible on table headers in web UI Pull request #34129
- DocDB: Per-drive write throughput and fsync latency metrics added Pull request #34082
- DocDB: Placement blocks now support optional
max_num_replicasconstraint Pull request #32828 - DocDB: LongOperationTracker lock contention reduced with per-entry locking Pull request #33273
- Build: macOS builds migrated from macOS 14 to macOS 15 Pull request #34053
New in yugabyte-db: faster DDL on large catalogs with adaptive response budgets, placement block replica limits, thin client UINT32 support, reduced lock contention in operation tracking, and per-drive fsync metrics.
This week's yugabyte-db updates focus on performance and reliability improvements. Catalog preloading now adapts to response size budgets instead of fixed row limits, reducing latency after DDL on large clusters. New placement block constraints give operators fine-grained control over replica distribution. The thin client gains support for UINT32 columns to open tables keyed by oids. Lock contention improvements reduce blocking in operation tracking. Per-drive write throughput metrics alongside fsync latency provide clearer device performance visibility.
Week of September 14, 2026
What shipped
- Distributed trace context now propagates across RPC boundaries, with the request header carrying an optional trace-context field that flows from caller to callee. Pull request #33112
- The
dist_tracelibrary was reworked into a span-and-scope API with entry points for starting traces and re-establishing parent context. Pull request #33116 - Trace context now carries across thread boundaries so work handed to worker, reactor, scheduler, or Raft apply threads continues the originating trace. Pull request #33114
- Trace context propagates over the PG-tserver shared memory exchange so requests bypassing the RPC stack still join the caller's trace. Pull request #33113
- The traceparent header now propagates to PG backends via the startup packet so backend initialization and statements root under the originating trace. Pull request #33115
- Per-tablet in-memory aggregation was added for SST statistics to answer questions across multiple SSTfiles rather than single-file records. Pull request #33887
- Index backfill failures now report with PostgreSQL SQLSTATE codes instead of the generic XX000 error code. Pull request #33748
- CheckpointMultipleDatabases in xCluster replication was capped at 64 databases to prevent excessive concurrent DDL operations. Pull request #33933
- Python 3.14 was added to the supported interpreter versions for YBA with updated dependency pins. Pull request #33993
- YBA now fails fast with a clear error when the master leader is missing instead of silently dereferencing null values. Pull request #33840
Why it matters
Distributed tracing infrastructure across RPC boundaries and thread hops enables operators to track requests through the entire system. Improvements to error reporting, resource limits, and safety checks make the database more reliable and easier to debug.
Changelog entry
- Distributed trace context now propagates across RPC boundaries Pull request #33112
- Reworked
dist_tracelibrary into span-and-scope API Pull request #33116 - Trace context carries across thread boundaries Pull request #33114
- Trace context propagates over PG-tserver shared memory exchange Pull request #33113
- Traceparent propagates to PG backends via startup packet Pull request #33115
- Per-tablet in-memory aggregation for SST statistics Pull request #33887
- Index backfill failures report with PostgreSQL SQLSTATE codes Pull request #33748
- CheckpointMultipleDatabases capped at 64 databases in xCluster Pull request #33933
- Python 3.14 added to YBA supported versions Pull request #33993
- YBA fails fast with clear error when master leader is missing Pull request #33840
Distributed tracing now flows across RPC boundaries, thread hops, and shared memory exchanges. Better error codes and safety checks improve debugging and prevent silent failures.
This week's work strengthens distributed tracing throughout YugabyteDB. Trace context now propagates across RPC boundaries, thread boundaries, and the PG-tserver shared memory path—enabling operators to follow requests through the entire system. We also improved error reporting with proper PostgreSQL error codes, added resource limits for xCluster operations, and added safety checks to fail fast when critical components are missing.