xngin icon indicating copy to clipboard operation
xngin copied to clipboard

X-Engine: A SQL Engine built from scratch in Rust.

Results 24 xngin issues
Sort by recently updated
recently updated
newest added

As draft version of join reorder algorithm is done, the plan module should work with fake cost model and cardinality estimations. To implement the estimator and cost model, the underlying...

feature

As mentioned [here](https://wp.sigmod.org/?p=1075), cardinality estimation is crucial for cost based optimization.

feature

```sql SELECT c1 FROM t1 LEFT JOIN t2 ON t1.c1 = t2.c2 WHERE t2.c2 IS NULL ``` Above SQL uses LeftJoin to achieve the AntiJoin Semantics. We remove the WHERE...

feature

Similar to CNF expressions, we have to handle: 1. Constant folding. 2. Remove redundant operands. 3. Combine comparisons.

feature

This rule does not support unfold derived table as inner side of outer join if the output contains expressions other than columns. The reason is that outer join may change...

feature

The project [join-order-benchmark](https://github.com/gregrahn/join-order-benchmark) looks promising with paper "How Good Are Query Optimizers, Really?" describing its goal and methodology. Try porting to Rust. Initial step is to include schemas and queries....

feature

Visualize the query plan as a graph helps a lot when understanding and debugging the optimization plan with many rules to apply. [petgraph](https://crates.io/crates/petgraph) is preferred. A minimal web console is...

feature