|
| 1 | +Compatible with OpenSearch and OpenSearch Dashboards Version 3.0.0.0 |
| 2 | + |
| 3 | +### Breaking Changes |
| 4 | +* [v3.0.0] Bump gradle 8.10.2 / JDK23 on SQL plugin ([#3319](https://github.com/opensearch-project/sql/pull/3319)) |
| 5 | +* [v3.0.0] Remove SparkSQL support ([#3306](https://github.com/opensearch-project/sql/pull/3306)) |
| 6 | +* [v3.0.0] Remove opendistro settings and endpoints ([#3326](https://github.com/opensearch-project/sql/pull/3326)) |
| 7 | +* [v3.0.0] Deprecate SQL Delete statement ([#3337](https://github.com/opensearch-project/sql/pull/3337)) |
| 8 | +* [v3.0.0] Deprecate scroll API usage ([#3346](https://github.com/opensearch-project/sql/pull/3346)) |
| 9 | +* [v3.0.0] Deprecate OpenSearch DSL format ([#3367](https://github.com/opensearch-project/sql/pull/3367)) |
| 10 | +* [v3.0.0] Unified OpenSearch PPL Data Type ([#3345](https://github.com/opensearch-project/sql/pull/3345)) |
| 11 | +* [v3.0.0] Add datetime functions ([#3473](https://github.com/opensearch-project/sql/pull/3473)) |
| 12 | +* [v3.0.0] Support CAST function with Calcite ([#3439](https://github.com/opensearch-project/sql/pull/3439)) |
| 13 | + |
| 14 | +### Features |
| 15 | +* PPL: Add `json` function and `cast(x as json)` function ([#3243](https://github.com/opensearch-project/sql/pull/3243)) |
| 16 | +* Framework of Calcite Engine: Parser, Catalog Binding and Plan Converter ([#3249](https://github.com/opensearch-project/sql/pull/3249)) |
| 17 | +* Enable Calcite by default and refactor all related ITs ([#3468](https://github.com/opensearch-project/sql/pull/3468)) |
| 18 | +* Make PPL execute successfully on Calcite engine ([#3258](https://github.com/opensearch-project/sql/pull/3258)) |
| 19 | +* Implement ppl join command with Calcite ([#3364](https://github.com/opensearch-project/sql/pull/3364)) |
| 20 | +* Implement ppl `IN` subquery command with Calcite ([#3371](https://github.com/opensearch-project/sql/pull/3371)) |
| 21 | +* Implement ppl relation subquery command with Calcite ([#3378](https://github.com/opensearch-project/sql/pull/3378)) |
| 22 | +* Implement ppl `exists` subquery command with Calcite ([#3388](https://github.com/opensearch-project/sql/pull/3388)) |
| 23 | +* Implement ppl scalar subquery command with Calcite ([#3392](https://github.com/opensearch-project/sql/pull/3392)) |
| 24 | +* Implement lookup command ([#3419](https://github.com/opensearch-project/sql/pull/3419)) |
| 25 | +* Support In expression in Calcite Engine ([#3429](https://github.com/opensearch-project/sql/pull/3429)) |
| 26 | +* Support ppl BETWEEN operator within Calcite ([#3433](https://github.com/opensearch-project/sql/pull/3433)) |
| 27 | +* Implement ppl `dedup` command with Calcite ([#3416](https://github.com/opensearch-project/sql/pull/3416)) |
| 28 | +* Support `parse` command with Calcite ([#3474](https://github.com/opensearch-project/sql/pull/3474)) |
| 29 | +* Support `TYPEOF` function with Calcite ([#3446](https://github.com/opensearch-project/sql/pull/3446)) |
| 30 | +* New output for explain endpoint with Calcite engine ([#3521](https://github.com/opensearch-project/sql/pull/3521)) |
| 31 | +* Make basic aggregation working ([#3318](https://github.com/opensearch-project/sql/pull/3318), [#3355](https://github.com/opensearch-project/sql/pull/3355)) |
| 32 | +* Push down project and filter operator into index scan ([#3327](https://github.com/opensearch-project/sql/pull/3327)) |
| 33 | +* Enable push down optimization by default ([#3366](https://github.com/opensearch-project/sql/pull/3366)) |
| 34 | +* Calcite enable pushdown aggregation ([#3389](https://github.com/opensearch-project/sql/pull/3389)) |
| 35 | +* Support multiple table and index pattern ([#3409](https://github.com/opensearch-project/sql/pull/3409)) |
| 36 | +* Support group by span over time based column with Span UDF ([#3421](https://github.com/opensearch-project/sql/pull/3421)) |
| 37 | +* Support nested field ([#3476](https://github.com/opensearch-project/sql/pull/3476)) |
| 38 | +* Execute Calcite PPL query in thread pool ([#3508](https://github.com/opensearch-project/sql/pull/3508)) |
| 39 | +* Support UDT for date, time, timestamp ([#3483](https://github.com/opensearch-project/sql/pull/3483)) |
| 40 | +* Support UDT for IP ([#3504](https://github.com/opensearch-project/sql/pull/3504)) |
| 41 | +* Support GEO_POINT type ([#3511](https://github.com/opensearch-project/sql/pull/3511)) |
| 42 | +* Add UDF interface ([#3374](https://github.com/opensearch-project/sql/pull/3374)) |
| 43 | +* Add missing text function ([#3471](https://github.com/opensearch-project/sql/pull/3471)) |
| 44 | +* Add string builtin functions ([#3393](https://github.com/opensearch-project/sql/pull/3393)) |
| 45 | +* Add math UDF ([#3390](https://github.com/opensearch-project/sql/pull/3390)) |
| 46 | +* Add condition UDFs ([#3412](https://github.com/opensearch-project/sql/pull/3412)) |
| 47 | +* Register OpenSearchTypeSystem to OpenSearchTypeFactory ([#3349](https://github.com/opensearch-project/sql/pull/3349)) |
| 48 | +* Enable update calcite setting through _plugins/_query/settings API ([#3531](https://github.com/opensearch-project/sql/pull/3531)) |
| 49 | +* Support alias type field ([#3538](https://github.com/opensearch-project/sql/pull/3538)) |
| 50 | +* Support UDT for BINARY ([#3549](https://github.com/opensearch-project/sql/pull/3549)) |
| 51 | +* Support metadata field ([#3445](https://github.com/opensearch-project/sql/pull/3445)) |
| 52 | +* Support CASE function ([#3558](https://github.com/opensearch-project/sql/pull/3558)) |
| 53 | + |
| 54 | +### Enhancements |
| 55 | +* Add other functions to SQL query validator ([#3304](https://github.com/opensearch-project/sql/pull/3304)) |
| 56 | +* Improved patterns command with new algorithm ([#3263](https://github.com/opensearch-project/sql/pull/3263)) |
| 57 | +* Clean up syntax error reporting ([#3278](https://github.com/opensearch-project/sql/pull/3278)) |
| 58 | +* Support line comment and block comment in PPL ([#2806](https://github.com/opensearch-project/sql/pull/2806)) |
| 59 | +* Function framework refactoring ([#3522](https://github.com/opensearch-project/sql/pull/3522)) |
| 60 | +* Add SQLQuery Utils support for Vaccum queries ([#3269](https://github.com/opensearch-project/sql/pull/3269)) |
| 61 | + |
| 62 | +### Bug Fixes |
| 63 | +* Fix execution errors caused by plan gap ([#3350](https://github.com/opensearch-project/sql/pull/3350)) |
| 64 | +* Support push down text field correctly ([#3376](https://github.com/opensearch-project/sql/pull/3376)) |
| 65 | +* Fix the join condition resolving bug introduced by IN subquery implementation ([#3377](https://github.com/opensearch-project/sql/pull/3377)) |
| 66 | +* Fix flaky tests ([#3456](https://github.com/opensearch-project/sql/pull/3456)) |
| 67 | +* Fix antlr4 parser issues ([#3492](https://github.com/opensearch-project/sql/pull/3492)) |
| 68 | +* Fix CSV handling of embedded crlf ([#3515](https://github.com/opensearch-project/sql/pull/3515)) |
| 69 | +* Fix return types of MOD and DIVIDE UDFs ([#3513](https://github.com/opensearch-project/sql/pull/3513)) |
| 70 | +* Fix varchar bug ([#3518](https://github.com/opensearch-project/sql/pull/3518)) |
| 71 | +* Fix text function IT for locate and strcmp ([#3482](https://github.com/opensearch-project/sql/pull/3482)) |
| 72 | +* Fix IT and CI, revert alias change ([#3423](https://github.com/opensearch-project/sql/pull/3423)) |
| 73 | +* Fix CalcitePPLJoinIT ([#3369](https://github.com/opensearch-project/sql/pull/3369)) |
| 74 | +* Keep aggregation in Calcite consistent with current PPL behavior ([#3405](https://github.com/opensearch-project/sql/pull/3405)) |
| 75 | +* Revert result ordering of `stats-by` ([#3427](https://github.com/opensearch-project/sql/pull/3427)) |
| 76 | +* Correct the precedence for logical operators ([#3435](https://github.com/opensearch-project/sql/pull/3435)) |
| 77 | +* Use correct timezone name ([#3517](https://github.com/opensearch-project/sql/pull/3517)) |
| 78 | +* Fix GET_FORMAT UDF ([#3543](https://github.com/opensearch-project/sql/pull/3543)) |
| 79 | +* Fix timestamp bug ([#3542](https://github.com/opensearch-project/sql/pull/3542)) |
| 80 | +* Fix issue 2489 ([#3442](https://github.com/opensearch-project/sql/pull/3442)) |
| 81 | +* New added commands should throw exception when calcite disabled ([#3571](https://github.com/opensearch-project/sql/pull/3571)) |
| 82 | +* Support parsing documents with flattened value ([#3577](https://github.com/opensearch-project/sql/pull/3577)) |
| 83 | + |
| 84 | +### Infrastructure |
| 85 | +* Build integration test framework ([#3342](https://github.com/opensearch-project/sql/pull/3342)) |
| 86 | +* Set bouncycastle version inline ([#3469](https://github.com/opensearch-project/sql/pull/3469)) |
| 87 | +* Use entire shadow jar to fix IT ([#3447](https://github.com/opensearch-project/sql/pull/3447)) |
| 88 | +* Separate with/without pushdown ITs ([#3413](https://github.com/opensearch-project/sql/pull/3413)) |
| 89 | +* Only enable fallback for tests that need to fall back ([#3544](https://github.com/opensearch-project/sql/pull/3544)) |
| 90 | +* Remove beta1 qualifier ([#3589](https://github.com/opensearch-project/sql/pull/3589)) |
| 91 | + |
| 92 | +### Documentation |
| 93 | +* Documentation for PPL new engine (V3) and limitations of 3.0.0 Beta ([#3488](https://github.com/opensearch-project/sql/pull/3488)) |
| 94 | + |
| 95 | +### Maintenance |
| 96 | +* Build: Centralise dependencies version - Pt1 ([#3294](https://github.com/opensearch-project/sql/pull/3294)) |
| 97 | +* Remove dependency from async-query-core to datasources ([#2891](https://github.com/opensearch-project/sql/pull/2891)) |
| 98 | +* CVE-2024-57699 High: Fix json-smart vulnerability ([#3484](https://github.com/opensearch-project/sql/pull/3484)) |
| 99 | +* Adding new maintainer @qianheng-aws ([#3509](https://github.com/opensearch-project/sql/pull/3509)) |
| 100 | +* Bump SQL main to version 3.0.0.0-beta1 ([#3489](https://github.com/opensearch-project/sql/pull/3489)) |
| 101 | +* Merge feature/calcite-engine to main ([#3448](https://github.com/opensearch-project/sql/pull/3448)) |
| 102 | +* Merge main for OpenSearch 3.0 release ([#3434](https://github.com/opensearch-project/sql/pull/3434)) |
| 103 | +* Fix build due to phasing off SecurityManager usage in favor of Java Agent ([#3539](https://github.com/opensearch-project/sql/pull/3539)) |
| 104 | +* Using java-agent gradle plugin to phase off Security Manager in favor of Java-agent ([#3551](https://github.com/opensearch-project/sql/pull/3551)) |
0 commit comments