Cluster: cjk99o0a3v32vef0rqtg (preprod) Upgrade: v25.3.10 → v26.1.1-rc2 Date: March 11, 2026 ~14:42-14:45 UTC
All 3 nodes restarted simultaneously (not rolling) at 14:42-14:45 UTC on March 11. Additional restarts occurred through March 13 01:04 UTC.
| Node | Restarts |
|---|---|
| rp-...-a-0 | Mar 11 14:42, Mar 12 00:27, 01:05, 15:02, 15:40 |
| rp-...-a-1 | Mar 11 14:43, Mar 12 13:00, 13:40, 15:19, Mar 13 00:26 |
| rp-...-a-2 | Mar 11 14:45, Mar 12 00:43, 13:18, Mar 13 00:42, 01:04 |
| Window | Period | Description |
|---|---|---|
| Pre-upgrade | Mar 11 08:00-14:00 UTC | v25.3.10, 6h, 0 under-replicated replicas |
| Post-upgrade stable | Mar 13 02:00-12:00 UTC | v26.1.1-rc2, 10h, all nodes stable since 01:04, 0 under-replicated replicas |
The post-upgrade window (Mar 13 02:00-12:00) was chosen because all three nodes had completed their final restarts by 01:04, there were zero under-replicated replicas, and the workload (produce/fetch rate, partition count) is identical to pre-upgrade.
An earlier clean window (Mar 12 02:00-12:00) also exists, though some nodes had not yet completed their final restarts.
Partition count remained constant at 467 throughout.
| Metric | Pre (v25.3.10) | Post (v26.1.1-rc2) | Change |
|---|---|---|---|
| Produce rate | 41,516 rec/s | 41,415 rec/s | -0.2% |
| Fetch rate | 41,612 rec/s | 41,526 rec/s | -0.2% |
| Request bytes | 130.3 MB/s | 131.2 MB/s | +0.7% |
| Avg CPU busy | 57.8% | 53.9% | -6.8% |
| IO Write ops/s | 18,207 | 18,344 | +0.8% |
| IO Read ops/s | 740 | 754 | +1.9% |
| Kafka RPC p99 latency | 319.2 ms | 314.9 ms | -1.3% |
| Internal RPC p99 latency | 8.56 ms | 8.72 ms | +1.9% |
| Cloud storage upload | 57.1 MB/s | 56.7 MB/s | -0.8% |
| Metric | Pre (Mar 11 08-14) | Post (Mar 13 02-12) | Change |
|---|---|---|---|
| Produce avg latency | 3.468 ms | 3.077 ms | -11.3% |
| Produce p50 latency | 2.890 ms | 2.466 ms | -14.7% |
| Produce p95 latency | 8.029 ms | 7.744 ms | -3.6% |
| Produce p99 latency | 16.126 ms | 15.518 ms | -3.8% |
| Produce request rate | 1,992 req/s | 2,027 req/s | +1.8% |
| Node | Pre p50 | Post p50 | Change | Pre p99 | Post p99 | Change |
|---|---|---|---|---|---|---|
| a-0 | 2.809 ms | 2.391 ms | -14.9% | 15.364 ms | 14.782 ms | -3.8% |
| a-1 | 2.985 ms | 2.404 ms | -19.5% | 17.749 ms | 15.930 ms | -10.3% |
| a-2 | 2.872 ms | 2.599 ms | -9.5% | 16.548 ms | 16.734 ms | +1.1% |
Mar 11 08:00 3.442ms
Mar 11 09:00 3.380ms
Mar 11 10:00 3.510ms
Mar 11 11:00 3.511ms
Mar 11 12:00 3.486ms
Mar 11 13:00 3.478ms
Mar 11 14:00 3.709ms <-- UPGRADE
Mar 11 15:00 3.264ms
Mar 11 16:00 3.225ms
Mar 11 17:00 3.183ms
Mar 11 18:00 3.180ms
Mar 11 19:00 2.996ms
Mar 11 20:00 2.968ms
Mar 11 21:00 2.921ms
Mar 11 22:00 2.960ms
...
Mar 13 02:00 2.744ms
Mar 13 03:00 2.852ms
Mar 13 04:00 2.909ms
Mar 13 05:00 2.923ms
Mar 13 06:00 3.157ms
Mar 13 07:00 3.211ms
Mar 13 08:00 3.253ms
Mar 13 09:00 3.326ms
Mar 13 10:00 3.216ms
Mar 13 11:00 3.185ms
Mar 11 08:00 15.884ms
Mar 11 09:00 15.700ms
Mar 11 10:00 16.127ms
Mar 11 11:00 16.279ms
Mar 11 12:00 16.058ms
Mar 11 13:00 16.707ms
Mar 11 14:00 22.417ms <-- UPGRADE (transient spike)
Mar 11 15:00 22.905ms
Mar 11 16:00 23.326ms
Mar 11 17:00 23.587ms
Mar 11 18:00 22.889ms
Mar 11 19:00 14.930ms
Mar 11 20:00 14.833ms
Mar 11 21:00 14.531ms
Mar 11 22:00 14.762ms
...
Mar 13 02:00 14.169ms
Mar 13 03:00 14.723ms
Mar 13 04:00 15.252ms
Mar 13 05:00 15.340ms
Mar 13 06:00 15.794ms
Mar 13 07:00 16.185ms
Mar 13 08:00 16.079ms
Mar 13 09:00 16.432ms
Mar 13 10:00 15.883ms
Mar 13 11:00 15.303ms
Note: Histogram bucket boundaries are at powers of 2 (2.047ms, 4.095ms, 8.191ms, 16.383ms), so quantile estimates carry some interpolation error. The
sum/countaverage (-11.3%) is exact.
| Scheduling Group | Pre (s/s) | Post (s/s) | Change | Abs Diff |
|---|---|---|---|---|
| produce | 0.619 | 0.521 | -15.9% | -0.098 |
| fetch | 0.707 | 0.609 | -13.9% | -0.098 |
| main | 0.700 | 0.614 | -12.3% | -0.086 |
| raft_send | 0.236 | 0.202 | -14.4% | -0.034 |
| raft_recv | 0.392 | 0.345 | -12.0% | -0.047 |
| admin | 0.017 | 0.008 | -53.1% | -0.009 |
| archival_upload | 0.204 | 0.190 | -7.2% | -0.015 |
| kafka | 0.251 | 0.247 | -1.6% | -0.004 |
| log_compaction | 0.077 | 0.083 | +8.0% | +0.006 |
| ts_read | 0.226 | 0.225 | -0.4% | -0.001 |
| raft_hb | 0.006 | 0.004 | -32.2% | -0.002 |
| cache_background_reclaim | 0.011 | 0.010 | -8.0% | -0.001 |
| cluster | 0.009 | 0.008 | -10.8% | -0.001 |
| TOTAL | 3.455 | 3.065 | -11.3% | -0.390 |
Three new scheduling groups appeared post-upgrade (cloud_topics_compaction, cloud_topics_metastore, cloud_topics_reconciler) but consume negligible CPU.
| Node | Pre CPU | Post CPU | Change |
|---|---|---|---|
| a-0 | 52.9% | 51.7% | -2.3% |
| a-1 | 60.9% | 53.8% | -11.7% |
| a-2 | 59.5% | 56.6% | -4.9% |
-
Produce latency improved: Median latency dropped ~15%, average dropped ~11%, p99 dropped ~4%. The improvement was immediate after the upgrade.
-
CPU efficiency improved: Total scheduler runtime decreased 11.3% with identical throughput. The largest savings came from the
produce,fetch,main, andraftscheduling groups. -
Throughput unchanged: Produce rate (~41,500 rec/s), fetch rate (~41,500 rec/s), and request bytes (~131 MB/s) are effectively identical pre and post upgrade.
-
I/O unchanged: Both read and write I/O ops are within ~2% of pre-upgrade levels.
-
Tail latency note: p99 produce latency showed a transient spike (15ms → 23ms) in the first ~4 hours after upgrade (14:00-18:00 Mar 11), then settled to ~15.5ms which is slightly better than the pre-upgrade ~16.1ms.
-
Node a-1 benefited most: Saw the largest p50 improvement (-19.5%), p99 improvement (-10.3%), and CPU reduction (-11.7%).