OpenMLDB icon indicating copy to clipboard operation
OpenMLDB copied to clipboard

feat(parser): simple ANSI SQL rewriter

Open aceforeverd opened this issue 1 year ago • 5 comments

aceforeverd avatar May 21 '24 08:05 aceforeverd

Codecov Report

Attention: Patch coverage is 84.87654% with 49 lines in your changes are missing coverage. Please review.

Project coverage is 75.22%. Comparing base (21184d5) to head (1295708).

Files Patch % Lines
hybridse/src/rewriter/ast_rewriter.cc 85.13% 44 Missing :warning:
src/sdk/sql_cluster_router.cc 75.00% 4 Missing :warning:
hybridse/src/rewriter/ast_rewriter_test.cc 91.66% 1 Missing :warning:
Additional details and impacted files
@@              Coverage Diff              @@
##               main    #3934       +/-   ##
=============================================
+ Coverage     41.62%   75.22%   +33.60%     
  Complexity      711      711               
=============================================
  Files           196      754      +558     
  Lines         11792   135572   +123780     
  Branches       2012     2012               
=============================================
+ Hits           4908   101983    +97075     
- Misses         6581    33286    +26705     
  Partials        303      303               

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.

codecov[bot] avatar May 21 '24 09:05 codecov[bot]

SDK Test Report

102 files  ±0  102 suites  ±0   2m 12s :stopwatch: -11s 359 tests ±0  345 :white_check_mark: ±0  14 :zzz: ±0  0 :x: ±0  487 runs  ±0  473 :white_check_mark: ±0  14 :zzz: ±0  0 :x: ±0 

Results for commit 12957081. ± Comparison against base commit 21184d56.

