|
| 1 | +Compatible with OpenSearch and OpenSearch Dashboards Version 3.0.0.0-beta1 |
| 2 | + |
| 3 | +### Breaking Changes |
| 4 | +* Unified OpenSearch PPL Data Type ([#3345](https://github.com/opensearch-project/sql/pull/3345)) |
| 5 | +* Add datetime functions ([#3473](https://github.com/opensearch-project/sql/pull/3473)) |
| 6 | +* Support CAST function with Calcite ([#3439](https://github.com/opensearch-project/sql/pull/3439)) |
| 7 | + |
| 8 | +### Features |
| 9 | +* Framework of Calcite Engine: Parser, Catalog Binding and Plan Converter ([#3249](https://github.com/opensearch-project/sql/pull/3249)) |
| 10 | +* Enable Calcite by default and refactor all related ITs ([#3468](https://github.com/opensearch-project/sql/pull/3468)) |
| 11 | +* Make PPL execute successfully on Calcite engine ([#3258](https://github.com/opensearch-project/sql/pull/3258)) |
| 12 | +* Implement ppl join command with Calcite ([#3364](https://github.com/opensearch-project/sql/pull/3364)) |
| 13 | +* Implement ppl `IN` subquery command with Calcite ([#3371](https://github.com/opensearch-project/sql/pull/3371)) |
| 14 | +* Implement ppl relation subquery command with Calcite ([#3378](https://github.com/opensearch-project/sql/pull/3378)) |
| 15 | +* Implement ppl `exists` subquery command with Calcite ([#3388](https://github.com/opensearch-project/sql/pull/3388)) |
| 16 | +* Implement ppl scalar subquery command with Calcite ([#3392](https://github.com/opensearch-project/sql/pull/3392)) |
| 17 | +* Implement lookup command ([#3419](https://github.com/opensearch-project/sql/pull/3419)) |
| 18 | +* Support In expression in Calcite Engine ([#3429](https://github.com/opensearch-project/sql/pull/3429)) |
| 19 | +* Support ppl BETWEEN operator within Calcite ([#3433](https://github.com/opensearch-project/sql/pull/3433)) |
| 20 | +* Implement ppl `dedup` command with Calcite ([#3416](https://github.com/opensearch-project/sql/pull/3416)) |
| 21 | +* Support `parse` command with Calcite ([#3474](https://github.com/opensearch-project/sql/pull/3474)) |
| 22 | +* Support `TYPEOF` function with Calcite ([#3446](https://github.com/opensearch-project/sql/pull/3446)) |
| 23 | +* New output for explain endpoint with Calcite engine ([#3521](https://github.com/opensearch-project/sql/pull/3521)) |
| 24 | +* Make basic aggregation working ([#3318](https://github.com/opensearch-project/sql/pull/3318), [#3355](https://github.com/opensearch-project/sql/pull/3355)) |
| 25 | +* Push down project and filter operator into index scan ([#3327](https://github.com/opensearch-project/sql/pull/3327)) |
| 26 | +* Enable push down optimization by default ([#3366](https://github.com/opensearch-project/sql/pull/3366)) |
| 27 | +* Calcite enable pushdown aggregation ([#3389](https://github.com/opensearch-project/sql/pull/3389)) |
| 28 | +* Support multiple table and index pattern ([#3409](https://github.com/opensearch-project/sql/pull/3409)) |
| 29 | +* Support group by span over time based column with Span UDF ([#3421](https://github.com/opensearch-project/sql/pull/3421)) |
| 30 | +* Support nested field ([#3476](https://github.com/opensearch-project/sql/pull/3476)) |
| 31 | +* Execute Calcite PPL query in thread pool ([#3508](https://github.com/opensearch-project/sql/pull/3508)) |
| 32 | +* Support UDT for date, time, timestamp ([#3483](https://github.com/opensearch-project/sql/pull/3483)) |
| 33 | +* Support UDT for IP ([#3504](https://github.com/opensearch-project/sql/pull/3504)) |
| 34 | +* Support GEO_POINT type ([#3511](https://github.com/opensearch-project/sql/pull/3511)) |
| 35 | +* Add UDF interface ([#3374](https://github.com/opensearch-project/sql/pull/3374)) |
| 36 | +* Add missing text function ([#3471](https://github.com/opensearch-project/sql/pull/3471)) |
| 37 | +* Add string builtin functions ([#3393](https://github.com/opensearch-project/sql/pull/3393)) |
| 38 | +* Add math UDF ([#3390](https://github.com/opensearch-project/sql/pull/3390)) |
| 39 | +* Add condition UDFs ([#3412](https://github.com/opensearch-project/sql/pull/3412)) |
| 40 | +* Register OpenSearchTypeSystem to OpenSearchTypeFactory ([#3349](https://github.com/opensearch-project/sql/pull/3349)) |
| 41 | +* Enable update calcite setting through _plugins/_query/settings API ([#3531](https://github.com/opensearch-project/sql/pull/3531)) |
| 42 | + |
| 43 | +### Enhancements |
| 44 | +* Support line comment and block comment in PPL ([#2806](https://github.com/opensearch-project/sql/pull/2806)) |
| 45 | +* [Calcite Engine] Function framework refactoring ([#3522](https://github.com/opensearch-project/sql/pull/3522)) |
| 46 | + |
| 47 | +### Bug Fixes |
| 48 | +* Fix execution errors caused by plan gap ([#3350](https://github.com/opensearch-project/sql/pull/3350)) |
| 49 | +* Support push down text field correctly ([#3376](https://github.com/opensearch-project/sql/pull/3376)) |
| 50 | +* Fix the join condition resolving bug introduced by IN subquery implementation ([#3377](https://github.com/opensearch-project/sql/pull/3377)) |
| 51 | +* Fix flaky tests ([#3456](https://github.com/opensearch-project/sql/pull/3456)) |
| 52 | +* Fix antlr4 parser issues ([#3492](https://github.com/opensearch-project/sql/pull/3492)) |
| 53 | +* Fix CSV handling of embedded crlf ([#3515](https://github.com/opensearch-project/sql/pull/3515)) |
| 54 | +* Fix return types of MOD and DIVIDE UDFs ([#3513](https://github.com/opensearch-project/sql/pull/3513)) |
| 55 | +* Fix varchar bug ([#3518](https://github.com/opensearch-project/sql/pull/3518)) |
| 56 | +* Fix text function IT for locate and strcmp ([#3482](https://github.com/opensearch-project/sql/pull/3482)) |
| 57 | +* Fix IT and CI, revert alias change ([#3423](https://github.com/opensearch-project/sql/pull/3423)) |
| 58 | +* Fix CalcitePPLJoinIT ([#3369](https://github.com/opensearch-project/sql/pull/3369)) |
| 59 | +* Keep aggregation in Calcite consistent with current PPL behavior ([#3405](https://github.com/opensearch-project/sql/pull/3405)) |
| 60 | +* Revert result ordering of `stats-by` ([#3427](https://github.com/opensearch-project/sql/pull/3427)) |
| 61 | +* Correct the precedence for logical operators ([#3435](https://github.com/opensearch-project/sql/pull/3435)) |
| 62 | +* Use correct timezone name ([#3517](https://github.com/opensearch-project/sql/pull/3517)) |
| 63 | + |
| 64 | +### Infrastructure |
| 65 | +* Build integration test framework ([#3342](https://github.com/opensearch-project/sql/pull/3342)) |
| 66 | +* Set bouncycastle version inline ([#3469](https://github.com/opensearch-project/sql/pull/3469)) |
| 67 | +* Use entire shadow jar to fix IT ([#3447](https://github.com/opensearch-project/sql/pull/3447)) |
| 68 | +* Separate with/without pushdown ITs ([#3413](https://github.com/opensearch-project/sql/pull/3413)) |
| 69 | + |
| 70 | +### Documentation |
| 71 | +* Documentation for PPL new engine (V3) and limitations of 3.0.0 Beta ([#3488](https://github.com/opensearch-project/sql/pull/3488)) |
| 72 | + |
| 73 | +### Maintenance |
| 74 | +* CVE-2024-57699 High: Fix json-smart vulnerability ([#3484](https://github.com/opensearch-project/sql/pull/3484)) |
| 75 | +* Adding new maintainer @qianheng-aws ([#3509](https://github.com/opensearch-project/sql/pull/3509)) |
| 76 | +* Bump SQL main to version 3.0.0.0-beta1 ([#3489](https://github.com/opensearch-project/sql/pull/3489)) |
| 77 | +* Merge feature/calcite-engine to main ([#3448](https://github.com/opensearch-project/sql/pull/3448)) |
| 78 | +* Merge main for OpenSearch 3.0 release ([#3434](https://github.com/opensearch-project/sql/pull/3434)) |
0 commit comments