Skip to content

Commit 50d5667

Browse files
authored
feat: add * and logical exprs to evm_proof_plan (#765)
Please be sure to look over the pull request guidelines here: https://github.com/spaceandtimelabs/sxt-proof-of-sql/blob/main/CONTRIBUTING.md#submit-pr. # Please go through the following checklist - [x] The PR title and commit messages adhere to guidelines here: https://github.com/spaceandtimelabs/sxt-proof-of-sql/blob/main/CONTRIBUTING.md. In particular `!` is used if and only if at least one breaking change has been introduced. - [x] I have run the ci check script with `source scripts/run_ci_checks.sh`. - [x] I have run the clean commit check script with `source scripts/check_commits.sh`, and the commit history is certified to follow clean commit guidelines as described here: https://github.com/spaceandtimelabs/sxt-proof-of-sql/blob/main/COMMIT_GUIDELINES.md - [x] The latest changes from `main` have been incorporated to this PR by simple rebase if possible, if not, then conflicts are resolved appropriately. # Rationale for this change We need to add * and logical exprs to `evm_proof_plan` so that we can do cross-language tests. <!-- Why are you proposing this change? If this is already explained clearly in the linked issue then this section is not needed. Explaining clearly why changes are proposed helps reviewers understand your changes and offer better suggestions for fixes. Example: Add `NestedLoopJoinExec`. Closes #345. Since we added `HashJoinExec` in #323 it has been possible to do provable inner joins. However performance is not satisfactory in some cases. Hence we need to fix the problem by implement `NestedLoopJoinExec` and speed up the code for `HashJoinExec`. --> # What changes are included in this PR? See title. <!-- There is no need to duplicate the description in the ticket here but it is sometimes worth providing a summary of the individual changes in this PR. Example: - Add `NestedLoopJoinExec`. - Speed up `HashJoinExec`. - Route joins to `NestedLoopJoinExec` if the outer input is sufficiently small. --> # Are these changes tested? <!-- We typically require tests for all PRs in order to: 1. Prevent the code from being accidentally broken by subsequent changes 2. Serve as another way to document the expected behavior of the code If tests are not included in your PR, please explain why (for example, are they covered by existing tests)? Example: Yes. --> Yes.
2 parents dbb4790 + 721ff20 commit 50d5667

File tree

9 files changed

+565
-26
lines changed

9 files changed

+565
-26
lines changed

crates/proof-of-sql/src/sql/evm_proof_plan/error.rs

+7
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
1+
use crate::sql::AnalyzeError;
12
use snafu::Snafu;
23

34
/// Represents errors that can occur in the EVM proof plan module.
@@ -15,6 +16,12 @@ pub(crate) enum EVMProofPlanError {
1516
/// Error indicating that table name can not be parsed into `TableRef`.
1617
#[snafu(display("table name can not be parsed into TableRef"))]
1718
InvalidTableName,
19+
/// Analyze error
20+
#[snafu(transparent)]
21+
AnalyzeError {
22+
/// The underlying source error
23+
source: AnalyzeError,
24+
},
1825
}
1926

2027
/// Result type for EVM proof plan operations.

0 commit comments

Comments
 (0)