This pull request removes 30 and adds 9 tests. Note that renamed tests count towards both.
  PARTITION BY db1.t1.col2 ORDER BY db1.t1.col1
  PARTITION BY t1.col2 ORDER BY t1.col1
  ROWS_RANGE BETWEEN 3 PRECEDING AND CURRENT ROW
 ) limit 10;](1)
 ) limit 10;](2)
 ) limit 10;](3)
 FROM db1.t1
 FROM t1
 WINDOW w1 AS (
 last join db2.t2 order by db2.t2.col1
…
com._4paradigm.hybridse.sdk.SqlEngineTest ‑ sqlLastJoinWithMultipleDB[,  SELECT sum(db1.t1.col1) over w1 as sum_t1_col1, db2.t2.str1 as t2_str1
 FROM db1.t1
 last join db2.t2 order by db2.t2.col1
 on db1.t1.col1 = db2.t2.col1 and db1.t1.col2 = db2.t2.col0
 WINDOW w1 AS (
  PARTITION BY db1.t1.col2 ORDER BY db1.t1.col1
  ROWS_RANGE BETWEEN 3 PRECEDING AND CURRENT ROW
 ) limit 10;](2)
com._4paradigm.hybridse.sdk.SqlEngineTest ‑ sqlLastJoinWithMultipleDB[db1,  SELECT sum(t1.col1) over w1 as sum_t1_col1, db2.t2.str1 as t2_str1
 FROM t1
 last join db2.t2 order by db2.t2.col1
 on t1.col1 = db2.t2.col1 and t1.col2 = db2.t2.col0
 WINDOW w1 AS (
  PARTITION BY t1.col2 ORDER BY t1.col1
  ROWS_RANGE BETWEEN 3 PRECEDING AND CURRENT ROW
 ) limit 10;](1)
com._4paradigm.hybridse.sdk.SqlEngineTest ‑ sqlLastJoinWithMultipleDB[null,  SELECT sum(db1.t1.col1) over w1 as sum_t1_col1, db2.t2.str1 as t2_str1
 FROM db1.t1
 last join db2.t2 order by db2.t2.col1
 on db1.t1.col1 = db2.t2.col1 and db1.t1.col2 = db2.t2.col0
 WINDOW w1 AS (
  PARTITION BY db1.t1.col2 ORDER BY db1.t1.col1
  ROWS_RANGE BETWEEN 3 PRECEDING AND CURRENT ROW
 ) limit 10;](3)
com._4paradigm.hybridse.sdk.SqlEngineTest ‑ sqlMultipleDBErrorTest[, SELECT db2.t2.str1 as t2_str1
 FROM t1
 last join db2.t2 order by db2.t2.col1
 on t1.col1 = db2.t2.col1 and t1.col2 = db2.t2.col0;
, SQL parse error: Fail to transform data provider op: table t1 not exists in database []](4)
com._4paradigm.hybridse.sdk.SqlEngineTest ‑ sqlMultipleDBErrorTest[db1, SELECT db1.t2.str1 as t2_str1
 FROM t1
 last join db2.t2 order by db2.t2.col1
 on t1.col1 = db2.t2.col1 and t1.col2 = db2.t2.col0;
, SQL parse error: Column Not found: db1.t2.str1](2)
com._4paradigm.hybridse.sdk.SqlEngineTest ‑ sqlMultipleDBErrorTest[db1, SELECT db2.t2.str1 as t2_str1
 FROM t1
 last join db2.t2 order by db2.t2.col1
 on t1.col1 = t2.col1 and t1.col2 = db2.t2.col0;
, SQL parse error: Column Not found: .t2.col1](3)
com._4paradigm.hybridse.sdk.SqlEngineTest ‑ sqlMultipleDBErrorTest[db1, SELECT t2.str1 as t2_str1
 FROM t1
 last join db2.t2 order by db2.t2.col1
 on t1.col1 = db2.t2.col1 and t1.col2 = db2.t2.col0;
, SQL parse error: Column Not found: .t2.str1](1)
com._4paradigm.hybridse.sdk.SqlEngineTest ‑ sqlMultipleDBErrorTest[null, SELECT db2.t2.str1 as t2_str1
 FROM t1
 last join db2.t2 order by db2.t2.col1
 on t1.col1 = db2.t2.col1 and t1.col2 = db2.t2.col0;
, SQL parse error: Fail to transform data provider op: table t1 not exists in database []](5)
com._4paradigm.hybridse.sdk.SqlEngineTest ‑ sqlWindowLastJoin[ SELECT sum(t1.col1) over w1 as sum_t1_col1, t2.str1 as t2_str1
 FROM t1
 last join t2 order by t2.col1
 on t1.col1 = t2.col1 and t1.col2 = t2.col0
 WINDOW w1 AS (
  PARTITION BY t1.col2 ORDER BY t1.col1
  ROWS_RANGE BETWEEN 3 PRECEDING AND CURRENT ROW
 ) limit 10;](1)

:recycle: This comment has been updated with latest results.

github-actions[bot] avatar May 21 '24 09:05 github-actions[bot]

HybridSE Mac Test Report

0 tests   0 :white_check_mark:  0s :stopwatch: 0 suites  0 :zzz: 0 files    0 :x:

Results for commit 12957081.

:recycle: This comment has been updated with latest results.

github-actions[bot] avatar May 21 '24 09:05 github-actions[bot]

HybridSE Linux Test Report

20 375 tests   20 373 :white_check_mark:  6m 33s :stopwatch:    262 suites       2 :zzz:     69 files         0 :x:

Results for commit 12957081.

:recycle: This comment has been updated with latest results.

github-actions[bot] avatar May 21 '24 09:05 github-actions[bot]

Linux Test Report

    59 files  ±0     252 suites  ±0   1h 41m 21s :stopwatch: - 5m 39s 13 520 tests ±0  13 513 :white_check_mark: +1  7 :zzz: ±0  0 :x:  - 1  19 197 runs  ±0  19 190 :white_check_mark: +1  7 :zzz: ±0  0 :x:  - 1 

Results for commit 12957081. ± Comparison against base commit 21184d56.

:recycle: This comment has been updated with latest results.

github-actions[bot] avatar May 21 '24 09:05 github-actions[bot]