What's Changed
- fix(ci): check future milestone in bump main workflow by @cyliu0 in #24685
- chore(deps): Bump sysinfo from 0.37.2 to 0.38.0 by @dependabot[bot] in #24600
- refactor: use strong typed id in system catalog and strong typed UserId by @wenym1 in #24677
- chore: move cursor rules to AGENTS.md by @BugenZhao in #24709
- refactor(grafana): improve cluster alerts by @kwannoel in #24518
- feat: support downloading gcloud-cli for both Linux and macOS by @Standing-Man in #24512
- chore(deps): Bump bytes from 1.11.0 to 1.11.1 by @dependabot[bot] in #24699
- test(meta): enhance validation of drop object tests by @Standing-Man in #24665
- refactor: strong typed hummock id by @wenym1 in #24689
- feat: support table functions for datafusion by @silver-ymz in #24715
- feat: Add Kafka consumer lag catalog and monitoring tests by @tabVersion in #24708
- fix(snapshot-backfill): fix deadlock caused by next_epoch by @wenym1 in #24693
- feat(optimizer): improve locality backfill for agg by @chenzl25 in #24710
- fix(iceberg): clear iceberg compaction meta data when dropping iceberg sink by @chenzl25 in #24730
- feat: support show cursors and subscription cursors for all frontend nodes by @Standing-Man in #24107
- feat(frontend): support enable_serverless_backfill by @chenzl25 in #24686
- feat: add metrics for datafusion engine by @silver-ymz in #24707
- feat: support
DROP SECRET CASCADEby @Standing-Man in #24581 - feat: enhance oom handling for datafusion by @silver-ymz in #24736
- feat(frontend): support equivalent batch orders for eq-prefix scans by @chenzl25 in #24729
- feat: support caching object dependencies info in frontend by @yezizp2012 in #24706
- chore(frontend): support FATAL message by @yezizp2012 in #24704
- refactor(types): make
StructTypedebug output concise by @BugenZhao in #24651 - fix: disallow duplicate CTE names within the same WITH clause by @Standing-Man in #24676
- feat(prost): support strong typed map value type by @wenym1 in #24695
- chore(deps): Bump tempfile from 3.24.0 to 3.25.0 by @dependabot[bot] in #24759
- feat(frontend): allow users to confirm if background_ddl is enabled for a sink by @Standing-Man in #24338
- fix(meta): fix compaction group merge scheduling efficiency by @Li0k in #24757
- chore: add agent skill
fix-buildkite-ciby @BugenZhao in #24752 - chore: Replace unmaintained rustls-pemfile with rustls-pki-types by @Copilot in #24712
- refactor(source): skip bad file splits after retry in fs_fetch executor by @wcy-fdu in #24718
- refactor: update some metric level by @zwang28 in #24750
- fix: panic when DataFusionPlanConverter fails by @silver-ymz in #24766
- feat: support LogicalExpand in DataFusion by @silver-ymz in #24767
- feat(cdc): support postgres 18 by @wcy-fdu in #24765
- feat(cdc): add
RW_JAVA_LOGto control Java connector logging granularity by @wcy-fdu in #24404 - feat(source): add Parquet case-insensitive column matching option for file source by @wcy-fdu in #24734
- refactor(cdc): add configurable total timeout for CDC schema history
putObjectby @wcy-fdu in #24749 - feat: risectl command to force change Source Connector Props by @tabVersion in #24392
- fix(cdc): excluded generated column from postgres publication validation by @wcy-fdu in #24380
- fix(frontend): wait for notification version on WAIT command by @wenym1 in #24768
- fix: update heartbeat to include CPU and memory resource information for consistency by @yezizp2012 in #24781
- Bound default adaptive parallelism to 64 by @kwannoel in #24678
- feat(refill): support meta cache refill concurrency limit by @MrCroxx in #24787
- feat(observability): add fragment-level immutable memtable memory metrics by @EdwinaZhu in #24620
- ci: add on-demand ec2 docker image workflow by @Li0k in #24797
- feat: add a config to control whether state table vnode prunning is enabled by @hzxa21 in #24703
- feat(observability): add memory profiling for log store buffer by @EdwinaZhu in #24688
- feat: add metrics for cross database consuming epoch by @qccash in #24802
- feat: add RescheduleIntent command and resolve in barrier worker by @shanicky in #24670
- refactor: improve compaction schedule by @Li0k in #24733
- fix(udf): use forked
gineproto avoid leaking background LB probe task by @BugenZhao in #24705 - chore(deps): Bump org.assertj:assertj-core from 3.27.4 to 3.27.7 in /java by @dependabot[bot] in #24601
- chore: add gemini review bot config by @yuhao-su in #24820
- feat(pgwire): support setting session params via
StartupMessage::optionsby @xiangjinwu in #24754 - chore(deps): Bump enum-as-inner from 0.6.0 to 0.7.0 by @dependabot[bot] in #24680
- chore(deps): Bump async-openai from 0.32.3 to 0.33.0 by @dependabot[bot] in #24822
- chore(deps): Bump uuid from 1.19.0 to 1.20.0 by @dependabot[bot] in #24599
- test: fix integration test by @tabVersion in #24816
- feat(config): Increase max storage memory proportion by @maingoh in #24644
- chore(deps): Bump aws-lc-rs from 1.15.3 to 1.16.0 by @dependabot[bot] in #24823
- feat(optimizer): support mv selection for batch queries by @chenzl25 in #24611
- feat(optimizer): support prunning for mv selection by @chenzl25 in #24751
- feat(license): maintain rwu limit check for single-node deployments by @hzxa21 in #24796
- feat: add support to alter backfill parallelism for streaming jobs by @shanicky in #24323
- chore: clarify generated alter-on-fly update path by @tabVersion in #24847
- fix(meta): narrow reschedule blocking for creating backfill jobs by @shanicky in #24798
- feat(sink): support alter jdbc sink url , username and password by @xxhZs in #24846
- fix: subtract overflow when passing empty array to array_positions by @silver-ymz in #24860
- chore(deps): Bump toml from 0.9.11+spec-1.1.0 to 1.0.3+spec-1.1.0 by @dependabot[bot] in #24830
- feat: mapping datafusion array functions by @silver-ymz in #24859
- feat(connector): add configurable write-parquet-properties for Iceberg sink and compaction by @Copilot in #24612
- fix(stream): cap staged watermarks per upstream to prevent unbounded memory growth by @yuhao-su in #24856
- fix(mysql-cdc): fix MySQL CDC auto schema change for UNSIGNED integer types by @wcy-fdu in #24855
- fix(optimizer): move locality enforcement to logical_rewrite_for_stream by @chenzl25 in #24850
- chore(dashboard): bump node.js version to 16 by @yuhao-su in #24819
- fix(iceberg): fix staging pk in iceberg refreshable table by @chenzl25 in #24872
- fix(iceberg): upgrade iceberg dependencies by @chenzl25 in #24873
- fix: support jdbc sink alter-on-fly fields by @tabVersion in #24861
- chore: align datafusion spill dir with risingwave config by @silver-ymz in #24877
- refactor(meta): introduce partial graph manager and extract common logic by @wenym1 in #24428
- fix(iceberg): fix flaky test t-refresh-composite-pk by @chenzl25 in #24888
- fix(storage): fix last_serde for NonPkPrefixSkipWatermarkState and ValueSkipWatermarkState by @zwang28 in #24890
- fix: update broken documentation URLs by @lmatz in #24897
- feat(sink): add keeplive with option for pg rust sink and jdbc sink by @xxhZs in #24388
- feat: reserve memory headroom for unspillable DataFusion operators by @silver-ymz in #24883
- feat(subscription): support altering retention of subscription by @wenym1 in #24842
- fix(storage): fix iter_with_prefix_respecting_watermark for NonPkPrefix by @zwang28 in #24909
- fix(meta): fence drop vs split updates and skip stale fragment splits by @tabVersion in #24887
- feat: show sink's target table in system table and describe statement by @Standing-Man in #24893
- feat: add ca option for schema registry by @tabVersion in #17826
- UPD: add fn has_schema_usage_privilege to allow schema owner has USAGE privilege on the schema by @qccash in #24692
- refactor(hummock): unify level normalization for table-id mutations by @Li0k in #24896
- refactor(meta): apply command in inflght state in one step by @wenym1 in #24906
- fix(frontend): preserve join shape in consecutive join separation by @yezizp2012 in #24925
- test: fix flaky rate limit source test by @tabVersion in #24931
- feat(optimizer): agg mv selection by @chenzl25 in #24782
- fix(optimizer): fix full outer join null filter by @chenzl25 in #24899
- feat(pg-cdc): monitor upstream max lsn and more accurate lsn lag by @wcy-fdu in #24919
- chore: bump tonic and prost to 0.14 by @BugenZhao in #24727
- feat(risedev): allow multiple levels in manual compaction trigger by @yuhao-su in #24843
- feat: enable clippy lints for stack overflow detection & fix warnings by @faketygg in #24939
- fix(storage): fix iter_with_prefix_respecting_watermark for nonpkprefix by @zwang28 in #24950
- chore: recommend user to use locality backfill by @hzxa21 in #24784
- feat(frontend): support locality backfill in rw_fragment_backfill_progress by @yezizp2012 in #24955
- fix(source): try fix flaky e2e source test by @wenym1 in #24953
- feat(tracing): support RW_TRACING_EXTRA_ATTRIBUTES env var by @cyberchen98 in #24946
- chore(deps): Bump the opentelemetry group across 1 directory with 2 updates by @faketygg in #24956
- fix(test): reset adaptive parallelism strategy in log store simulation tests by @wenym1 in #24959
- refactor(common): DRY between
DataTypeToAstanddata_type_to_ast_data_typeby @xiangjinwu in #24975 - revert(stream): parallelize apply_chunk in agg by @lmatz in #24988
- fix: correct the use of clean_watermark_index in iter_with_prefix_respecting_watermark by @yuhao-su in #24828
- test: harden kafka-sasl alter connection e2e against broker-2 startup race by @hzxa21 in #24981
- refactor(meta): deprecate is_unschedulable for worker by @wenym1 in #25003
- chore: improve PR template by @Standing-Man in #24669
- feat(expr): implement crc32 and crc32c bytea functions by @faketygg in #24964
- feat(iceberg): bump iceberg-rust to 20260303 by @chenzl25 in #24949
- feat(optimizer): improve locality support for topn and overwindow by @chenzl25 in #24994
- chore(deps): bump forked avro from 0.16.0 to 0.21.0 by @xiangjinwu in #25009
- fix(meta): use fallback_service to replace nest_service for axum router by @cyliu0 in #25011
- test: stabilize non-shared source connector props flaky assertion by @tabVersion in #24997
- feat(iceberg): support rw_iceberg_compaction_schedules by @chenzl25 in #25013
- chore(deps): migrate hyper from 0.14 to 1 as much as possible by @BugenZhao in #24655
- refactor(hummock): add owned from_persisted_protobuf to reduce memory amplification by @Li0k in #24940
- feat: support watermark ttl for cdc table by @BugenZhao in #24992
- chore(deps): Bump time from 0.3.36 to 0.3.47 by @dependabot[bot] in #24722
- chore(deps): Bump http-body from 0.4.6 to 1.0.1 by @dependabot[bot] in #25031
- feat(meta): reject registeration of workers in different RW_VERSION by @wenym1 in #25019
- chore(deps): bump arrow used by adbc from 56 to 57 by @xiangjinwu in #25034
- feat(iceberg): dump rw iceberg compaction schedules to diagnosis by @chenzl25 in #25015
- chore(deps): Bump gcp-bigquery-client from 0.27.0 to 0.28.0 by @dependabot[bot] in #16547
- chore(deps): Bump const-str from 1.0.0 to 1.1.0 by @dependabot[bot] in #24683
- chore(deps): Bump aws-lc-fips-sys from 0.13.9 to 0.13.12 by @dependabot[bot] in #24945
- chore(deps): Bump ipnet from 2.11.0 to 2.12.0 by @dependabot[bot] in #24944
- refactor(meta): split source split assignment into discovery and resolution phases by @wenym1 in #24924
- fix(stream): skip empty chunks in synced kv log store to prevent seq_id progress assertion failure by @wenym1 in #25037
- fix(meta): commit transaction after aborting subscription creation by @Li0k in #25041
- feat: vnode key range info by @Li0k in #24176
- refactor(meta): improve the determinism of trigger_manual_compaction by @zwang28 in #25017
- chore(deps): Bump mongodb from 3.2.5 to 3.5.1 by @dependabot[bot] in #25028
- chore(deps): Bump pulsar from 6.3.0 to 6.3.1 by @dependabot[bot] in #25027
- refactor(meta): remove vnode-aligned level size threshold by @Li0k in #25047
- refactor(meta): extract shared actor alignment and edge-building logic for new fragments by @wenym1 in #25039
- feat(meta): add compression and part-read for hummock version checkpoint by @Li0k in #24937
- chore: refine storage related grafana metrics by @hzxa21 in #24739
- fix(stream): sync ops with visibility after noop elimination in HashDataDispatcher by @jw-itq in #24968
- feat(streaming): improve watermark handling for hash join by @yuhao-su in #24144
- fix(cdc): fix compatibility issues with SQL Server CDC table name by @wcy-fdu in #25057
- fix(iceberg): disable iceberg row selection by @chenzl25 in #25060
- feat(iceberg): support iceberg sink commit checkpoint size threshold mb by @chenzl25 in #25058
- feat(sql): add BACKUP and delete meta snapshot commands by @yezizp2012 in #25042
- chore(deps): Bump clap from 4.5.1 to 4.5.60 by @dependabot[bot] in #25072
- test: decouple inject skip coverage from mysql cdc reset test by @tabVersion in #25016
- chore(deps): Bump pulsar from 6.3.1 to 6.7.1 by @dependabot[bot] in #25064
- chore(deps): Bump lz4_flex from 0.11.1 to 0.11.6 by @dependabot[bot] in #25085
- chore(deps): Bump quinn-proto from 0.11.11 to 0.11.14 by @dependabot[bot] in #25053
- chore(deps): Bump lz4_flex from 0.12.0 to 0.12.1 by @xiangjinwu in #25087
- feat(observability): track channel buffered memory by @EdwinaZhu in #24810
- refactor(meta): render actor in global barrier worker for create/replace job by @wenym1 in #24984
- fix(binder): support schema-qualified names on
BindContextby @Standing-Man in #24628 - feat: support pool_setup_concurreny for gRPC client by @zwang28 in #25098
- fix(mysql-cdc): tolerate 2-column SHOW BINARY LOGS results by @qccash in #25101
- fix(meta): skip no-op reschedules before actor allocation by @shanicky in #25081
- fix(test): fix meta snapshot tests by @zwang28 in #25118
- refactor(frontend): include user name in query log by @zwang28 in #25102
- feat(frontend): add iceberg engine storage selection by @silver-ymz in #25043
- feat: support atomically adding column for iceberg table by @yezizp2012 in #24756
- refactor(meta): store table change log independently by @zwang28 in #24252
- refactor(common): cleanup redundant
ToSqlby @xiangjinwu in #25132 - chore(deps): Bump aws-lc-fips-sys from 0.13.12 to 0.13.13 by @dependabot[bot] in #25137
- feat(common): add Bounded/Ratio parallelism config types by @shanicky in #25125
- fix(source): drop stale wait checkpoint task by @zwang28 in #25152
- fix(sqlserver): fix sqlserver data type mismatch issue by @wcy-fdu in #25131
- feat(meta): support wait jobs by @chenzl25 in #25133
- feat(sqlserver-cdc): add consume offset monitor and lag monitor by @wcy-fdu in #25124
- chore(deps): Bump authlib from 1.6.5 to 1.6.9 in /e2e_test by @dependabot[bot] in #25082
- refactor(meta): unify epoch node management of partial graphs by @wenym1 in #25123
- fix(frontend): apply session timezone rewrite to watermark expressions by @chenzl25 in #25175
- chore: reject zero max prefetch block number by @hzxa21 in #25179
- fix(risedev): bump maven version to 3.9.14 by @EdwinaZhu in #25185
- fix(binder): resolve columns only within visible relation context by @Standing-Man in #25107
- chore(deps): Bump the strum group with 2 updates by @dependabot[bot] in #24839
- fix: preallocate compaction task id range per loop and assert bounds by @Li0k in #24654
- fix(iceberg): Reject dots in database.name for Iceberg sink by @Copilot in #24630
- refactor(frontend): unify session config parallelism and frontend resolution by @shanicky in #25126
- feat: meta generalize compaction-group normalize with batched split deltas by @Li0k in #24852
- chore(dashboard): remove vulnerable unused dependency from frontend package by @Copilot in #25194
- fix(binder): handle generated column validation for INSERT with/without column list by @Standing-Man in #25187
- fix(sink): fix redshift sink intermediate_schema name set by @xxhZs in #24947
- chore: default enable datafusion engine for batch query by @silver-ymz in #25198
- chore(deps): Bump hyper from 1.6.0 to 1.8.1 by @dependabot[bot] in #25030
- refactor(ci): deduplicate CI test scripts and fix shell safety bugs by @tabVersion in #25209
- feat(iceberg): add Iceberg source ingestion metrics by @chenzl25 in #25122
- fix(sqlparser): adapt to winnow 1.0 Stream API changes by @TennyZhuang in #25213
- fix(monitor): add compression and use larger decode limit for MonitorService by @yuhao-su in #25208
- feat(stream): make join_cache_evict_interval_rows configurable by @chenzl25 in #25210
- chore(deps): Bump hyper from 1.8.1 to 1.9.0 by @dependabot[bot] in #25216
- refactor(meta): unify barrier item collection for partial graphs and finishing jobs by @wenym1 in #25219
- feat(object-store): support limit the opendal req concurrency by @wenym1 in #25222
- fix(meta): load fragment parallelism from meta store table directly by @wenym1 in #25220
- feat(source): adaptive splits + streaming pull for PubSub source by @tabVersion in #25074
- fix: iceberg e2e test when default to use datafusion by @silver-ymz in #25215
- feat(sink): support limiting the max concurrent initializing kv log store reader by @wenym1 in #25224
- refactor(meta): unify barrier completion flow to partial-graph manager by @wenym1 in #25157
- fix(metric): fix several grafana panels by @zwang28 in #25232
- fix(batch): fix batch asof join by @chenzl25 in #25223
- fix(sink): fix file sink name conflict issue by @wcy-fdu in #25241
- fix(sink): handle postgres upsert when all columns are primary keys by @hzxa21 in #25253
- fix(source): eliminate checkpoint-path network I/O and add ack failure metrics by @tabVersion in #25144
- ci: run pubsub emulator via docker by @tabVersion in #25238
- feat(streaming): state clean for eowc over window numbering functions by @yuhao-su in #24477
- chore(deps): Bump arc-swap from 1.8.0 to 1.9.1 by @dependabot[bot] in #25259
- chore: change file sink log level to avoid noise by @wcy-fdu in #25262
- fix(dashboard): use topk(1) for kube resource limits in relative CPU/memory queries by @arkbriar in #25257
- refactor(meta): extract independent ckpt job enum by @wenym1 in #25249
- fix(cdc): fix CDC false-ready handshake by setting Debezium Connected only after real streaming connection by @wcy-fdu in #25245
- feat(meta): add database_info metric for database id to name mapping by @arkbriar in #25231
- feat(agents): add RisingWave rust-analyzer skill by @tabVersion in #25268
- refactor(meta): decouple serving fragment mapping notification from streaming fragment mapping by @wenym1 in #25263
- chore(deps): Bump datafusion from 52.2.0 to 52.4.0 by @dependabot[bot] in #25162
- fix(risedev): make generate-example-config work in worktrees by @Li0k in #25244
- fix(sink): truncate barriers in batching log sink during idle periods by @wcy-fdu in #25276
- fix: ignore stale refresh finish events after source drop by @tabVersion in #25272
- fix(binder): adjust the position of default columns by @Standing-Man in #25196
- ci: replace personal token with GitHub App token for doc issue creation by @lmatz in #25293
- feat(frontend): support secret references as function call arguments by @tabVersion in #25212
- feat(streaming): add materialize vnode key stats config by @hzxa21 in #25290
- chore(deps): Bump lodash from 4.17.23 to 4.18.1 in /dashboard by @dependabot[bot] in #25264
- fix(frontend): track secret deps for views and sinks by @tabVersion in #25291
- fix(iceberg): ban iceberg source with pk by @chenzl25 in #25295
- fix: iceberg source type mismatch by @silver-ymz in #25316
- Revise README for event streaming branding and resources by @yingjunwu in #25318
- build: set maven compiler versions from 11 to 17 by @xiangjinwu in #25294
- chore: retain barrier complete logs per database by @hzxa21 in #25225
- feat(expr): support wildcard parameter in
jsonb_aggby @Copilot in #25282 - chore(doc): Clarify primary storage terminology in README by @yingjunwu in #25324
- chore: Revise use cases and design decisions in README by @yingjunwu in #25326
- chore: Refactor use cases in README.md for clarity by @yingjunwu in #25329
- chore: clean unused code by @silver-ymz in #25335
- refactor: split src/connector/src/sink/iceberg/mod.rs to multiple files by @silver-ymz in #25337
- fix(cdc): allow SQL Server tables with multiple CDC capture instances by @wcy-fdu in #25317
- fix(common): [BREAK]
Hash for jsonbb::StringRefshall be same as&strby @xiangjinwu in #25345 - fix(cdc): use shared state to prevent concurrent schema history corruption by @wcy-fdu in #25269
- feat(meta): run compaction group normalize before merge only by @Li0k in #25334
- feat(frontend): expose schema names in system catalogs by @xxhZs in #25248
- refactor: switching to rw-fork madsim by @tabVersion in #25351
- refactor(source): remove unused code by @zwang28 in #25363
- fix(frontend): reject internal tables in subscription and MV DDL by @tabVersion in #25338
- refactor(ci): split connector e2e source and sink tests by @wenym1 in #25270
- feat(source): add source reader progress events by @tabVersion in #25258
- feat(stream): allow snapshot backfill executor without upstream merge by @wenym1 in #25250
- fix(storage): filter compact table ids in compactor by @Li0k in #25381
- fix(sink): fix bigquery sink auto_create by @xxhZs in #23837
- feat(iceberg): support order key by @xxhZs in #25202
- fix(meta): fix time travel vacuum by @zwang28 in #25402
- fix(connector): drain kafka enumerator events during meta split discovery by @tabVersion in #25405
- feat(sink): add HTTP sink by @wenym1 in #25396
- feat(optimizer): support mv selection for inner join by @chenzl25 in #25046
- chore(deps): Bump next from 16.2.1 to 16.2.3 in /dashboard by @dependabot[bot] in #25322
- chore(e2e): upgrade Spark to 4.0.2 and Iceberg to 1.10.1 for e2e tests by @yuhao-su in #25172
- chore(deps): Bump github.com/jackc/pgx/v5 from 5.5.4 to 5.9.0 in /integration_tests/client-library/go by @dependabot[bot] in #25393
- chore(iceberg): bump iceberg chain to fb290e4c/a9ce53cc by @Li0k in #25366
- chore(deps): Bump protobufjs from 7.2.6 to 7.5.5 in /dashboard by @dependabot[bot] in #25395
- feat(cdc): support ALTER SOURCE CONNECTOR for cdc password by @wcy-fdu in #25435
- fix(ci): avoid duplicate nexmark Kafka rows by @wenym1 in #25437
- fix(sink): ensure barrier progress must be truncated on log store by @wenym1 in #25440
- chore(ci): improve backward compat test by @yuhao-su in #25429
- fix(ci): exclude
pubsubfrom pre-start dev by @Standing-Man in #25408 - feat(frontend): support iceberg V3 sink with PK index on frontend by @silver-ymz in #25346
- feat(sink): support exactly-once Delta Lake sink by @wenym1 in #25159
- fix(dml): wait for persistence before completing fast insert in dml executor by @wenym1 in #25441
- feat(stream): add no-cache path for AsOf join by @yuhao-su in #25218
- chore(deps): Bump org.eclipse.jetty:jetty-http from 12.0.24 to 12.0.33 in /java by @dependabot[bot] in #25354
- fix(sqlsmith): fix fuzz test cleanup to handle server-side MV creation after client timeout by @lmatz in #25379
- chore: bump protobuf in integration test by @yuhao-su in #25433
- test: add slt test for tracking alter sink config feature by @Standing-Man in #25005
- fix(sink): update kv log store value indices after schema change by @wenym1 in #25442
- feat(cdc): support ingest upstream pg vector type by @wcy-fdu in #25184
- feat(pg-cdc): support convert upstream composite type into
textby @wcy-fdu in #25153 - chore(deps): bump arrow-udf-runtime to 0.9.0 and remove tonic 0.12 by @yuhao-su in #25461
- ci(pubsub): avoid custom image by @xiangjinwu in #25265
- fix(cdc): avoid aborting auto schema change on non-constant default expressions by @wcy-fdu in #25431
- feat(meta): track iceberg compaction with commit backlog by @Li0k in #25283
- refactor(cdc): remove unnecessary date converter by @xiangjinwu in #25289
- refactor(cdc): drop is_bigserial_default special case by @wcy-fdu in #25474
- chore(deps): bump openssl to 0.10.78 to fix high-severity advisories by @yuhao-su in #25468
- chore(deps): Bump org.bouncycastle:bcpkix-jdk18on from 1.79 to 1.84 in /java/connector-node/risingwave-sink-jdbc by @dependabot[bot] in #25392
- chore(deps): Bump org.bouncycastle:bcprov-jdk18on from 1.78 to 1.84 in /java/connector-node/risingwave-sink-jdbc by @dependabot[bot] in #25407
- fix(meta): avoid panic when dropping initial job by @wenym1 in #25481
- chore(deps): Bump uuid from 11.0.5 to 14.0.0 in /dashboard by @dependabot[bot] in #25462
- fix(iceberg): support using dot in iceberg namespace by @chenzl25 in #25475
- fix(meta): clean dropped streaming jobs outside post collect by @wenym1 in #25480
- feat(frontend): support TLS for webhook endpoint and multi-column webhook tables by @wenym1 in #25443
- fix: add SHOW PROCESSLIST hint to distributed query limit error message by @mailtoboggavarapu-coder in #25428
- feat(connector): support protobuf encoding for MQTT source by @Standing-Man in #25403
- feat(frontend): add WebSocket ingest with async acks by @wenym1 in #25444
- chore: bump java version from 17 to 21 by @yuhao-su in #25497
- chore(deps): Bump org.apache.hive:hive-metastore from 4.1.0 to 4.2.0 in /java by @dependabot[bot] in #23934
- chore(deps): upgrade deltalake and align arrow by @Li0k in #25479
- chore: add lazy PR label guidance for agents by @tabVersion in #25532
- refactor(source): disable maxwell, canal and citus-cdc by @xiangjinwu in #25534
- feat(session): allow unitless
statement_timeoutto meanmsby @xiangjinwu in #25557 - chore(deps): Bump parse-display from 0.10.0 to 0.11.0 by @dependabot[bot] in #25560
- chore(deps): Bump async-openai from 0.33.0 to 0.36.1 by @dependabot[bot] in #25513
- chore(deps): Bump bitflags from 2.10.0 to 2.11.1 by @dependabot[bot] in #25353
- fix(meta): sync source secret deps on alter connection by @tabVersion in #25582
- refactor(storage): normalize compact task table ids by @Li0k in #25438
- fix(meta): sync inflight stream node rate_limit on Throttle command by @yuhao-su in #25562
- refactor: replace #[allow] with #[expect] across the codebase by @wenym1 in #25519
- refactor(cdc): larger default snapshot.interval for cdc backfill by @wcy-fdu in #25577
- fix(pgwire): make JWK alg optional and pin verification to an allow-list by @xuhui-lu in #25453
- fix(binder): refine error message for ambiguous columns by @Standing-Man in #25546
- fix(meta): cleanup dirty recovery hummock tables by @Li0k in #25592
- feat(streaming): decouple synced log store progress from downstream backpressure by @EdwinaZhu in #24303
- fix(iceberg): revert 25058 by @chenzl25 in #25614
- fix(frontend): wait checkpoint for implicit dml flush by @wenym1 in #25518
- chore(deps): bump openssl to 0.10.79 by @yuhao-su in #25615
- chore(deps): Bump next from 16.2.3 to 16.2.6 in /dashboard by @dependabot[bot] in #25616
- fix(stream): restore committed watermark by natural value by @yuhao-su in #25547
- fix(optimizer): fix split now or rule by @chenzl25 in #25626
- fix(jvm): exit compute node on embedded JVM OutOfMemoryError by @wcy-fdu in #25625
- fix(optimizer): fix expand operator for distinct agg by @chenzl25 in #25623
- chore(deps): Bump async-openai from 0.36.1 to 0.38.1 by @dependabot[bot] in #25618
- chore(deps): Bump async-nats from 0.46.0 to 0.47.0 by @dependabot[bot] in #25227
- chore(deps): Bump hashbrown from 0.16.1 to 0.17.1 by @dependabot[bot] in #25621
- chore: update actions/checkout from v4 to v5 by @Copilot in #25579
- fix(meta): skip missing drop jobs in barrier worker by @wenym1 in #25634
- feat(risedev): add local messaging and deltalake flows by @xxhZs in #25432
- fix(sqlserver-cdc): tolerate ill-formed UTF-16 in nvarchar/ntext payloads by @wcy-fdu in #25596
- fix: unify and simplify streaming parallelism configuration by @shanicky in #25050
- fix(meta): clean up compaction group metrics by @Li0k in #25553
- feat(stream): change sink default parallelism to bounded 8 by @chenzl25 in #25660
- fix(meta): keep failed foreground DDL tables fetchable by @wenym1 in #25647
- fix(grafana): stop labeling streaming tables as mviews by @lmatz in #25670
- fix(iceberg): prevent stuck state on empty tasks in fetch executor by @ericnoam in #25538
- fix(frontend): harden SHOW object visibility by @tabVersion in #25585
- fix(optimizer): normalize arithmetic rank predicates for over-window … by @murphylee10 in #25608
- feat: disable bloom filter for kv log store tables by @hzxa21 in #25180
- feat(expr): support array overlap predicates by @wenym1 in #25597
- chore(docs): clarify adaptive parallelism migration note by @hzxa21 in #25661
- feat(connector): expose Pulsar source operation retry controls by @tabVersion in #25467
- feat(optimizer): support column pruning for expand by @chenzl25 in #25648
- feat(frontend): support ALTER WATERMARK for live tables by @yuhao-su in #25651
- feat(frontend): keep sync log store node at fragment root (#25663) by @risingwave-ci in #25694
- fix(meta): skip recovered pending sink epochs (#25690) by @risingwave-ci in #25696
- fix(frontend): disable unused prefix bloom hints (#25672) by @risingwave-ci in #25698
- feat(iceberg): default snapshot expiration (#25700) by @risingwave-ci in #25701
- fix(frontend): handle avg over empty window frame (#25675) by @risingwave-ci in #25688
- ci: fix main-cron sink and opendal failures (#25695) by @risingwave-ci in #25707
- refactor(storage): reuse block meta keys in xor filter reader (#25706) by @risingwave-ci in #25709
- feat(connector): allow altering Kafka SSL configs on the fly (#25717) by @risingwave-ci in #25722
- feat(frontend): log SQL for extended protocol (#25702) by @risingwave-ci in #25712
- fix(iceberg): revert snapshot expiration defaults (#25723) by @risingwave-ci in #25726
- ci: wait for elasticsearch health in sink test (#25720) by @risingwave-ci in #25734
- ci: add autoupdate rebase workflow (#25685) by @risingwave-ci in #25730
- fix(iceberg): seperate iceberg snapshot expiration and compaction trigger (#25749) by @risingwave-ci in #25753
- chore(release): bump version to v3.0.0-rc.1 by @cyliu0 in #25754
- fix(source): default NATS ack policy to explicit (#25705) by @risingwave-ci in #25777
- fix(connector): suppress expected kafka enumerator UnknownGroup (#25704) by @risingwave-ci in #25770
- fix(iceberg): fix iceberg glue iam assume role token expiration (#25776) by @risingwave-ci in #25796
- chore: bump iceberg deps for token refresh by @xxhZs in #25814
- fix(iceberg): avoid shared default AWS credentials provider in Iceberg sink (#25829) by @risingwave-ci in #25841
- fix(pg-cdc): make composite-to-string schema unconditionally optional (#25815) by @risingwave-ci in #25820
- fix(pgwire): parse StartupMessage with empty value at end correctly (#25803) by @risingwave-ci in #25839
- cherry-pick fix(iceberg): support reading uuid/fixed columns as bytea (#25807) to release-3.0 by @yuhao-su in #25852
- fix(sink): add trailing slash to snowflake pipe stage path (#25851) by @risingwave-ci in #25866
- feat(pg-cdc): support TOAST unchanged-value placeholder for vector columns (#25863) by @risingwave-ci in #25874
- feat(sink): support dynamic URL for HTTP sink (#25699) by @risingwave-ci in #25896
- fix(ci): skip stale SST compat test for fixed versions (#25769) by @risingwave-ci in #25771
- refactor(cdc): revert 9a6ab33 by @zwang28 in #25910
- cherry-pick fix(iceberg): protect compaction snapshots from GC in release-3.0 by @Copilot in #25902
- chore: update version to v3.0.0 by @cyliu0 in #25938
New Contributors
- @maingoh made their first contribution in #24644
- @faketygg made their first contribution in #24939
- @jw-itq made their first contribution in #24968
- @mailtoboggavarapu-coder made their first contribution in #25428
- @xuhui-lu made their first contribution in #25453
- @ericnoam made their first contribution in #25538
- @murphylee10 made their first contribution in #25608
Full Changelog: v2.8.0...v3.0.0