Releases: risingwavelabs/risingwave
v0.1.16
For installation and running instructions, see Get started.
Main changes
Administration
- Adds support for aborting a query in local mode with
Ctrl + C
. #7444
SQL features
- Adds support for the
to_timestamp
function. #7060 - Adds support for the
RETURNING
clause in DML statements. #7094 - Breaking change: Deprecates
CREATE MATERIALIZED SOURCE
. To create a materialized source, create a table and include the newly added connector settings. #7281, #7110 - Adds support for the
c
andi
flags inregex_match()
andregex_matches()
functions. #7135 - Adds support for
SHOW CREATE TABLE
. You can use this statement to show the definition of a table. #7152 - Adds support for the
pg_stat_activity
system catalog and several system functions. #7274 - Adds the
_rw_kafka_timestamp
parameter to show the timestamps of Kafka messages. Users can now specify the scope of Kafka messages by timestamps. #7275, #7150 - Adds support for displaying PostgreSQL and RisingWave versions in
version()
. #7314 - Adds support for displaying internal tables using the
SHOW INTERNAL TABLES
statement. #7348 - Adds support for
SET VISIBILITY_MODE
You can use this session variable to configure whether only checkpoint data is readable for batch query. #5850 - Adds support for
SET STREAMING_PARALLELISM
. You can use this session variable to configure parallelism for streaming queries. #7370
Connectors
- Adds support for generating array and struct data using the datagen connector. #7099
- Adds the S3 source connector, with which users can ingest data in CSV format from S3 locations. For data ingestion from files, CSV is the only supported format and the files must be placed on S3. #6846
Full Changelog: v0.1.15...v0.1.16
v0.1.15
For installation and running instructions, see Get started.
Main changes
Installation and deployment
- Parallelism and available memory of compute nodes are now command-line arguments and removed from the configuration file. #6767
- The default barrier interval is set to 1 second. #6553
- Adds support for meta store backup and recovery. #6737
SQL features
- Adds support for
SHOW CREATE MATERIALIZED VIEW
andSHOW CREATE VIEW
to show how materialized and non-materialized views are defined. #6921 - Adds support for
CREATE TABLE IF NOT EXISTS
. #6643 - A sink can be created from a SELECT query. #6648
- Adds support for struct casting and comparison. #6552
- Adds pg_catalog views and system functions. #6982
- Adds support for
CREATE TABLE AS
. #6798 - Ads the initial support for batch query on Kafka source. #6474
- Adds support for
SET QUERY_EPOCH
to query historical data based on meta backup. #6840
Connectors
- Improves the handling of schema errors for Avro and Protobuf data. #6821
- Adds two options to the datagen connector to make it possible to generate increasing timestamp values. #6591
Observability
- Adds metrics for the backup manager in Grafana. #6898
- RisingWave Dashboard can now fetch data from Prometheus and visualize it in charts. #6602
Full Changelog: v0.1.14...v0.1.15
v0.1.14
For installation and running instructions, see Get started.
Main changes
SQL features
PRIMARY KEY
constraint checks can be performed on materialized sources and tables but not on non-materialized sources. For tables or materialized sources that enabledPRIMARY KEY
constraints, if you insert data to an existing key, the new data will overwrite the old data. #6320 #6435- Adds support for timestamp with time zone data type. You can use this data type in time window functions, and convert between it and timestamp (without time zone). #5855 #5910 #5968
- Adds support for
UNION
andUNION ALL
operators. #6363 #6397 - Implements the
rank()
function to support a different mode of Top-N queries. #6383 - Adds support for logical views (
CREATE VIEW
). #6023 - Adds the
data_trunc()
function. #6365 - Adds the system catalog schema. #6227
- Displays error messages when users enter conflicting or redundant command options. #5933
Connectors
- Adds support for the Maxwell Change Data Capture (CDC) format. #6057
- Protobuf schema files can be loaded from Web locations in
s3://
,http://
, orhttps://
formats. #6114 #5964 - Adds support for Confluent Schema Registry for Kafka data in Avro and Protobuf formats. #6289
- Adds two options to the Kinesis connector. Users can specify the startup mode and optionally the sequence number to start with. #6317
Full Changelog: v0.1.13...v0.1.14
v0.1.13
For installation and running instructions, see Get started.
Main changes
SQL features
-
SQL commands:
- Improves the formatting of response messages of
EXPLAIN
statements. #5541
- Improves the formatting of response messages of
-
SQL functions:
-
to_char()
now supports specifying output format in lowercase. #5032to_char(timestamp '2006-01-02 15:04:05', 'yyyy-mm-dd hh24:mi:ss')
→2006-01-02 15:04:05
-
generate_series
now supports negative steps. #5231SELECT * FROM generate_series(5,1,-2); generate_series ----------------- 5 3 1 (3 rows)
-
Adds support for sum/min/max functions over interval-type data. #5105, #5549
-
Adds support for specifying empty arrays. #5402
-
Casting from array to varchar is now supported. #5081
array[1,2]::varchar
→{1,2}
-
Casting from varchar to integer allows leading and trailing spaces. #5452
' 1 '::int
→1
-
-
Adds new system catalog and psql meta-commands. #5127, #5742
\d
: Lists all relations in the current database. (Materialized) sources are not supported yet.\dt
: Lists all tables in the current database.\dm
: Lists all materialized views in the current database.\di
: Lists all indexes in the current database.pg_catalog.pg_index
: Contains information about indexes.
Connectors
- Nested columns are now supported for the datagen connector. #5550
What's Changed
What's Changed
- chore(docs): update the binary version with new tag by @huangjw806 in #4297
- feat(frontend): support user alter by @cnissnzg in #4261
- feat(meta): pause concurrent checkpoint by @BugenZhao in #4269
- build(toolchain): bump to 20220729 by @TennyZhuang in #4292
- fix: add retry in wait_epoch by @hzxa21 in #4287
- feat(frontend): Add pg_catalog.pg_class by @Graphcalibur in #4293
- feat(sqlsmith): ensure panicked queries are reproducible by @kwannoel in #4228
- fix(binder): Fix ambiguous column name error message by @Graphcalibur in #4282
- chore(planner test): upgrade serde_yaml to 0.9 & remove yq by @xxchan in #4307
- fix(frontend): fix display pk of stream table scan by @chenzl25 in #4279
- refactor(meta): provide SST id to worker id mapping in commit_epoch. by @zwang28 in #4285
- feat(batch): support delimiter argument in batch
string_agg
by @richardchien in #4298 - feat(object store): add list method by @zwang28 in #4257
- chore(streaming): remove table id in arrange node by @wcy-fdu in #4281
- fix: refine error prompting by @neverchanje in #4227
- feat(S3_bench): Add s3_bench by @xxhZs in #4299
- feat(metrics): add metrics for barrier latency at each stage by @xxhZs in #3965
- feat(sqlsmith): enable sub-query generation by @marvenlee2486 in #4216
- fix: Messages should be skipped after parsing failure by @shanicky in #4317
- feat(stream): support
delim
argument in streamingstring_agg
by @richardchien in #4321 - feat(sqlsmith): print e2e errors by @kwannoel in #4310
- fix(optimizer): ApplyValues. by @likg227 in #4323
- feat(frontend): expose
Vnode
function as__rw_vnode
for easy debugging by @richardchien in #4327 - fix(frontend): only schedule dml to cn which contain table source writer by @yezizp2012 in #4329
- feat(risedev): support 3 compute nodes in playground by @BugenZhao in #4332
- fix(compaction): Skip compaction task assignment check for trivial move tasks by @hzxa21 in #4333
- refactor(batch): refactor hash join by @wzzzzd in #4017
- fix(risedev): cannot
d
after adding shared in-memory hummock support by @BugenZhao in #4353 - refactor(frontend): rename
__rw_vnode
torw_vnode
by @richardchien in #4342 - feat:binary format serializer by @ZENOTME in #4284
- chore: add metric for sink executor by @tabVersion in #4337
- fix: use correct column indices for chain & batch lookup join by @BugenZhao in #4346
- refactor(storage): get new SST id in batch by @zwang28 in #4308
- feat(compaction): optimize iterator and sstable builder for compaction speed by @Little-Wallace in #4034
- feat(sqlsmith): test stream queries by @kwannoel in #4361
- feat(frontend): support acl column in pg_namespace by @cnissnzg in #4326
- feat(planner): Use explain verbose for all planner tests by @jon-chuang in #4359
- feat(batch): apply row-based encoding for materialize executor and batch mode by @wcy-fdu in #4335
- fix(batch): Stop polling after data stream returns
None
by @liurenjie1024 in #4371 - refactor(streaming): apply row-based encoding for append_only top_n by @wcy-fdu in #4373
- refactor(batch): unify scan type in batch scan by @wcy-fdu in #4375
- fix(storage): fix manual_compaction for l0 sub_compaction by @Li0k in #4334
- fix(common): use smaller upperbound for generators to avoid range overflow by @wzzzzd in #4377
- feat(meta): support manual compaction for specific sst ids from CN by @soundOfDestiny in #4338
- feat(storage): provide prefix_iter for prefix_bloom_filter by @Li0k in #4316
- feat(storage): introduce filter_key_extractor_manager by @Li0k in #4347
- refactor(frontend): simplify ConditionDisplay by @xxchan in #4382
- feat(compaction): collect remote io time for every compaction task by @xinchengxx in #4320
- refactor(batch): remove
append_chunk
in nested loop join and hash join by @wzzzzd in #4381 - feat(planner): Bind Natural Join by @jon-chuang in #4349
- feat(optimizer): support 2-phase streaming agg by @richardchien in #4341
- fix(parser): parse negative numbers by @kwannoel in #4356
- fix: add pair number check in startup msg by @yezizp2012 in #4393
- feat: generator row id using vnode in source executor by @yezizp2012 in #4362
- chore(developer-docs): add note on compilation bottlenecks by @kwannoel in #4395
- refactor(lru): use on_release event listener to capture owned key/value when entries evicted or erased by @MrCroxx in #4396
- feat(optimizer): Implement
ProjectJoin
rule by @jon-chuang in #4385 - refactor(meta): eliminate usages of
RwError
by @HuaHuaY in #4364 - feat: support current_schema and session_user by @neverchanje in https://github.com/risingwavela...
v0.1.12
For installation and running instructions, see Get started.
Main changes
SQL features
- SQL commands:
EXPLAIN
now supports specifying options. Supported options:trace
,verbose
, andtype
. Unlike PostgreSQL, each option should be separated by a comma and wrapped by parentheses as a whole. #4730- Adds support for
ALTER USER
. #4261 CREATE/ALTER USER
now has new optionsCREATEUSER
andNOCREATEUSER
, which specifiy whether or not the user has the privilege to create, alter, or drop other users. #4447- Adds support for
EXPLAIN CREATE SINK
. #4430
- SQL functions:
- Adds support for new system information functions:
current_schema
,current_schema()
, andsession_user
. #4358
- Adds support for new system information functions:
- The
pg_namespace
catalog now has a new namespace columnnspacl
for storing access privileges. #4326
Connectors
-
Some connector parameters were renamed. The old parameter names are still functional but may be deprecated in the future. #4503
-
Kafka & Redpanda
kafka.brokers
->properties.bootstrap.server
kafka.topic
->topic
kafka.scan.startup.mode
->scan.starup.mode
kafka.time.offset
->scan.startup.timestamp_millis
kafka.consumer.group
->consumer.group.id
-
Kinesis
kinesis.stream.name
->stream
kinesis.stream.region
->aws.region
kinesis.endpoint
->endpoint
kinesis.credentials.access
->aws.credentials.access_key_id
kinesis.credentials.secret
->aws.credentials.secret_access_key
kinesis.credentials.session_token
->aws.credentials.session_token
kinesis.assumerole.arn
->aws.credentials.role.arn
kinesis.assumerole.external_id
->aws.credentials.role.external_id
-
Pulsar
pulsar.topic
->topic
pulsar.admin.url
->admin.url
pulsar.service.url
->service.url
pulsar.scan.startup.mode
->scan.startup.mode
pulsar.time.offset
->scan.startup.timestamp_millis
-
-
The row format name,
debezium json
, for CDC stream sources, has been renamed todebezium_json
. #4494
Configuration changes
- The default batch query execution mode was changed from distributed to local. #4789
New Contributors
- @xinchengxx made their first contribution in #4320
- @wanglei4687 made their first contribution in #4477
- @guzzit made their first contribution in #3781
- @KveinAxel made their first contribution in #4675
Full Changelog: v0.1.11...v0.1.12
What's Changed
What's Changed
- chore(docs): update the binary version with new tag by @huangjw806 in #4297
- feat(frontend): support user alter by @cnissnzg in #4261
- feat(meta): pause concurrent checkpoint by @BugenZhao in #4269
- build(toolchain): bump to 20220729 by @TennyZhuang in #4292
- fix: add retry in wait_epoch by @hzxa21 in #4287
- feat(frontend): Add pg_catalog.pg_class by @Graphcalibur in #4293
- feat(sqlsmith): ensure panicked queries are reproducible by @kwannoel in #4228
- fix(binder): Fix ambiguous column name error message by @Graphcalibur in #4282
- chore(planner test): upgrade serde_yaml to 0.9 & remove yq by @xxchan in #4307
- fix(frontend): fix display pk of stream table scan by @chenzl25 in #4279
- refactor(meta): provide SST id to worker id mapping in commit_epoch. by @zwang28 in #4285
- feat(batch): support delimiter argument in batch
string_agg
by @richardchien in #4298 - feat(object store): add list method by @zwang28 in #4257
- chore(streaming): remove table id in arrange node by @wcy-fdu in #4281
- fix: refine error prompting by @neverchanje in #4227
- feat(S3_bench): Add s3_bench by @xxhZs in #4299
- feat(metrics): add metrics for barrier latency at each stage by @xxhZs in #3965
- feat(sqlsmith): enable sub-query generation by @marvenlee2486 in #4216
- fix: Messages should be skipped after parsing failure by @shanicky in #4317
- feat(stream): support
delim
argument in streamingstring_agg
by @richardchien in #4321 - feat(sqlsmith): print e2e errors by @kwannoel in #4310
- fix(optimizer): ApplyValues. by @likg227 in #4323
- feat(frontend): expose
Vnode
function as__rw_vnode
for easy debugging by @richardchien in #4327 - fix(frontend): only schedule dml to cn which contain table source writer by @yezizp2012 in #4329
- feat(risedev): support 3 compute nodes in playground by @BugenZhao in #4332
- fix(compaction): Skip compaction task assignment check for trivial move tasks by @hzxa21 in #4333
- refactor(batch): refactor hash join by @wzzzzd in #4017
- fix(risedev): cannot
d
after adding shared in-memory hummock support by @BugenZhao in #4353 - refactor(frontend): rename
__rw_vnode
torw_vnode
by @richardchien in #4342 - feat:binary format serializer by @ZENOTME in #4284
- chore: add metric for sink executor by @tabVersion in #4337
- fix: use correct column indices for chain & batch lookup join by @BugenZhao in #4346
- refactor(storage): get new SST id in batch by @zwang28 in #4308
- feat(compaction): optimize iterator and sstable builder for compaction speed by @Little-Wallace in #4034
- feat(sqlsmith): test stream queries by @kwannoel in #4361
- feat(frontend): support acl column in pg_namespace by @cnissnzg in #4326
- feat(planner): Use explain verbose for all planner tests by @jon-chuang in #4359
- feat(batch): apply row-based encoding for materialize executor and batch mode by @wcy-fdu in #4335
- fix(batch): Stop polling after data stream returns
None
by @liurenjie1024 in #4371 - refactor(streaming): apply row-based encoding for append_only top_n by @wcy-fdu in #4373
- refactor(batch): unify scan type in batch scan by @wcy-fdu in #4375
- fix(storage): fix manual_compaction for l0 sub_compaction by @Li0k in #4334
- fix(common): use smaller upperbound for generators to avoid range overflow by @wzzzzd in #4377
- feat(meta): support manual compaction for specific sst ids from CN by @soundOfDestiny in #4338
- feat(storage): provide prefix_iter for prefix_bloom_filter by @Li0k in #4316
- feat(storage): introduce filter_key_extractor_manager by @Li0k in #4347
- refactor(frontend): simplify ConditionDisplay by @xxchan in #4382
- feat(compaction): collect remote io time for every compaction task by @xinchengxx in #4320
- refactor(batch): remove
append_chunk
in nested loop join and hash join by @wzzzzd in #4381 - feat(planner): Bind Natural Join by @jon-chuang in #4349
- feat(optimizer): support 2-phase streaming agg by @richardchien in https://github.com/risingwavelabs/risingwave/pu...
v0.1.11
What's Changed
- test(nexmark): rewrite flinksql function to the corresponding pg one by @TennyZhuang in #3654
- refactor: remove OrderedColumnDesc from proto by @xxchan in #3642
- feat(meta): do not use watermark as expire time of TTL by @Little-Wallace in #3633
- fix(lookup): fix the semantics of arrange_order_rules by @BowenXiao1999 in #3655
- chore(docs): update the binary version to v0.1.10 by @huangjw806 in #3661
- test(batch): add micro benchmark for NestedLoopJoinExecutor by @wzzzzd in #3652
- feat(meta): no pause checkpoint with building actor by @xxhZs in #3511
- feat: expand operator by @likg227 in #3563
- fix(meta): fix internal_table persisted by @Li0k in #3659
- feat(frontend): support show config by @yezizp2012 in #3664
- feat(frontend):
StreamDynamicFilter
by @jon-chuang in #3515 - feat(storage): support vnode hint in storage table by @BugenZhao in #3628
- refactor:introduce per crate error for batch executors by @ZENOTME in #3658
- fix(docs): fix regress test input file path by @lmatz in #3667
- test(nexmark): support explain nexmark q15 and q20 by @TennyZhuang in #3660
- fix(metrics): use iter_in_process_count to replace iter_count_duration by @Li0k in #3678
- fix(expr, executor): Remove
RowExpression
: useeval_row
andunwrap_or(false)
onDatum
, not panic on Null/None by @jon-chuang in #3587 - feat(meta): do not persist data on etcd for pin_snapshot by @Little-Wallace in #3557
- refactor(streaming): better source executor & split change by @BugenZhao in #3669
- fix: avoid unnecessary cells in max/min (not-append only) by @BowenXiao1999 in #3630
- perf(hummock manager): apply version delta from version checkpoint by @soundOfDestiny in #3567
- chore(ci): use random seed for sqlsmith cron test by @huangjw806 in #3688
- feat: add overlay string function by @ALeitert in #3671
- feat(batch): enable parallel table scan by @xxchan in #3670
- refactor(storage): remove async_trait for MergeIteratorNext by @KivenChen in #3673
- chore(doc): rename cell-based table to storage table by @wcy-fdu in #3691
- feat(metrics): add metrics for compact task splits count by @Li0k in #3693
- feat(frontend): support show all (#3665) by @chenzl25 in #3694
- chore: fix rustdoc for prost by @xxchan in #3699
- refactor: consolidate duplicated logic in PlanRoot by @xiangjinwu in #3554
- feat(expr): support regexp_match by @TennyZhuang in #3702
- chore(deps): bump openssl-src from 111.20.0+1.1.1o to 111.22.0+1.1.1q by @dependabot in #3701
- doc: add some comments for keys & rename keys -> key by @xxchan in #3700
- feat(streaming): allow pause source by @skyzh in #3697
- feat(meta): allow set parallel degree in config by @skyzh in #3703
- feat(batch): Implement LookupJoinExecutor by @Graphcalibur in #3614
- fix(array): ListRef Display by @nanderstabel in #3705
- feat(meta): add monitoring meta process metrics by @wenym1 in #3706
- fix: reduce logging in the critical path by @neverchanje in #3704
- refactor(optimizer): cleanup LogicalAgg::prune_col by @xiangjinwu in #3663
- fix: correctly implement check_state_consistency by @zwang28 in #3711
- feat(storage): default block size = 1024 by @skyzh in #3463
- feat(batch): prune scan partition according to scan_range by @xxchan in #3698
- test(nexmark): explain q16 q17 by @TennyZhuang in #3715
- doc: add relational table schema doc + move files by @BowenXiao1999 in #3712
- fix: fix heartbeat req field and meta client impl by @yezizp2012 in #3716
- fix(metrics): use current actor id for backpressure by @skyzh in #3721
- test(streaming): enable streaming e2e test for tpch q4, q18, q20 by @yuhao-su in #3718
- chore(deps): bump dependencies by @skyzh in #3725
- feat(executor): Basic in-application-memory
DynamicFilterExecutor
, pass tpch q11, q22 e2e tests by @jon-chuang in #3681 - refactor(sqlparser): rename
parse_string_agg
toparse_string_concat
by @richardchien in #3733 - fix(risedev): Revert Makefile.toml changes by @Graphcalibur in #3732
- fix: support decimal mul interval by @neverchanje in #3734
- refactor(storage): remove cell_based serialize/deserialize from serde by @wcy-fdu in #3722
- fix(sqlsmith): completely cover all exprs by @neverchanje in #3737
- fix(ci): use header fix action for license check by @skyzh in #3739
- chore(risedev): update grafana version by @wcy-fdu in #3731
- test(nexmark): add nexmark q10 q14 e2e test by @TennyZhuang in #3740
- refactor(streaming): use table catalog in hash join by @yuhao-su in #3707
- fix(batch): fix batch scan distribution & handle more than one table scans in one stage by @xxchan in #3736
- feat(optimizer): support two phase topn and limit in batch mode by @chenzl25 in #3719
- feat: deprecate catalog ref id by @yezizp2012 in #3745
- refactor(streaming): use table catalog for materialize executor by @wcy-fdu in #3742
- refactor(meta): improve create mview / scheduler readability by @BugenZhao in #3748
- feat(metrics): Add Fragment Level Exchange Metrics by @marvenlee2486 in #3696
- fix(risedev): unexpected rebuilds on Linux by @skyzh in #3761
- perf(hummmock manager): remove unnecessary hummock version deltas by @soundOfDestiny in #3689
- fix: sync compaction group correctly by @zwang28 in #3743
- feat(common): move observer_manager to common service by @xxhZs in #3754
- refactor: remove vnode_mappings in CompactTask and GroupedSstableBuilder by @hzxa21 in #3764
- refactor(batch): say goodbye to the state machine in NLJ by @wzzzzd in #3724
- feat(common): add is_set to BitmapBuilder by @wzzzzd in #3768
- fix(batch): add first-match optimization for left semi join by @wzzzzd in #3773
- feat(streaming): use multiple dispatcher for mview creation by @BugenZhao in #3758
- refactor(stream): refactor state of topN executor to one state table by @StrikeW in #3747
- chore(storage): remove value meta by @Li0k in #3779
- feat(executor): Use
TableCatalog
andStateTable
inDynamicFilter
(only writes) by @jon-chuang in #3757 - fix(batch): fix order_by with struct table by @StrikeW in htt...
v0.1.10
For a quick summary on this release, see Release Notes for more information.
What's Changed
- feat: support streaming count/max/min on more types by @neverchanje in #3069
- refactor: using barrier to initialize the source actor by @shanicky in #3067
- fix(e2e): cleanup after extreme null test by @kwannoel in #3079
- test(common): move test_runner to risingwave_test_runner by @xxhZs in #3063
- fix(metrics): add executor throughput and remove actor throughput by @MingjiHan99 in #3045
- feat(batch): index scan & point get by @xxchan in #3014
- fix: cannot create a materialized view with struct column by @cykbls01 in #3078
- fix(ci): fix executor metrics in release mode by @MingjiHan99 in #3087
- feat(storage): use exist_table_id to filter exist key when compaction by @Li0k in #3038
- chore(storage): remove redundant Result on
serialize_pk
by @xxchan in #3088 - feat(risedev): support prometheus + redpanda by @skyzh in #3083
- binder: support string interval by @likzn in #3037
- refactor(expr): introduce ExprError by @TennyZhuang in #3081
- test(bench): add compression benchmark by @MrCroxx in #3090
- feat: alias data type
STRING
toVARCHAR
by @fuyufjh in #3094 - feat: support user authentication in frontend by @yezizp2012 in #3074
- perf(executor): implement dedup pk decoding for BatchQueryExecutor by @kwannoel in #3060
- feat(ci): cache artifacts in build image by @skyzh in #3093
- refactor: remove macros from flush status by @neverchanje in #3098
- feat(meta): add compaction group service/client by @zwang28 in #3061
- feat(storage): add combined SST builder by @zwang28 in #3075
- feat(meta): register/unregister table fragments to compaction group by @zwang28 in #3044
- refactor(relational_iter): dedup
into_stream_inner
andinto_stream
in StateTableRowIter by @wcy-fdu in #3057 - feat(streaming): extend CREATE TABLE syntax to support creating append-only table source by @StrikeW in #3058
- refactor(connector): simplify pulsar reader by @shanicky in #3103
- chore(ci): ci upload failure logs by @huangjw806 in #3099
- feat(storage): implement read pruning by vnode by @xx01cyx in #2882
- feat: support unnest function by @cykbls01 in #3017
- feat(binder): add concat by @kwannoel in #3091
- refactor(common): extend
CheckedAdd
withRhs
andOutput
by @xiangjinwu in #3108 - fix: fix the table descs of value state by @BowenXiao1999 in #3106
- fix(expr): several expressions handle visibility incorrectly by @TennyZhuang in #3096
- fix: no need to expect mem table return Err by @BowenXiao1999 in #3071
- feat(storage): optimize get existing table ids when compact by @Li0k in #3114
- fix(optimizer): fix lost projection pk by @skyzh in #3119
- fix(compaction): fix compaction task do not schedule even if the number of L0 files is very large by @Little-Wallace in #3117
- chore(build): bump toolchain to 2022-06-09 by @skyzh in #3100
- fix(risedev): specify username in playground hints by @BugenZhao in #3123
- fix(pg-wire): fix the simple extended query mode by @ZENOTME in #3104
- feat(connector): add random seed for datagen by @tabVersion in #3124
- chore(risedev): tune etcd configuration. by @zwang28 in #3110
- fix: iter only need the pk prefix reference instead of ownership by @BowenXiao1999 in #3126
- feat: add default super user postgres by @yezizp2012 in #3127
- fix(meta): use CompactionConfigBuilder by @zwang28 in #3128
- fix: create mv support array expression by @cykbls01 in #3113
- refactor(array): introduce ArrayError & unify
ensure!
byanyhow!
by @BugenZhao in #3130 - chore(ci): limit job number of coverage by @skyzh in #3122
- feat: support struct expression by @cykbls01 in #2914
- refactor(streaming): remove
AggStateError
variant and more by @BugenZhao in #3140 - style: introduce lint reasons by @TennyZhuang in #3144
- refactor(stream): remove TopNStateError by @lmatz in #3142
- feat(expr): support
repeat
function by @name1e5s in #3148 - chore: remove all tracing logs relates to pin/unpin by @BowenXiao1999 in #3151
- chore(storage): deprecate in-memory state store in e2e scenarios by @BugenZhao in #3153
- feat(hummock): remove combine group for compaction by @Little-Wallace in #3138
- feat(expr): Implement approx_count_distinct for stream processing by @Graphcalibur in #3121
- fix(streaming): compile error in count distinct by @skyzh in #3163
- test: add some real-world use cases to e2e testing by @neverchanje in #3158
- fix(streaming): Fix error propagation in approx_count_distinct by @Graphcalibur in #3167
- chore: cargo update for frontend/test_runner by @fuyufjh in #3168
- fix: deprecate parse_duration dependency by @nasnoisaac in #3157
- feat(frontend): change the default schema name to public by @TennyZhuang in #3166
- fix(optimizer): fix logical scan pk derive by @st1page in #3171
- refactor(metrics): move some metrics from meta to compactor by @Little-Wallace in #3164
- fix(binder): bind CTE only when schema_name is empty by @TennyZhuang in #3173
- fix(batch scheduler): intermediate stage may have single distribution by @xiangjinwu in #3172
- fix(storage): re-enable compaction filter by @zwang28 in #3141
- feat: retry connect to meta until meta online by @yezizp2012 in #3165
- fix(doc): Add link for batch local execution mode by @liurenjie1024 in #3176
- feat(batch): split plan into fragments for local execution mode by @lmatz in #3032
- feat: support select Row() by @cykbls01 in #3152
- chore(ci): ci add swap file for ec2 instance by @huangjw806 in #3177
- feat(frontend): introduce scheduler error by @lmatz in #3156
- feat(connector): SinkExecutor init + MySQLSink mvp by @nanderstabel in #2969
- fix(ci): remove compile job limit by @skyzh in #3179
- chore: clean up code for legacy frontend by @xxchan in #3181
- chore(ci): fix labeler by @xxchan in #3182
- feat: add state for source manager by @shanicky in #3170
- fix(batch scheduler): has_ta...
v0.1.9
This is a special out-of-schedule release for the new build pipeline.
What's Changed
- feat(stream): support replace source reader at runtime by @tabVersion in #2923
- feat(expr): Implementation for bitwise operation by @marvenlee2486 in #2884
- fix(types): reduce [Struct/List]Value memory usage and fix Decimal data_size by @TennyZhuang in #2970
- feat(expr): Implementation for bitwise operation (Continue PR #2884) by @marvenlee2486 in #2975
- chore(ci): speedup unit test by @skyzh in #2974
- feat(build): drop support for TiKV and RocksDB, and speedup compile by @skyzh in #2982
- fix(risedev): apply-frontend-test on macOS by @skyzh in #2983
- feat(build): link openssl statically by @skyzh in #2984
- feat(grafana): use Python script to generate dashboard by @skyzh in #2979
- chore(risedev): store kafka and frontend config when compose deploy by @skyzh in #2988
- refactor(storage): avoid KeyRange type conversion by @zwang28 in #2920
- feat(expr): Implement approx_count_distinct for batch queries by @Graphcalibur in #2977
- feat(vnode bitmap): implement vnode-aware overlap in compaction by @soundOfDestiny in #2864
- chore(test): prevent test compile OOM by @skyzh in #2989
- feat: add hummock rpc
unpin_snapshot_before
by @BowenXiao1999 in #2964 - feat(streaming): use table_id as AppendOnlytopN prefix for keyspace by @Li0k in #2992
- feat(optimizer): pushdown predicate to LogicalScan by @xxchan in #2987
- feat: enable exchange operator on frontend to send local execution mode request by @lmatz in #2978
- chore(grafana): add estimated s3 cost by @skyzh in #3000
- fix: remove unsafe impl Sync trait for LruCacheShard by @MrCroxx in #2996
- chore: Ignore commits in the blame view by @xxchan in #2995
- feat(streaming): record internal_table_ids to TableFragments by @Li0k in #3002
- chore(ci): migrate docker build pipeline by @huangjw806 in #2990
- feat: support linking to different database by @cykbls01 in #2751
- fix(test): unit test of chain executor by @lokax in #2817
- chore(risedev): allow minio to be used on root disk by @skyzh in #3012
- feat(meta): record total size of files in version by @Little-Wallace in #2965
- feat(streaming): source executor use table_id for keyspace prefix by @Li0k in #3010
- fix(streaming): fix some test with keyspace::table_root by @Li0k in #3018
- chore(build): bump deps by @skyzh in #3019
- refactor(kinesis): Correct
assume_role_external_id
spelling in Kine… by @ryanrussell in #3016 - feat(risedev): support ipv6 in config by @skyzh in #3011
- fix(connector): use bound channel for source by @skyzh in #3023
- feat: support grant/revoke privilege in frontend by @yezizp2012 in #3004
- feat(storage): support write anytime and spill to disk by @wenym1 in #2919
- feat(stream): introduce allocator_api in JoinHashMap by @TennyZhuang in #3020
- refactor(DataChunk): use
new
rather thanDataChunkBuilder
ortry_from
by @xiangjinwu in #3026 - chore(streaming): add assert check for internal_table_id_set to avoid… by @Li0k in #3025
- fix: should always unpin epoch for dml query by @BowenXiao1999 in #3034
- fix(config): parameters are case insensitive in set command by @lmatz in #3033
- feat(compaction): notify meta when hash mapping changes by @soundOfDestiny in #3035
- feat(meta): initiate static compaction groups by @zwang28 in #2952
- perf(executor): decode row datums from pk by @kwannoel in #2957
- feat(storage): introduce non-proto type for vnode bitmap by @xx01cyx in #3030
- feat(relational_iter): add state_table_iter with pk_prefix and pk_bounds by @wcy-fdu in #3008
- feat(pgwire): introduce simple extended query mode by @ZENOTME in #2961
- feat(expr): implementation for char_length operation by @nasnoisaac in #2991
- feat(storage): support parallel upload by @skyzh in #3031
- feat: use unpin_snapshot_before in FE by @BowenXiao1999 in #2993
- chore: remove scan_with_start_key by @wcy-fdu in #3048
- chore(docs): bump to 0.1.8 and update CI badge by @skyzh in #3056
- feat(ci): parallelize e2e test by @skyzh in #3046
- feat(storage): support concurrent upload in capacity split sst builder by @wenym1 in #3052
- refactor(session): error when setting unrecognized configuration parameter by @lmatz in #3042
- release: v0.1.9 by @huangjw806 in #3062
- fix: the signature unmatch in async trait function by @BowenXiao1999 in #3068
- fix(connector): remove redundant warning by @tabVersion in #3072
- chore(ci): migrate release pipeline by @huangjw806 in #3070
- chore(docs): change risingwave logo in readme by @mikechesterwang in #3076
New Contributors
- @marvenlee2486 made their first contribution in #2884
- @lokax made their first contribution in #2817
- @ZENOTME made their first contribution in #2961
- @nasnoisaac made their first contribution in #2991
Full Changelog: v0.1.8...v0.1.9
v0.1.8
What's Changed
Click to Expand
- release: v0.1.7 by @TennyZhuang in #2521
- refactor: remove legacy java frontend by @fuyufjh in #2523
- refactor(binder): organize bind_expr arms into groups by @xiangjinwu in #2500
- fix(batch): support incomplete timestamp literal by @likzn in #2478
- refactor(common): use next_visible_row_idx for data chunk iter by @lmatz in #2528
- test: migrate legacy e2e tests by @TennyZhuang in #2536
- fix(ci): fix doc check by @BowenXiao1999 in #2505
- feat: Add query_mode session config by @liurenjie1024 in #2540
- refactor: Remove unused file by @liurenjie1024 in #2543
- docs: update for 0.1.7 release by @skyzh in #2542
- feat(storage): conflict detector in no order by @xxhZs in #2365
- docs: clearify HummockClient's location by @skyzh in #2544
- refactor(stream): remove STREAM_NULL_BY_ROW_COUNT by @TennyZhuang in #2549
- refactor: remove epoch service in meta by @yezizp2012 in #2554
- fix(streaming): avoid sync states when forcing stop actors in recovery by @yezizp2012 in #2497
- refactor(batch): Remove unnecessary executor by @liurenjie1024 in #2548
- refactor: remove catalog v1 service by @BugenZhao in #2556
- refactor(batch): Remove join v1 by @liurenjie1024 in #2559
- refactor(batch): remove frontend v2 in insert executor and fix some ut by @yezizp2012 in #2550
- feat(compaction): make compaction output be partitioned by parallel unit by @soundOfDestiny in #2406
- refactor(batch): Remove fuse and trace v1 by @liurenjie1024 in #2562
- refactor(meta): remove some legacy frontend support in meta, including StreamServiceImpl by @yezizp2012 in #2563
- fix(batch): fix a bug of exchange and project. by @likg227 in #2545
- chore(batch): remove unnecessary compact by @skyzh in #2565
- fix(optimizer): predicate pushdown when there's no filter above join by @xxchan in #2516
- chore: remove
v2
naming related to legacy frontend by @BugenZhao in #2572 - refactor: move fragmenter from meta to frontend by @xxchan in #2263
- feat(storage): suppport disk object store by @wenym1 in #2389
- feat(expr): Implement evaluation for CONCAT_WS expression by @kwannoel in #2470
- refactor(optimizer):
LogicalProject::with_mapping
should returnSelf
by @Enter-tainer in #2566 - fix(frontend): check arguments for agg call by @BugenZhao in #2567
- refactor(batch): Remove executor v1 by @liurenjie1024 in #2575
- refactor(proto): remove TypeName::Symbol and Char by @fuyufjh in #2574
- refactor(meta): remove legacy frontend support in fragmenter by @yezizp2012 in #2560
- refactor: remove function
pg_sleep
by @fuyufjh in #2576 - fix(source): remove epoch in state user key and no flush on idle by @hzxa21 in #2547
- feat(expr): support cast from number to varchar by @xiaoyong-z in #2522
- feat: create table contains nested column by @cykbls01 in #2434
- fix: error returned when creating a source from a non-existent topic by @shanicky in #2496
- refactor(batch): Remove some dead code in scheduler. by @liurenjie1024 in #2586
- refactor: remove test_utils in batch execution by @neverchanje in #2587
- refactor(prost): use src as default build path for prost by @Little-Wallace in #2581
- refactor(stream-scan): remove stream scan after java removed by @BowenXiao1999 in #2590
- feat(frontend): add
LogicalMultijoin
by @jon-chuang in #2526 - chore: add Column for connectors by @shanicky in #2593
- feat(array): use compact encoding for bitmap and bool array by @BugenZhao in #2585
- feat(expr): IN-list support non-literals by @xiangjinwu in #2588
- chore: add RFC template to issue templates by @fuyufjh in #2594
- chore: update design-rfc by @fuyufjh in #2596
- refactor(batch): use wrapper executor to impl time and i32 generate series by @D2Lark in #2524
- chore: ignore generated prost/sim files by @xiangjinwu in #2597
- chore(meta): remove old catalog definition in proto by @yezizp2012 in #2599
- fix(connector): make too big struct a Box by @tabVersion in #2606
- test(frontend): update TPC-H Q16 planner test by @xiangjinwu in #2605
- feat(storage): Add metrics for compaction and object store by @Little-Wallace in #2573
- fix(connector): make kinesis work again by @tabVersion in #2432
- feat(frontend): Bind concat_ws expression by @kwannoel in #2589
- fix(binder): handle ambiguous names in order by by @xiangjinwu in #2604
- test(optimizer): ensure column prune correctly handle reorder by @Enter-tainer in #2603
- feat(expr): Implement IS [NOT] DISTINCT FROM expression by @Graphcalibur in #2582
- chore(streaming): enable actor metrics in release mode by @skyzh in #2612
- chore: switch avro to fork by @skyzh in #2617
- fix(streaming): revert "feat(streaming): split chunks in source executor" by @tabVersion in #2608
- refactor(batch): use generatic type replace generate_series_wrapper_executor by @D2Lark in #2624
- chore(ci): remove unused e2e test by @BowenXiao1999 in #2616
- feat(binder): bind
UPDATE
by @BugenZhao in #2602 - feat(frontend): support alias for window table function by @TennyZhuang in #2633
- feat(expr): add support for abs function by @xiaoyong-z in #2531
- feat: add parallel source connector by @shanicky in #2601
- chore(connector): add some log and fix typo by @shanicky in #2639
- feat(ctl) add args ( epoch , table ) in list-kv by @xxhZs in #2640
- chore: add some logging on pgwire and frontend by @neverchanje in #2642
- fix(docs): use host network mode to start playground by @skyzh in #2652
- refactor(common): impl CheckedAdd for NavieDateTimeWrapper by @D2Lark in #2635
- feat(storage): support sstable store with local object store by @wenym1 in #2558
- refactor(frontend): eliminate
PlanNode
rest panic by @likzn in #2417 - refactor(frontend): ignore stmts START TRANSACTION and ABORT by @likzn in #2607
- chore(e2e): move v2 tests to be the first citizen by @BowenXiao1999 in #2658
- feat(frontend): plan
UPDATE
by @BugenZhao in https://github.com/singularity-data/ris...
v0.1.7
What's Changed
Click to Expand
- feat(frontend/expr): boolean constant folding for (Is, IsNot) x (True, False, Null) by @Enter-tainer in #2265
- feat(frontend): bind & plan having by @xiangjinwu in #2273
- docs: re-release v0.1.6 by @skyzh in #2274
- fix(planner): report unsupported post-agg correlated subquery by @xiangjinwu in #2276
- e2e(tpch): open some tpch with changing query workaround by @st1page in #2262
- refactor(relational-table): support serialize pk only by @BowenXiao1999 in #2277
- feat(planner): support SELECT DISTINCT by @xiangjinwu in #2278
- chore(frontend): add run-planner-test for risedev by @skyzh in #2282
- feat(frontend): support distinct within agg call by @xiangjinwu in #2281
- feat(storage): use binary search to locate SST iterators by @pleiadesian in #2256
- feat(risedev): differentiate listen addr and advertise addr by @skyzh in #2286
- refactor(batch): Use futures-async-stream to implement SortMergeJoin executor by @D2Lark in #2216
- refactor(batch): Use futures-async-stream to implement MergeSortExchange executor by @D2Lark in #2230
- refactor(stream): reorganize executor builders by @wangrunji0408 in #2289
- feat(docker): add compactor and single binary into dockerfile by @skyzh in #2294
- chore(storage): rename reverse to backward by @lmatz in #2298
- feat(risedev): generate docker-compose.yaml by @skyzh in #2288
- refactor(stream): rename
executor_v2
back toexecutor
by @wangrunji0408 in #2292 - feat(docker): separate image of each component by @skyzh in #2299
- chore(relational-table): store zero bytes for sentinel columns by @BowenXiao1999 in #2296
- refactor(batch): Use futures-async-stream to implement NestedLoopJoin executor by @D2Lark in #2217
- fix(state-store): fix a dead lock in memory state store by @BowenXiao1999 in #2302
- refactor(proto): clean up unused methods in risingwave_pb by @TennyZhuang in #2303
- feat(risedev): support compose minio and redpanda by @skyzh in #2297
- ci: fix cron invalid workflow by @TennyZhuang in #2307
- feat(meta): ensure chain index is placed at the same node of upstream by @skyzh in #2270
- feat(docker): add compactor in compose file by @skyzh in #2306
- chore(frontend): add test for delta join with projection by @skyzh in #2314
- chore(batch): remove outdated TODO in MergeSortExchangeExecutor by @lmatz in #2316
- feat(source): Add nexmark as source connector by @KeXiangWang in #540
- feat(array): implement
TrustedLen
forArrayIterator
andArrayImplIterator
by @LittleFall in #2309 - test: add nexmark e2e by @neverchanje in #2305
- feat(frontend): add nexmark planner test by @skyzh in #2321
- test: add aggregation tests for tumble window by @TennyZhuang in #2322
- refactor(batch): Use futures-async-stream to implement OrderBy executor by @liurenjie1024 in #2327
- refactor(batch): refine sort agg by @StrikeW in #2313
- feat(bitmap): store bitmap in meta store by @soundOfDestiny in #2252
- fix(frontend): fix panic on
LogicalHopWindow::prune_col
by @Enter-tainer in #2328 - feat(util): introduce non-memcomparable value encoding for Datum by @WindowsXp-Beta in #2067
- perf(bitmap): avoid virtualnode bitmap clone by @soundOfDestiny in #2330
- refactor(meta): add dedicated error enum for hummock meta. by @zwang28 in #2325
- feat(risedev): support compose prometheus by @skyzh in #2310
- refactor(storage): better cell based table serialization by @skyzh in #2340
- e2e(batch): open more tpch batch e2e test by @st1page in #2345
- feat(storage): vacuum a larger set of ssts by @lmatz in #2315
- metrics(hummock): add hummock version size metric by @hzxa21 in #2348
- feat(frontend): order by arbitrary expr by @likg227 in #2329
- feat(source): support source failover & refactor by @tabVersion in #2257
- fix(optimizer): logical_hop_window column prune by @Enter-tainer in #2347
- feat(optimizer): outer join simplify by @st1page in #2349
- refactor: use primitive array to implement chrono & interval by @xxchan in #2352
- feat: implement nullif and coalesce function by @cykbls01 in #2308
- test: add aggregation tests for hop window by @TennyZhuang in #2354
- feat: Add
to_local
method to generate local execution lan by @liurenjie1024 in #2335 - feat(storage): add GroupedSstableBuilder by @zwang28 in #2353
- feat(streaming): split chunks in source executor by @pleiadesian in #2361
- fix(dashboard-v2): failed to render because API is changed by @mikechesterwang in #2368
- perf(storage): make get_key use vnode bitmap filter by @soundOfDestiny in #2341
- fix(builder): make caller(builder) call get_table_id with new interface by @soundOfDestiny in #2373
- feat(bitmap): remove old bitmap in sstablemeta by @soundOfDestiny in #2376
- chore(ci): enable license checker for forks by @skyzh in #2378
- fix(lru cache): fix a bug when releasing the handle of a stale value by @wenym1 in #2381
- chore: increase e2e timeout before fine tune hummock compaction by @zwang28 in #2385
- feat(storage): use the highest bit of sstable id to mark the sstable id generated from remote or local by @wenym1 in #2386
- feat(compaction): support dynamic leveled-compaction by @Little-Wallace in #2242
- fix: Frontend doesn't handle left semi join correctly. by @jon-chuang in #2363
- refactor(binder): use
align_types
forcoalesce
by @xiangjinwu in #2382 - feat(compaction) optimize performance when trigger and apply compaction by @Little-Wallace in #2395
- test(compaction): re-enable ignored test by @soundOfDestiny in #2380
- fix(connector): kinesis impl is mismatched to pulsar by @tabVersion in #2390
- logging(storage): add more error logs in hummock by @hzxa21 in #2351
- feat(meta): send vnode mapping to compactor on compaction by @xx01cyx in #2388
- fix(streaming): inappropriate serialization for
JoinRow
by @yuhao-su in #2398 - refactor(bitmap): remove limit of bitmaps in SST by @soundOfDestiny in #2399
- refactor(batch): enable GenericExchangeExecutor2 poll all the sources by @D2Lark in #2372
- fix: fix failpoint tests and add to CI by @hzxa21 in #23...