Features
- feat: add barrier latency monitor (#553 by @wcy-fdu)
- feat: Propagate the CreateMview mutation barrier to init executor epoch (#511 by @hzxa21)
- feat(stream): fetch hash agg state in parallel (#568 by @pleiadesian)
- feat(bummock): introduce indexing storage (#573 by @twocode)
- feat(stream): add reset for stream executor (#557 by @yezizp2012)
- feat: Introducing new subquery decorreclator (#594 by @liurenjie1024)
- feat: add more metrics for StateStore (#555 by @zehaowei)
- feat: Introduce join push expression rule. (#603 by @liurenjie1024)
- feat: Introduce an auto-discovery for S3 Bucket files for Filesystem connector (#608 by @pangzhenzhou)
- feat: Introducing SimplifyFilterConditionRule (#614 by @liurenjie1024)
- feat: Support async checkpoint with hummock shared buffer (#602 by @hzxa21)
- feat(meta): add CompactorManager (#556 by @zwang28)
- feat: Introducing SimplifyFilterConditionRuleTest (#637 by @liurenjie1024)
- feat(meta): introduce consistent hash logic (#626 by @xx01cyx)
- feat(frontend): pull common factors from OR's operands in join (#664 by @lmatz)
- feat: support shared buffer reset (#629) (#659 by @hzxa21)
- feat: add scan metrics (#662 by @zehaowei)
- feat: Introducing JoinConditionTypeCoerceRule (#663 by @liurenjie1024)
- feat: refine the storage configurations on compute node. (#676 by @twocode)
- feat: support catalog update (#567 by @HuaHuaY)
- feat(planner): Introducing RewriteSubQueryRule (#684 by @liurenjie1024)
- feat(frontend): bind project (#615 by @likg227)
- feat(meta): support etcd as MetaStore backend (#681 by @TennyZhuang)
- feat: add offset for source message (#679 by @shanicky)
- feat(optimizer): column pruning for filter and scan (#693 by @xxchan)
- feat(risedev): support etcd meta store backend in risedev (#707 by @TennyZhuang)
- feat(optimizer): Introducing subquery removal rule. (#713 by @liurenjie1024)
- feat(frontend): LogicalFilter (#685 by @mczhuang)
- feat(compaction): stat sst upload cnt during compaction (#699 by @soundOfDestiny)
- feat: support binding functions and unary exprs (#694 by @neverchanje)
- feat(frontend): add execution context to replace session impl (#714 by @BowenXiao1999)
- feat(optimizer): implement column pruning for value, project, agg (#710 by @xxchan)
- feat: asynchronous shared buffer sync (#722 by @BugenZhao)
- feat: Array parsing support (#604 by @nanderstabel)
- feat(risedev): load previous components during configure (#750 by @TennyZhuang)
- feat: New subquery optimizer program. (#752 by @liurenjie1024)
- feat(storage): support replicate batch (aka remote write) (#718 by @skyzh)
- feat(compaction): compact idle levels with high priority (#739 by @soundOfDestiny)
- feat(hummock): vacuum tracked SSTs and metadata. (#725 by @zwang28)
- feat(optimizer): implement column pruning for topn & join (#733 by @xxchan)
- feat(planner): integrate with PlanRoot (#726 by @xiangjinwu)
- feat: report failed actors in barrier manager (#759 by @BugenZhao)
- feat(ss-bench): support calibrating metric parameter (#740 by @Sunt-ing)
- feat(ctl): support list Hummock version (#758 by @skyzh)
- feat(ctl): support list key-value pairs (#782 by @skyzh)
- feat(optimizer): plan node base (#748 by @st1page)
- feat: support all-in-one binary (#796 by @skyzh)
- feat(join): add semi/anti join support (#644 by @BowenXiao1999)
- feat(compaction): add more metrics into compaction (#771 by @soundOfDestiny)
- feat(risedev): support all-in-one binary (#799 by @skyzh)
- feat(compaction): add read/write amount metrics for compaction (#807 by @soundOfDestiny)
- feat(frontend): use new subquery rewriter in stream planner (#809 by @lmatz)
- feat: Use version to synchronize catalog (#749 by @HuaHuaY)
- feat(risedev): warn on no_proxy (#814 by @skyzh)
- feat(streaming): implement basic logic of lookup executor (#819 by @skyzh)
- feat(frontend): derive primary key for anti and semi join (#816 by @lmatz)
- feat(optimizer): Add filter join rule (#808 by @xxchan)
- feat(streaming): implement lookup row from storage (#822 by @skyzh)
- feat: add single_value agg function (#824 by @lmatz)
- feat(frontend): make expr in explain output concise (#802 by @xiangjinwu)
- feat(catalog): add descriptor for cellbased table (#815 by @st1page)
- feat: Convert GRPC results to Row (#812 by @cykbls01)
- feat(planner/optimizer): introduce query context in plan node + id assign for each plan node (#821 by @BowenXiao1999)
- feat: add notification for catalog-v2 (#850 by @yezizp2012)
- feat(risectl): move hummock to subcommand (#855 by @skyzh)
- feat(cmd): add zero-configuration playground to all-in-one binary (#853 by @TennyZhuang)
- feat(streaming): add unit tests for lookup executor (#851 by @skyzh)
- feat(risedev): create .bin and link risingwave (#857 by @skyzh)
- feat(meta): enable heartbeat detection. (#830 by @zwang28)
- feat: add catalog service v2 proto definition (#867 by @yezizp2012)
- feat(meta): distinguish and assign responsibilities for different parallel units (simple dispatch and hash dispatch) (#846 by @xx01cyx)
- feat(storage): support read epoch for in-memory state backend (#874 by @skyzh)
- feat(planner): plan inner join (#876 by @TennyZhuang)
- feat(frontend): support BatchInsert (#879 by @skyzh)
- feat(batch): introduce delete executor in compute node (#883 by @BugenZhao)
- feat(optimizer): implement BatchValues (#888 by @TennyZhuang)
- feat(planner): create LogicalAgg (#843 by @likg227)
- feat(scheduler): exchange node rewrite in serialization (#525 by @BowenXiao1999)
- feat: transform single_value into a two-phase aggregation (#892 by @lmatz)
- feat(storage): support hummock in-memory mode (#910 by @skyzh)
- feat(frontend): create query handler (#907 by @cykbls01)
- feat(risedev): add risedev p (#916 by @skyzh)
- feat(binder): bind & plan
DELETE
(#912 by @BugenZhao) - feat(frontend): bind & plan order by (#908 by @xiangjinwu)
- feat: suppport testing batch plan in plan test runner (#915 by @neverchanje)
- feat(frontend): support apply test plan (#926 by @skyzh)
- feat: use inner message (#932 by @shanicky)
- feat(optimizer): support
BatchDelete
(#934 by @BugenZhao) - feat(frontend): support stream scan plan (#938 by @skyzh)
- feat(optimzier): col_prune for logical insert (#933 by @st1page)
- feat(optimizer): turn on HeuristicOptimizer (#942 by @xxchan)
- feat(handler): get/drop hummock snapshot version in RPC (#936 by @BowenXiao1999)
- feat(risedev): use hummock in-memory mode by default (#954 by @skyzh)
- feat(frontend): support
HashJoin
with non-equal conditions (#949 by @fuyufjh) - feat(frontend): add no-op create mv handler (#960 by @skyzh)
- feat: send notification failed then retry (#925 by @HuaHuaY)
- feat(meta): Implement create and drop database/schema service v2 (#965 by @zbzbw)
- feat(streaming): add single value aggregation for streaming (#914 by @lmatz)
- feat: impl
ToStreamProst
for stream exchange (#967 by @BowenXiao1999) - feat: support
DELETE
with the Java frontend (#962 by @BugenZhao) - feat(meta): alter streaming schedule strategy (#940 by @xx01cyx)
- feat(frontend): support filter and projection stream serialization (#976 by @skyzh)
- feat(compaction): metric by frequence and #sst side, compaction doc (#829 by @soundOfDestiny)
- feat(frontend): support explain create mv (#978 by @skyzh)
- feat(meta): Implement create/drop MV service v2 (#983 by @zbzbw)
- feat(hummock): vacuum orphan hummock data (#818 by @zwang28)
- feat: write telemetry break down. (#987 by @twocode)
- feat(frontend): get pg_field_descs from boudstatement (#950 by @cykbls01)
- feat(frontend): support FLUSH (#996 by @TennyZhuang)
- feat(hummock): support write key conflict detection under debug mode (#968 by @wenym1)
- feat(risedev): run any dev command (#998 by @skyzh)
- feat: add local planner test for stream hash join (#1001 by @BowenXiao1999)
- feat(frontend): insert & delete handler (#1011 by @BugenZhao)
- feat(storage): store min epoch watermark to hummock version (#1010 by @StrikeW)
- feat(frontend): add virtual StreamTableScan node (#1024 by @skyzh)
- feat(frontend): make explained plan be dist (#1004 by @BowenXiao1999)
- feat: impl batch operators to pb (#986 by @neverchanje)
- feat(binder): support subqurey in FROM (#992 by @xxchan)
- feat(optimizer): add FilterProjectRule (#945 by @xxchan)
- feat: update downstream actor ids when create MoM (#1041 by @yezizp2012)
- feat(meta): add consistent hash mapping into hash dispatcher (#1030 by @xx01cyx)
- feat(ci): use nextest (#1048 by @skyzh)
- feat(frontend): BatchAgg and StreamAgg (#1026 by @likg227)
- feat(frontend): impl ToBatchProst for BatchSort (#1045 by @lmatz)
- feat(streaming): use single client for exchange (#1051 by @skyzh)
- feat(meta): implement create & drop source for catalog v2 (#1043 by @BugenZhao)
- feat: check ref count for drop source (#1057 by @yezizp2012)
- feat(frontend): add StreamMaterialize node (#1033 by @skyzh)
- feat(meta): implement create & drop materialized source for catalog v2 (#1065 by @BugenZhao)
- feat(streaming): prepare to support multiple dispatchers (#1064 by @skyzh)
- feat(frontend): bind functions (#734 by @mczhuang)
- feat(ci): use all-in-one binary (#1067 by @skyzh)
- feat(streaming): adopt consistent hash dispatch in streaming (#1056 by @xx01cyx)
- feat(meta): handling duplicated mv creation in create mv service v2 (#1066 by @zbzbw)
- feat(dashboard): integrate new dashboard ui with risedev (#531 by @mikechesterwang)
- feat(frontend): Rewrite avg to sum/count. (#1075 by @likg227)
- feat(risedev): add build dashboard config (#1086 by @skyzh)
- feat: read break down (#1094 by @twocode)
- feat(meta): handling duplicated source creation in catalog service v2 (#1101 by @zbzbw)
- feat(frontend): parallelize test (#1091 by @skyzh)
- feat(frontend): add stream proto test (#1105 by @skyzh)
- feat(frontend): support to_protobuf for streaming agg (#1116 by @skyzh)
- feat(storage): replace MViewTable with CellBasedTable and add relational interfaces (#1046 by @wcy-fdu)
- feat(frontend): add Trim support (#1114 by @mczhuang)
- feat(ser/de): add value encoding serializer/deserializer lib (#1117 by @BowenXiao1999)
- feat: support chain recover by received barrier (#1120 by @yezizp2012)
- feat: ListArray support (#1080 by @nanderstabel)
- feat(frontend): support include other cases in plan test runner (#1130 by @skyzh)
- feat(risedev): support install to cargo home (#1136 by @skyzh)
- feat(stream-hash-join): use value encoding for hash join (#1076 by @BowenXiao1999)
- feat(ci): enable release build for e2e tests (#1126 by @lmatz)
- feat(batch): split agg chunk size (#1142 by @TennyZhuang)
- feat: use ddl service & push metasnapshot when subscribe (#1089 by @HuaHuaY)
- feat(rpc_client): add ddl client (#1151 by @skyzh)
- feat(frontend): add stream hash join ser (#1148 by @BowenXiao1999)
- feat: add simple create source (#1159 by @shanicky)
- feat(optimizer): pk derive (#1108 by @st1page)
- feat(meta): Transactional create/drop materialized source (#1165 by @zbzbw)
- feat(risedev): support thread sanitizer (#1173 by @skyzh)
- feat: enable deadlock detection for parking_lot (#1171 by @skyzh)
- feat: introduce BlockV2 with restart point prefix compression (#1122 by @MrCroxx)
- feat(batch): split chunks in ValuesExecutor (#1187 by @TennyZhuang)
- feat(frontend): fill chain node (#1189 by @skyzh)
- feat(frontend): assemble materialized plan for creating table v2 (#1198 by @BugenZhao)
- feat(frontend): fill materialize node (#1204 by @skyzh)
- feat(optimizer): logical rewrite for stream (#1185 by @st1page)
- feat(meta): initial support for creating table v2 with the Rust frontend (#1209 by @BugenZhao)
- feat(frontend): add column order for materialize (#1208 by @skyzh)
- feat: create source with columns (#1211 by @shanicky)
- feat(frontend): support dropping table v2 (#1213 by @BugenZhao)
- feat(optimizer): turn on logical rewrite for stream (#1231 by @st1page)
- feat(hummock): enable blockv2 as default feature (#1194 by @MrCroxx)
- feat(frontend): insert into table v2 (#1225 by @BugenZhao)
- feat: add batch metrics to batch subsystem. (#1230 by @twocode)
- feat(optimizer): support deriving of append-only in stream plan node (#1228 by @xx01cyx)
- feat(frontend): generate full create mv request (#1240 by @skyzh)
- feat(frontend): delete from table v2 (#1239 by @BugenZhao)
- feat(meta): release invalid hummock context on failover. (#1121 by @zwang28)
- feat(optimizer): eliminate useless project (#1217 by @xxchan)
- feat(meta): introduce recovery process in meta when failover (#1215 by @yezizp2012)
- feat(source): introduce connector source (#1127 by @tabVersion)
- feat: create nested table schema according to proto file (#1078 by @cykbls01)
- feat(frontend): create protobuf source (#1255 by @cykbls01)
- feat(storage) return err instead of panic in
s3.rs/read
(#1257 by @xxhZs) - feat(optimizer): refactor table desc && SeqScan && SeqScan pk derive && SeqScan serialize (#1250) (#1258 by @skyzh)
- feat(meta): resolve relation dependencies on the meta node (#1273 by @BugenZhao)
- feat(frontend): add support for count(*) in frontend (#1244 by @likg227)
- feat(frontend): add create mv test (#1276 by @skyzh)
- feat(frontend): support explain
CREATE TABLE
(#1281 by @BugenZhao) - feat(frontend): Introducing
QueryManager
. (#1268 by @liurenjie1024) - feat(frontend): Implement to_prost for agg. (#1292 by @likg227)
- feat(frontend): drop materialized view (#1286 by @BugenZhao)
- feat(expr): add more cast functions & do not panic on unimplemented expr (#1300 by @BugenZhao)
- feat(frontend): cast & validate for
INSERT INTO ... VALUES ...
(#1294 by @BugenZhao) - feat(meta): add local subscription in NotificationManager. (#1315 by @zwang28)
- feat(risedev): support risedev frontend-v2 debug mode (#1321 by @BowenXiao1999)
- feat(optimizer): distribution derive and pass through (#1313 by @st1page)
- feat(frontend): migrate streaming join test (#1291 by @BowenXiao1999)
- feat(s3_file_reader): Implement the SourceReader interface for S3 (#1330 by @pangzhenzhou)
- feat(frontend): bind & plan uncorrelated subquery expr in
select
&where
clause (#1308 by @xxchan) - feat(frontend): show table and show source (#1298 by @cykbls01)
- feat: array access support and variable-length array parsing (#1311 by @nanderstabel)
- feat(frontend): support semi/anti join in logical join (#1352 by @xxchan)
- feat: add minimum Interval support (#1354 by @TennyZhuang)
- feat(frontend): Add
dist_query
opts. (#1359 by @liurenjie1024) - feat(frontend): add limit and offset to binder and planner (#1310 by @nanderstabel)
- feat(optimizer): ensure column name unique when create MV (#1363 by @st1page)
- feat(streaming): report finishing of MV creation from the
ChainExecutor
(#1341 by @BugenZhao) - feat(streaming): add group key info into executors that need state persistence (#1342 by @xx01cyx)
- feat: support float on frontend v2 (#1297 by @neverchanje)
- feat(planner): plan uncorrelated (not)EXISTS as semi/anti join (#1357 by @xxchan)
- feat(meta): report finishing of DDLs from the compute node to meta service (#1371 by @BugenZhao)
- feat: add compact task management. (#1275 by @zwang28)
- feat(frontend): prepare for TPC-H Q6 support (#1385 by @skyzh)
- feat: parser field selection (#1079 by @cykbls01)
- feat(e2e): migrate e2e left/right/outer/non-equal join test to rust fe (#1379 by @BowenXiao1999)
- feat(state-store): remove
async_trait
onStateStoreIter
(#1370 by @BowenXiao1999) - feat(frontend): support TPC-H Q6 (#1404 by @skyzh)
- feat(meta): create mview returns only if it finishes (#1387 by @BugenZhao)
- feat(optimizer): filter elim (#1430 by @st1page)
- feat(ci): use script to generate multiple copies (#1429 by @skyzh)
- feat: remove block v1 support (#1440 by @MrCroxx)
- feat(frontend): determine type of NULL (#1417 by @likg227)
Fixes
- fix: remove column index from OrderedRowSerializer (#593 by @lmatz)
- fix(frontend): ban streaming hash 2 phase agg (#592 by @st1page)
- fix(storage): build failure for
storage
crate (#654 by @BugenZhao) - fix: do not store null value (#642 by @lmatz)
- fix(meta): prevent panic when all nodes in cluster have been deleted (#677 by @xx01cyx)
- fix(meta): validate cluster membership in hummock RPC (#682 by @zwang28)
- fix(hummock): hold reference to hummock version during (Reverse)UserIterator's lifetime (#680 by @zwang28)
- fix(hummock): make report_compact_task retryable. (#660 by @zwang28)
- fix(storage): add txn commit for tikv state store (#702 by @wcy-fdu)
- fix(riselab): etcd cannot be correctly extracted (#712 by @skyzh)
- fix(meta): fix etcd meta store transaction (#720 by @TennyZhuang)
- fix(#691): Source actor cancellation cause CN, MN to panic. (#736 by @twocode)
- fix(mem-state-store):
sync
of mem state store should be no-op (#773 by @BowenXiao1999) - fix(ss-bench): register meta service (#778 by @Sunt-ing)
- fix: new a GeneralSortedGrouper (#776 by @lmatz)
- fix(risedev): update risedev logo (#780 by @Sunt-ing)
- fix: add onlyif for tpch q21 test (#804 by @BowenXiao1999)
- fix: allow missing fields in compute node config (#823 by @hzxa21)
- fix: init catalog version from meta store (#827 by @HuaHuaY)
- fix(name): rename pk orders (#844 by @st1page)
- fix: prune
LogicalValues
(#863 by @fuyufjh) - fix(streaming): hang up source when failed & panic on actor error (#777 by @BugenZhao)
- fix: ignore unstable test (#870 by @zwang28)
- fix(binder): rename JoinRef && remove Option in Join::cond (#873 by @TennyZhuang)
- fix(streaming): race case of local barrier manager (#860 by @BugenZhao)
- fix(meta): don't panic on mock heartbeat (#880 by @skyzh)
- fix(ci): extend batch 3node timeout (#881 by @skyzh)
- fix: single value should only accept at most one value (#854 by @lmatz)
- fix(planner): fix LogicalJoin::to_batch (#884 by @TennyZhuang)
- fix(risedev): build risedev before starting (#891 by @skyzh)
- fix(frontend): better apply plan (#928 by @skyzh)
- fix(optimizer): fix insert plan test (#946 by @st1page)
- fix(frontend): enforce singleton distribution on input in single mode aggregation rule (#927 by @lmatz)
- fix: workaround to fix duplicate naming in old catalog srv (#966 by @yezizp2012)
- fix: fix barrier manager gone and cmd hang when failover (#975 by @yezizp2012)
- fix(storage): make rocksdb pass compilation (#1007 by @lmatz)
- fix: query result should always be single distribution (#1013 by @BowenXiao1999)
- fix(pgwire): introduce EmptyQueryResponse and fix crash on empty queries (#1012 by @zbzbw)
- fix: Do not compact SSTs in uncommitted epoch (#1020 by @hzxa21)
- fix(storage): use AtomicCell in atomic operation in conflict detector (#1005 by @wenym1)
- fix(dashboard): make hashMapping of dispatcher invisible (#1062 by @xx01cyx)
- fix(dashboard): support resolve new multi-dispatcher (#1072 by @skyzh)
- fix(dashboard v2): fix some bugs (#1084 by @mikechesterwang)
- fix(storage): remove iterator from merge heap if error (#1099 by @skyzh)
- fix(proto): split HashMapping to two messages for meta and streaming (#1100 by @xx01cyx)
- fix(planner): do not reuqire single on insert/delete (#1137 by @BowenXiao1999)
- fix(risedev-doc): update some deprecated command (#1135 by @BowenXiao1999)
- fix(optimizer): do not insert empty project when pruning columns (#1129 by @xxchan)
- fix(table): delete empty mview.rs files in table (#1162 by @BowenXiao1999)
- fix(rpc_client): add timeout for heartbeat (#1175 by @skyzh)
- fix(storage): use HashSet inside DashMap in conflict detector (#1180 by @skyzh)
- fix: remove some allow clippy warnings (#1196 by @skyzh)
- fix(frontend): Session creation should assgin database name (#1163 by @liurenjie1024)
- fix(optimizer): add distribution deriving for project operator (#1210 by @xx01cyx)
- fix(java): conversion between epoch days and java.sql.Date (#1193 by @xiangjinwu)
- fix(frontend): add pk and operator id for chain and its children (#1220 by @skyzh)
- fix(frontend): use input distribution of create mv plan (#1223 by @skyzh)
- fix(optimizer): capacity of required_cols passed from LogicalJoin::prune_col to children (#1205 by @xiangjinwu)
- fix(frontend): add pk to mv catalog (#1243 by @skyzh)
- fix(optimizer): fix distribution for project operator (#1260 by @xx01cyx)
- fix(frontend): fill missing information in chain node (#1262 by @skyzh)
- fix(batch): ValuesExecutor use drain is inefficient (#1303 by @TennyZhuang)
- fix(frontend): fix tracing info (#1317 by @BowenXiao1999)
- fix(frontend): sum and avg infers return type incorrectly (#1329 by @skyzh)
- fix(optimizer): logical scan pk derive (#1340 by @st1page)
- fix(ci): do not ignore ci for docs-only pr (#1356 by @xxchan)
- fix(streaming): single value cannot be two-phased (#1389 by @lmatz)
- fix(frontend): handle ObserverManager first response (#1402 by @st1page)
- fix: Add copyright of regress test (#1403 by @liurenjie1024)
- fix(meta): fix dashboard mv filter (#1424 by @yezizp2012)
- fix: fix shared buffer deletion bug in LocalVersionManager (#1435 by @hzxa21)
- fix(hummock): retry unpin_version RPC. (#1422 by @zwang28)
Refactors
- refactor: remove the JSON proto check for MV-on-MV cases (#561 by @fuyufjh)
- refactor(proto): rename
MViewNode
toMaterializeNode
(#566 by @fuyufjh) - refactor(batch): remove useless generic parameter K in HashKeyDispatcher (#569 by @TennyZhuang)
- refactor(batch): simplify HashKeyDispatcher and remove macro (#571 by @TennyZhuang)
- refactor(streaming): refactor streaming code (#514 by @cykbls01)
- refactor(storage): introduce new row table (#570 by @st1page)
- refactor(common): rename collection/hash_map to hash (#589 by @TennyZhuang)
- refactor(batch): remove unnecessary RefCell and duplicated code (#597 by @yuhao-su)
- refactor(streaming): simplify
create_nodes_inner
function (#462 by @cykbls01) - refactor: remove bummock index storage code (#610 by @wyhyhyhyh)
- refactor: enable auto refresh for grafana (#609 by @wcy-fdu)
- refactor(proto):
Table
definition (#596 by @BugenZhao) - refactor(join): write data chunk when one probe is done + prepare for semi/anti join (#620 by @BowenXiao1999)
- refactor(storage): extract monitored state store (#638 by @BugenZhao)
- refactor(meta): minor refinement on MetaStore Transaction API (#647 by @TennyZhuang)
- refactor: remove
enforce_round_actor
in stream scheduler (#652 by @wyhyhyhyh) - refactor(storage): refine some unit test to remove test table (#656 by @st1page)
- refactor: enable compactor in compute node (#634 by @zwang28)
- refactor: remove table in tableSource && remove test table (#673 by @st1page)
- refactor: remove table manager on compute node (#697 by @BugenZhao)
- refactor(hummock): unify block cache (#715 by @MrCroxx)
- refactor(catalog): column desc (#717 by @st1page)
- refactor(hummock): refactor block abstraction (#746 by @MrCroxx)
- refactor: remove ScannableTable (#747 by @lmatz)
- refactor: extract repeated validation into a method (#764 by @xxchan)
- refactor(meta): remove unused RPC GetCompactTasks. (#757 by @zwang28)
- refactor(schedule): use async channel instead of sync channel (#755 by @BowenXiao1999)
- refactor: remove associated view registration in source manager (#765 by @BugenZhao)
- refactor: clean MViewTable a bit (#774 by @lmatz)
- refactor: refactor BindContext (#772 by @likg227)
- refactor(expr): simplify build of some exprs (#781 by @TennyZhuang)
- refactor(connector): remove associate type in connectors (#783 by @tabVersion)
- refactor: use ColumnDesc in RowSeqScan and BatchQuery and name fixing (#791 by @lmatz)
- refactor(metrics): Deprecate get_compaction_task metric and correct namings. (#786 by @twocode)
- refactor(metrics): replace opentelemetry with prometheus for streaming monitor (#785 by @wcy-fdu)
- refactor(metrics): remove lazy_static! in storage monitor (#820 by @wcy-fdu)
- refactor: make GrpcExchangeSource a reusable util (#813 by @neverchanje)
- refactor: refactor catalog proto and fix exist check (#832 by @yezizp2012)
- refactor(meta): introduce state of actors (#828 by @fuyufjh)
- refactor(proto): refactor cell based table and rowSeqScan plan (#835 by @st1page)
- refactor: support null key for extreme state (#848 by @StrikeW)
- refactor: remove
Schema::try_from
ColumnDesc (#864 by @fuyufjh) - refactor(proto): batch exchange (#904 by @fuyufjh)
- refactor(nlj): right semi join should not probe remaining (#893 by @BowenXiao1999)
- refactor: remove HummockOptions which is a duplicate of StorageConfig. (#921 by @zwang28)
- refactor(session): run statement use Arc and remove SessionContext (#913 by @BowenXiao1999)
- refactor: refine frontend and meta rpc proto (#952 by @st1page)
- refactor(test/sstable_test): refactor unit tests using sstable generation (#937 by @wenym1)
- refactor(meta): hummock manager adds in-mem state (#797 by @zwang28)
- refactor: redundant
Result<...>
ofto_prost
(#974 by @fuyufjh) - refactor(frontend): remove
PlanPass
& refactorsHeuristicOptimizer
(#981 by @fuyufjh) - refactor: remove unnecessary Result in stage to_prost (#985 by @BowenXiao1999)
- refactor(storage): split shared_buffer into multiple files (#1017 by @lmatz)
- refactor(meta): support retryable pin_version and pin_snapshot RPC. (#895 by @zwang28)
- refactor(meta): use moka for stream clients pool (#1058 by @BugenZhao)
- refactor(frontend): unify display format of plan nodes (#1069 by @fuyufjh)
- refactor(frontend): refactor catalog on frontend(part 1) (#882 by @st1page)
- refactor(metrics): separate metrics for Hummock from StateStoreMetrics (#1088 by @wcy-fdu)
- refactor(optimizer): refactor plan base (#1090 by @st1page)
- refactor(proto): rename catalog v2 to ddl service (#1097 by @BugenZhao)
- refactor(frontend): remove Clone on BoundBaseTable (#1106 by @xiangjinwu)
- refactor(expr): remove mut self from Expression::eval (#1109 by @lmatz)
- refactor(serializer):
deserialize_cell
accept a deserializer instead of cell slice (#1104 by @BowenXiao1999) - refactor(meta): remove hummock_manager_ref from StoredClusterManager. (#1113 by @zwang28)
- refactor(storage): remove one overflow check in should_finish_block (#1140 by @lmatz)
- refactor(storage): remove collect_vec (#1155 by @lmatz)
- refactor(storage): introduce StorageValue in StateStore (#1149 by @xx01cyx)
- refactor(common): make buffer immutable (#1166 by @lmatz)
- refactor: refactor column_index_mapping (#1168 by @xxchan)
- refactor(meta): remove dashmap usages from fragments manager (#1184 by @BugenZhao)
- refactor: update worker node's TTL more accurately. (#1200 by @zwang28)
- refactor(storage): reduce one truncate in BlockIterator::set_idx (#1164 by @lmatz)
- refactor(sqlparser): remove mssql syntax (#1203 by @neverchanje)
- refactor(frontend): Use TryInto to convert HostAddr to SocketAddr. (#1237 by @liurenjie1024)
- refactor(test/sstable_test): Refactor unit tests using the remove tableid method (#1143 by @xxhZs)
- refactor(stream): introduce ExecutorV2 + FilterExecutorV2 (#1234 by @TennyZhuang)
- refactor(frontend): simplify PgFieldDescriptor in query response (#1242 by @xiangjinwu)
- refactor(stream): introduce MockSourceV2 && add filter UT back (#1245 by @TennyZhuang)
- refactor(optimizer): change project elim & merge into rules (#1249 by @xxchan)
- refactor: Introduce
HostAddr
as communication endpoint (#1222 by @zbzbw) - refactor(optimzier): fix comments in #1250 and #1258 (#1269 by @st1page)
- refactor(expr): cleanup string parse cast exprs (#1270 by @BugenZhao)
- refactor(cell_based_table): redefine cell_based interfaces (#1282 by @wcy-fdu)
- refactor: remove
Segment
ofKeyspace
(#1296 by @fuyufjh) - refactor: minor refactors on frontend expr utils (#1304 by @xxchan)
- refactor(frontend): Rename QueryContext to OptimizerContext (#1309 by @liurenjie1024)
- refactor(optimizer): stream materialize && handle create table && handle create mv (#1314 by @st1page)
- refactor(meta): refactor HummockManager with ValTransaction to avoid unnecessary explicit update to in-mem state after commit to state store (#1318 by @wenym1)
- refactor(storage): remove async_trait from StateStore (#1266 by @lmatz)
- refactor(frontend): explain of columns in stream materialize (#1336 by @BugenZhao)
- refactor(batch): remove async trait from channels (#1350 by @lmatz)
- refactor(frontend): use macros to implement utilities for expr (#1376 by @xxchan)
- refactor: remove HummockStateStore wrapper for HummockStorage (#1383 by @hzxa21)
- refactor(optimizer): remove WithXXX on PlanNode (#1388 by @st1page)
- refactor(meta): support batch unpin version/snapshot. (#1397 by @zwang28)
- refactor(frontend): reject unsupported types (#1426 by @xiangjinwu)
Tests
- test: introduce a mocked meta for frontend testing (#617 by @neverchanje)
- test: introduce planner test runner (#632 by @neverchanje)
- test(streaming): add tpch q19 for streaming (#666 by @lmatz)
- test(frontend): update order by tests (#931 by @xiangjinwu)
- test(streaming): add tpch q15 for streaming (#971 by @lmatz)
- test(planner): sample tpch test on planner (#1118 by @xiangjinwu)
- test: move sqlparser-test-runner to a separate crate (#1265 by @neverchanje)
- test(compaction): remove deprecated test (#1344 by @soundOfDestiny)
- test: add interval e2e and planner tests (#1358 by @TennyZhuang)
- tests: rearrange tpc-h tests for frontend v2 (#1366 by @skyzh)
- test(streaming): add tpch upstream test (#980 by @BugenZhao)
- test(streaming): cleanup flushes after creating MV (#1416 by @BugenZhao)
- test(frontend): add cross join test (#1436 by @skyzh)
Others
- chore: bump dependencies (#563 by @skyzh)
- chore: fix typo and naming (#586 by @hzxa21)
- style: fix typo stream and remove $a, $b, $c (#621 by @TennyZhuang)
- style: misc changes in rust frontend (#651 by @fuyufjh)
- chore: rename SstableManager to SstableStore (#671 by @MrCroxx)
- chore(storage): cleanup state store stats (#674 by @BugenZhao)
- chore(risedev): add dev-meta-node (#705 by @zwang28)
- chore(streaming): no use select! in source executor (#703 by @skyzh)
- chore: rename crates to risingwave_xxx (#729 by @skyzh)
- chore: move bin logic to lib (#730 by @skyzh)
- style(docs): improve rustdocs of frontend (#744 by @fuyufjh)
- chore: rename server to compute (#738 by @skyzh)
- chore: refine error messsage of invalid agg (#743 by @neverchanje)
- chore: fix comments in #746 (#756 by @MrCroxx)
- chore: move all binaries to cmd crate (#754 by @skyzh)
- style: rename projection -> project (#762 by @xxchan)
- chore: bump toolchain to 2022-03-09 and fix GAT related issue (#770 by @skyzh)
- chore(streaming): rename pk to arrange keys in MaterializeExecutor (#788 by @skyzh)
- style: fix misuse of
pub use RwError
(#787 by @xiangjinwu) - style: fix incorrect indents in macros (#805 by @TennyZhuang)
- chore(common): fix remaining GAT workarounds (#825 by @skyzh)
- chore: bump dependencies (#833 by @skyzh)
- chore(meta): simplify catalog v2 proto (#872 by @yezizp2012)
- chore(docs): remove outdated docs (#887 by @skyzh)
- chore(stream): remove reset in executor (#901 by @yezizp2012)
- chore: remove duplicate cli options. (#903 by @zwang28)
- chore(docs): 'bound' statement instead of 'bounded' (#905 by @xxchan)
- chore: remove unused dependency. (#911 by @zwang28)
- chore(frontend): only retain batch plan in test cases (#953 by @skyzh)
- chore(frontend): better expr display string (#941 by @skyzh)
- chore(storage): add timeout to wait_epoch (#969 by @skyzh)
- chore: add logging for compaction and vacuum. (#989 by @zwang28)
- chore(stream): using ActorId in local stream manager (#1025 by @yezizp2012)
- chore(frontend): impl expr to_prost separately (#1029 by @skyzh)
- chore(optimizer): separate logical optimization (#1044 by @xxchan)
- chore(frontend): move test comments into sql (#1049 by @skyzh)
- chore(ci): remove unnecessary steps and downgrade ec2 (#1054 by @skyzh)
- chore: add license header (#1009 by @skyzh)
- chore(storage): fix HummockError debug and show error on compaction fail (#1096 by @skyzh)
- chore: reduce time of rebuilding across workspace (#1081 by @skyzh)
- style(binder): rename TableRef to Relation (#1098 by @xiangjinwu)
- chore: remove duplicated and unused dependencies (#1102 by @skyzh)
- chore: remove some unnecessary todos (#1119 by @twocode)
- chore: use XXHash by default. (#1133 by @zwang28)
- chore: speed up test and compile (#1141 by @skyzh)
- chore: use option for target_upper in mapping (#1152 by @xxchan)
- chore(ci): disable etcd temporarily (#1176 by @skyzh)
- chore(risedev): disable etcd fsync in local development (#1181 by @skyzh)
- chore: remove/fix some unused lints/comments/features (#1202 by @TennyZhuang)
- chore: add more license header and remove empty comment line (#1214 by @skyzh)
- style: add clippy rules for frontend (#1254 by @xxchan)
- chore(frontend): remove useless code in expr (#1295 by @xxchan)
- chore(risedev): better error message when failed to start (#1299 by @skyzh)
- style: use snake style in macro (#1302 by @TennyZhuang)
- chore(risedev): remove riselab (#1320 by @skyzh)
- chore(risdev): remove unused dep in risedev.yml (#1324 by @BowenXiao1999)
- chore(risedev): better error message with context and root cause (#1326 by @lmatz)
- chore: fix comments in storage (#1306 by @hzxa21)
- chore: Remove copy right header for files adapted from arrow. (#1345 by @liurenjie1024)
- style: rename managed states of streaming aggregation (#1349 by @fuyufjh)
- chore(frontend): migrate mv on mv e2e tests (#1338 by @skyzh)
- refactor(streaming): add executor error type for stream v2 (#1319 by @skyzh)
- chore(ci): upgrade sqllogictest (#1374 by @skyzh)
- chore: add comment and debugging info (#1378 by @neverchanje)
- chore(meta): simplier constructor for XXXManager in meta (#1390 by @yezizp2012)
- chore(ci): upgrade sqllogictest to v0.3.3 (#1412 by @BugenZhao)
- chore(frontend): correct some usage of logging to tracing (#1423 by @BowenXiao1999)
- chore: fix some invalid links in rustdoc (#1438 by @TennyZhuang)
- chore: bump dependencies (#1441 by @skyzh)
Uncategorized
- fix: temp disable source e2e test (#599 by @shanicky)
- refactor(stream): use common::Hash in stream::HashAggExecutor (#612 by @TennyZhuang)
- test: add more unit tests for shared buffer and fix a potential seek bug (#646 by @hzxa21)
- refactor(hummock): Introduce SSTableManager and refactor SSTable (#627 by @MrCroxx)
- feat(meta): prometheus metrics #sst in each level of lsm (#683 by @soundOfDestiny)
- refactor(ss-bench): upgrade to use MonitoredStateStore (#696 by @Sunt-ing)
- fix(streaming): undetermined order of barrier and stream chunk (#655 by @BugenZhao)
- ci: enable etcd as meta store (#723 by @TennyZhuang)
- revert: actor cancellation (#795 by @fuyufjh)
- hummock: add async_checkpoint_enabled in HummockOptions (#709 by @hzxa21)
- frontend: implement BatchFilter & StreamFilter (#840 by @fuyufjh)
- feat(binder): bind inner join (#869 by @TennyZhuang)
- refactor: replace bincode with prost in serde CompactStatus (#800 by @Gogomoe)
- ci: enable etcd on more workflows in CI (#900 by @TennyZhuang)
- refactor(frontend): remove sort merge join (#944 by @fuyufjh)
- revert:
columns_to_prost
returnsResult
(#984 by @fuyufjh) - ci: ignore workflow for doc-only pr (#994 by @xxchan)
- docs(compaction): clearify watermark rule in compaction (#1014 by @soundOfDestiny)
- fix: correctly process no-column chunk (#1050 by @neverchanje)
- ci: update llvm cov dependency (#1077 by @MrCroxx)
- docs: rename risingwave-dev to risingwave (#1082 by @skyzh)
- streaming: use value encoding for HashAgg and StringAgg(#956) (#1095 by @WindowsXp-Beta)
- Revert "feat: add batch metrics to batch subsystem." (#1229 by @twocode)
- refactor: mock CatalogWriter instead of mocking MetaClient (#1218 by @neverchanje)
- feat(optimizer): add FilterAggRule (#1216 by @xxchan)
- refactor(frontend): QueryContextRef should be Send. (#1247 by @liurenjie1024)
- feat(common): support Interval in backend (#1301 by @TennyZhuang)
- perf(compaction): cancel compact task in necessary levels only (close… (#1280 by @soundOfDestiny)
- docs: initial developer docs & remove user docs (#1337 by @fuyufjh)
- docs: install everything at once (#1351 by @skyzh)
- docs: add environment setup commands for linux in README (#1355 by @hzxa21)
- docs: add overview of state store (#1362 by @skyzh)
- Refine storage overview doc (#1369 by @hzxa21)
- chore: rename java frontend to frontend-legacy (#1391 by @skyzh)
- docs: add quick start in readme, rewrite contributing guide (#1395 by @skyzh)
- bench: remove meta-service dependency from ss_bench (#1399 by @Little-Wallace)
- refactor(compaction): Make compactor a meaningful structure. (#1328 by @twocode)
- docs: metadata service (#1427 by @fuyufjh)
- docs: move pictures into separated directories (#1432 by @fuyufjh)
- feat(compaction): restore deleted metrics (#1288 by @soundOfDestiny)