MartijnVisser opened a new pull request, #126: URL: https://github.com/apache/flink-benchmarks/pull/126
## Purpose of the change [FLINK-38199](https://issues.apache.org/jira/browse/FLINK-38199) adds a benchmark for the sink upsert materializer. This supersedes #106, which stalled after the review in August 2025. Roman's commit is kept as the first one, formatted for spotless and checkstyle. ## Brief change log - `SinkUpsertMaterializerBenchmark` with the `flink-table-runtime` test-jar (Roman's commit). - Steady-state invocation as requested in #106, V1 and V2 as `sumVersion`, `historyLength` instead of `retractDelay` and `retractPercentage`, and the method renamed to `sinkUpsertMaterializer` for codespeed. ## Verifying this change Nightly settings (3 forks, 1s iterations), Apple M4 Pro, JDK 17.0.20, Flink 2.5-SNAPSHOT of 2026-10-27: ``` Benchmark (hasUpsertKey) (historyLength) (stateBackend) (sumVersion) Cnt Score Error Units sinkUpsertMaterializer false 1 HEAP V1 30 11771.696 ± 401.518 ops/ms sinkUpsertMaterializer false 1 HEAP V2 30 10899.396 ± 489.130 ops/ms sinkUpsertMaterializer false 1 ROCKSDB V1 30 1092.108 ± 13.299 ops/ms sinkUpsertMaterializer false 1 ROCKSDB V2 30 1053.408 ± 14.309 ops/ms sinkUpsertMaterializer false 500 HEAP V1 30 9850.618 ± 302.234 ops/ms sinkUpsertMaterializer false 500 HEAP V2 30 7705.531 ± 173.707 ops/ms sinkUpsertMaterializer false 500 ROCKSDB V1 30 62.259 ± 2.372 ops/ms sinkUpsertMaterializer false 500 ROCKSDB V2 30 51.295 ± 2.909 ops/ms sinkUpsertMaterializer true 1 HEAP V1 30 11096.558 ± 215.350 ops/ms sinkUpsertMaterializer true 1 HEAP V2 30 11125.033 ± 166.121 ops/ms sinkUpsertMaterializer true 1 ROCKSDB V1 30 1103.929 ± 10.641 ops/ms sinkUpsertMaterializer true 1 ROCKSDB V2 30 1088.516 ± 7.573 ops/ms sinkUpsertMaterializer true 500 HEAP V1 30 948.492 ± 6.868 ops/ms sinkUpsertMaterializer true 500 HEAP V2 30 1952.607 ± 79.412 ops/ms sinkUpsertMaterializer true 500 ROCKSDB V1 30 57.094 ± 1.373 ops/ms sinkUpsertMaterializer true 500 ROCKSDB V2 30 48.022 ± 0.336 ops/ms ``` With the sink loggers at INFO, no retraction missed its row in any combination. ## Impact and documentation Adds 16 combinations, about 16 minutes in the nightly run. --- ##### Was generative AI tooling used to co-author this PR? - [X] Yes (please specify the tool below) Generated-by: Claude Code (Claude Opus 5.5) -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: [email protected] For queries about this service, please contact Infrastructure at: [email protected]
