Skip to main content

risingwave_batch_executors/
executor.rs

1// Copyright 2024 RisingWave Labs
2//
3// Licensed under the Apache License, Version 2.0 (the "License");
4// you may not use this file except in compliance with the License.
5// You may obtain a copy of the License at
6//
7//     http://www.apache.org/licenses/LICENSE-2.0
8//
9// Unless required by applicable law or agreed to in writing, software
10// distributed under the License is distributed on an "AS IS" BASIS,
11// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12// See the License for the specific language governing permissions and
13// limitations under the License.
14
15pub use risingwave_batch::executor::*;
16
17pub mod aggregation;
18mod azblob_file_scan;
19mod delete;
20mod expand;
21mod filter;
22mod gcs_file_scan;
23mod generic_exchange;
24mod get_channel_delta_stats;
25mod group_top_n;
26mod hash_agg;
27mod hop_window;
28mod iceberg_metadata_scan;
29mod iceberg_scan;
30mod insert;
31mod join;
32mod limit;
33mod log_row_seq_scan;
34mod max_one_row;
35mod merge_sort;
36mod merge_sort_exchange;
37mod mysql_query;
38mod order_by;
39mod postgres_query;
40mod project;
41mod project_set;
42mod row_seq_scan;
43mod s3_file_scan;
44mod sort_agg;
45mod sort_over_window;
46mod source;
47mod sys_row_seq_scan;
48mod table_function;
49pub mod test_utils;
50mod top_n;
51mod union;
52mod update;
53mod utils;
54mod values;
55mod vector_index_nearest;
56
57use azblob_file_scan::AzblobFileScanExecutorBuilder;
58pub use delete::*;
59pub use expand::*;
60pub use filter::*;
61use gcs_file_scan::GcsFileScanExecutorBuilder;
62pub use generic_exchange::*;
63use get_channel_delta_stats::GetChannelDeltaStatsExecutor;
64pub use group_top_n::*;
65pub use hash_agg::*;
66pub use hop_window::*;
67pub use iceberg_metadata_scan::*;
68pub use iceberg_scan::*;
69pub use insert::*;
70pub use join::*;
71pub use limit::*;
72use log_row_seq_scan::LogStoreRowSeqScanExecutorBuilder;
73pub use max_one_row::*;
74pub use merge_sort::*;
75pub use merge_sort_exchange::*;
76pub use mysql_query::*;
77pub use order_by::*;
78pub use postgres_query::*;
79pub use project::*;
80pub use project_set::*;
81pub use row_seq_scan::*;
82use s3_file_scan::FileScanExecutorBuilder;
83pub use sort_agg::*;
84pub use sort_over_window::SortOverWindowExecutor;
85pub use source::*;
86use sys_row_seq_scan::SysRowSeqScanExecutorBuilder;
87pub use table_function::*;
88pub use top_n::TopNExecutor;
89pub use union::*;
90pub use update::*;
91pub use utils::*;
92pub use values::*;
93use vector_index_nearest::VectorIndexNearestExecutorBuilder;
94
95register_executor!(RowSeqScan, RowSeqScanExecutorBuilder);
96register_executor!(Insert, InsertExecutor);
97register_executor!(Delete, DeleteExecutor);
98register_executor!(Exchange, GenericExchangeExecutorBuilder);
99register_executor!(Update, UpdateExecutor);
100register_executor!(Filter, FilterExecutor);
101register_executor!(Project, ProjectExecutor);
102register_executor!(SortAgg, SortAggExecutor);
103register_executor!(Sort, SortExecutor);
104register_executor!(TopN, TopNExecutor);
105register_executor!(GroupTopN, GroupTopNExecutorBuilder);
106register_executor!(Limit, LimitExecutor);
107register_executor!(Values, ValuesExecutor);
108register_executor!(NestedLoopJoin, NestedLoopJoinExecutor);
109register_executor!(HashJoin, HashJoinExecutor<()>);
110register_executor!(HashAgg, HashAggExecutorBuilder);
111register_executor!(MergeSortExchange, MergeSortExchangeExecutorBuilder);
112register_executor!(TableFunction, TableFunctionExecutorBuilder);
113register_executor!(HopWindow, HopWindowExecutor);
114register_executor!(SysRowSeqScan, SysRowSeqScanExecutorBuilder);
115register_executor!(Expand, ExpandExecutor);
116register_executor!(LocalLookupJoin, LocalLookupJoinExecutorBuilder);
117register_executor!(DistributedLookupJoin, DistributedLookupJoinExecutorBuilder);
118register_executor!(ProjectSet, ProjectSetExecutor);
119register_executor!(Union, UnionExecutor);
120register_executor!(Source, SourceExecutor);
121register_executor!(SortOverWindow, SortOverWindowExecutor);
122register_executor!(MaxOneRow, MaxOneRowExecutor);
123register_executor!(FileScan, FileScanExecutorBuilder);
124register_executor!(GcsFileScan, GcsFileScanExecutorBuilder);
125register_executor!(AzblobFileScan, AzblobFileScanExecutorBuilder);
126register_executor!(IcebergScan, IcebergScanExecutorBuilder);
127register_executor!(IcebergMetadataScan, IcebergMetadataScanExecutorBuilder);
128register_executor!(PostgresQuery, PostgresQueryExecutorBuilder);
129register_executor!(MysqlQuery, MySqlQueryExecutorBuilder);
130register_executor!(LogRowSeqScan, LogStoreRowSeqScanExecutorBuilder);
131register_executor!(GetChannelDeltaStats, GetChannelDeltaStatsExecutor);
132register_executor!(VectorIndexNearest, VectorIndexNearestExecutorBuilder);