1#![forbid(unsafe_code)]
11
12pub mod access;
13pub mod aggregation;
14pub mod application;
15mod authorization;
16pub mod binding;
17pub mod compiled_plan;
18pub mod context;
19pub mod credentials;
20pub mod cte;
21pub mod dispatch;
22mod executor;
23mod executor_host;
24mod explain;
25pub mod expr_converter;
26pub mod expression;
27pub mod hash_table;
28pub mod index_optimizer;
29mod index_optimizer_host;
30pub mod join_executor;
31pub mod join_graph;
32pub mod lookup_key;
33#[doc(hidden)]
34pub mod memory;
35pub mod mutation;
36mod mutation_host;
37pub mod navigation;
38pub mod operator;
39pub mod operators;
40pub mod optimizer;
41pub mod parallel;
42pub mod pipeline;
43pub mod planner;
44mod prepared;
45pub mod procedural;
46pub mod public_read;
47pub mod pushdown;
48mod query;
49pub mod query_cache;
50pub mod query_classification;
51pub mod result;
52pub mod semantic_cache;
53mod show;
54pub mod statistics;
55pub mod subquery;
56#[cfg(feature = "test-mutations")]
57#[doc(hidden)]
58pub mod test_mutations;
59pub mod utils;
60pub mod window;
61
62mod catalog;
63
64#[doc(hidden)]
65pub use catalog::{bind_runtime_catalog, plugin_catalog_runtime_binder};
66
67#[cfg(any(test, feature = "test-hooks"))]
68#[doc(hidden)]
69pub use executor::test_executor_construction_count;
70pub use executor::{count_parameters, Executor};
71#[doc(hidden)]
72pub use prepared::{program_contains_transaction_control, PreparedProgram};
73pub use public_read::{
74 BoundPublicReadPolicy, PublicReadColumnBinding, PublicReadLimits, PublicReadMaterialized,
75 PublicReadRelationBinding, PublicReadRelationSpec,
76};
77
78pub use binding::output::QueryOutputColumn;
82pub use context::{clear_all_thread_local_caches, ExecutionContext, TimeoutGuard};
83pub use expression::{
84 CompileContext, CompileError, CompiledEvaluator, ExecuteContext, ExprCompiler, ExprVM,
85 Program as ExprProgram,
86};
87pub use hash_table::{hash_row_keys, verify_key_equality, JoinHashTable};
88pub use join_executor::{JoinAnalysis, JoinExecutor, JoinInputOrderings, JoinRequest, JoinResult};
89pub use operator::{
90 ColumnInfo, CompositeRow, EmptyOperator, MaterializedOperator, Operator, OrderingProperty,
91 RowRef,
92};
93pub use operators::{
94 BatchIndexNestedLoopJoinOperator, HashJoinOperator, IndexLookupStrategy,
95 IndexNestedLoopJoinOperator, JoinProjection, JoinSide, JoinType, MergeJoinOperator,
96 NestedLoopJoinOperator,
97};
98pub use parallel::{
99 JoinType as ParallelJoinType, ParallelConfig, DEFAULT_PARALLEL_CHUNK_SIZE,
100 DEFAULT_PARALLEL_FILTER_THRESHOLD, DEFAULT_PARALLEL_JOIN_THRESHOLD,
101};
102pub use planner::{
103 ColumnStatsCache, QueryPlanner, RuntimeJoinAlgorithm, RuntimeJoinDecision, StatsHealth,
104};
105pub use query_cache::{CacheStats, CachedPlanRef, CachedQueryPlan, QueryCache, DEFAULT_CACHE_SIZE};
106pub use query_classification::clear_classification_cache;
107pub use radixdb_plugin_host::{DatabasePluginAdmission, PluginRegistry};
108pub use result::{ColumnarResult, ExecResult, ExecutionResult, ExecutorResult};
109pub use semantic_cache::{
110 CacheLookupResult, CachedResult, QueryFingerprint, SemanticCache, SemanticCacheStats,
111 SemanticCacheStatsSnapshot, SubsumptionResult, DEFAULT_CACHE_TTL_SECS, DEFAULT_MAX_CACHED_ROWS,
112 DEFAULT_MAX_GLOBAL_CACHED_BYTES, DEFAULT_SEMANTIC_CACHE_SIZE,
113};
114pub use utils::{compute_join_projection, extract_join_keys_and_residual, JoinProjectionIndices};