Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add Support For TIME Type in "*_OF_YEAR" Functions #1223

Merged

Conversation

GabeFernandez310
Copy link
Contributor

Description

Adds support for the TIME type in the functions day_of_year, week_of_year, and month_of_year. Uses the current local date to calculate the output of the function.

Examples (Assuming the current date is 2022-12-28):

opensearchsql> SELECT day_of_year(time('12:23:34'));
fetched rows / total rows = 1/1
+---------------------------------+
| day_of_year(time('12:23:34'))   |
|---------------------------------|
| 362                             |
+---------------------------------+

opensearchsql> SELECT week_of_year(time('12:23:34'));
fetched rows / total rows = 1/1
+----------------------------------+
| week_of_year(time('12:23:34'))   |
|----------------------------------|
| 52                               |
+----------------------------------+

opensearchsql> SELECT month_of_year(time('12:23:34'));
fetched rows / total rows = 1/1
+-----------------------------------+
| month_of_year(time('12:23:34'))   |
|-----------------------------------|
| 12                                |
+-----------------------------------+
 

Issues Resolved

#722

Check List

  • New functionality includes testing.
    • All tests pass, including unit test, integration test and doctest
  • New functionality has been documented.
    • New functionality has javadoc added
    • New functionality has user manual doc added
  • Commits are signed per the DCO using --signoff

By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.
For more information on following Developer Certificate of Origin and signing off your commits, please check here.

Added Support And Tests For Time Type in day_of_year, week_of_year, month_of_year Functions
Signed-off-by: GabeFernandez310 <gabrielf@bitquilltech.com>
@GabeFernandez310 GabeFernandez310 requested a review from a team as a code owner January 5, 2023 17:38
@codecov-commenter
Copy link

codecov-commenter commented Jan 5, 2023

Codecov Report

Merging #1223 (fc651ff) into main (dc5578a) will decrease coverage by 2.44%.
The diff coverage is 100.00%.

@@             Coverage Diff              @@
##               main    #1223      +/-   ##
============================================
- Coverage     98.34%   95.90%   -2.45%     
- Complexity     3594     3601       +7     
============================================
  Files           344      354      +10     
  Lines          8909     9584     +675     
  Branches        562      681     +119     
============================================
+ Hits           8762     9192     +430     
- Misses          142      334     +192     
- Partials          5       58      +53     
Flag Coverage Δ
query-workbench 62.76% <ø> (?)
sql-engine 98.35% <100.00%> (+<0.01%) ⬆️

Flags with carried forward coverage won't be shown. Click here to find out more.

Impacted Files Coverage Δ
...pensearch/sql/expression/function/FunctionDSL.java 100.00% <ø> (ø)
...c/main/java/org/opensearch/sql/expression/DSL.java 100.00% <100.00%> (ø)
...arch/sql/expression/datetime/DateTimeFunction.java 100.00% <100.00%> (ø)
workbench/public/components/Main/main.tsx 53.00% <0.00%> (ø)
workbench/public/components/PPLPage/PPLPage.tsx 56.52% <0.00%> (ø)
...ch/public/components/QueryResults/QueryResults.tsx 61.60% <0.00%> (ø)
workbench/public/components/Header/Header.tsx 100.00% <0.00%> (ø)
workbench/public/utils/PanelWrapper.tsx 100.00% <0.00%> (ø)
workbench/public/components/app.tsx 0.00% <0.00%> (ø)
workbench/public/components/SQLPage/SQLPage.tsx 100.00% <0.00%> (ø)
... and 3 more

Help us with your feedback. Take ten seconds to tell us how you rate us. Have a feature suggestion? Share it here.

@dai-chen dai-chen added the enhancement New feature or request label Jan 6, 2023
@dai-chen dai-chen merged commit 6e72f18 into opensearch-project:main Jan 9, 2023
opensearch-trigger-bot bot pushed a commit that referenced this pull request Jan 9, 2023
Added Support And Tests For Time Type in day_of_year, week_of_year, month_of_year Functions
Signed-off-by: GabeFernandez310 <gabrielf@bitquilltech.com>
(cherry picked from commit 6e72f18)
penghuo pushed a commit that referenced this pull request Jan 10, 2023
…1258)

Added Support And Tests For Time Type in day_of_year, week_of_year, month_of_year Functions
Signed-off-by: GabeFernandez310 <gabrielf@bitquilltech.com>
(cherry picked from commit 6e72f18)

Co-authored-by: GabeFernandez310 <Gabriel.Fernandez@improving.com>
penghuo added a commit that referenced this pull request Jan 10, 2023
* Add BWC tests for running against distribution bundle.  (#1209)

Signed-off-by: Zelin Hao <zelinhao@amazon.com>

* Add Alternate Syntax For Match_Query And Other Functions (#1166)

Added Tests And Implementation For Match_Query, Match_Phrase, and Multi_Match Functions

Signed-off-by: GabeFernandez310 <gabrielf@bitquilltech.com>

Signed-off-by: GabeFernandez310 <gabrielf@bitquilltech.com>
Signed-off-by: GabeFernandez310 <Gabriel.Fernandez@improving.com>

* Merge pull request #1241 from Bit-Quill/Failing-CI-Hot-Fix

Hot Fix For CI Build

(cherry picked from commit aae57a0)
Signed-off-by: GabeFernandez310 <Gabriel.Fernandez@improving.com>

* Fixed error with single timestamp query (#1244) (#1246)

Signed-off-by: vamsi-amazon <reddyvam@amazon.com>

Signed-off-by: vamsi-amazon <reddyvam@amazon.com>
(cherry picked from commit ee949cc)

Co-authored-by: vamsi-amazon <reddyvam@amazon.com>

* Add Second_Of_Minute Function As An Alias Of The Second Function (#1231) (#1237)

Added Testing And Implementation For Second_Of_Minute Function

Signed-off-by: GabeFernandez310 <Gabriel.Fernandez@improving.com>

Signed-off-by: GabeFernandez310 <Gabriel.Fernandez@improving.com>
(cherry picked from commit dce7d0e)

Co-authored-by: GabeFernandez310 <gabrielf@bitquilltech.com>

* Add functions `ADDTIME` and `SUBTIME`. (#132) (#1194) (#1252)

* Add functions `ADDTIME` and `SUBTIME`. (#132)

Signed-off-by: Yury-Fridlyand <yury.fridlyand@improving.com>
(cherry picked from commit 7630f87)

Co-authored-by: Yury-Fridlyand <yury.fridlyand@improving.com>

* Add Day_Of_Week Function As An Alias Of DayOfWeek (#190) (#1228) (#1239)

Added Implementation And Testing For Day_Of_Week Function

Signed-off-by: GabeFernandez310 <gabrielf@bitquilltech.com>

Signed-off-by: GabeFernandez310 <gabrielf@bitquilltech.com>
(cherry picked from commit bac9c37)

Co-authored-by: GabeFernandez310 <gabrielf@bitquilltech.com>

* [Backport 2.x] Add Minute_Of_Hour Function As An Alias Of Minute Function (#1253)

* Add Minute_Of_Hour Function As An Alias Of Minute Function (#196) (#1230)

Added Testing And Implementation For Minute_Of_Hour Function

Signed-off-by: GabeFernandez310 <Gabriel.Fernandez@improving.com>

Signed-off-by: GabeFernandez310 <Gabriel.Fernandez@improving.com>
(cherry picked from commit 61e2374)

* Added Missing Imports

Signed-off-by: GabeFernandez310 <Gabriel.Fernandez@improving.com>

Signed-off-by: GabeFernandez310 <Gabriel.Fernandez@improving.com>

* Add support for long value return for CEIL, CEILING and FLOOR math functions (#1205) (#1255)

* Added long fix for CEIL, CEILING and FLOOR functions using LONG instead of INT for RETURN.

Signed-off-by: MitchellGale-BitQuill <mitchellg@bitquilltech.com>
Signed-off-by: Yury-Fridlyand <yury.fridlyand@improving.com>
Co-authored-by: Yury-Fridlyand <yury.fridlyand@improving.com>

* Support JOIN query on object field with unexpanded name (#1229) (#1250)

* Resolve sub object field in search hit source

Signed-off-by: Chen Dai <daichen@amazon.com>

* Rename to unexpanded object

Signed-off-by: Chen Dai <daichen@amazon.com>

* Update IT with where condition

Signed-off-by: Chen Dai <daichen@amazon.com>

* Fix test index mapping

Signed-off-by: Chen Dai <daichen@amazon.com>

Signed-off-by: Chen Dai <daichen@amazon.com>
(cherry picked from commit 151f4cc)

Co-authored-by: Chen Dai <daichen@amazon.com>

* Remove unnecessary scripts after repo split (#1256)

Signed-off-by: Joshua Li <joshuali925@gmail.com>

* Add Support For `TIME` Type in "*_OF_YEAR" Functions (#199) (#1223) (#1258)

Added Support And Tests For Time Type in day_of_year, week_of_year, month_of_year Functions
Signed-off-by: GabeFernandez310 <gabrielf@bitquilltech.com>
(cherry picked from commit 6e72f18)

Co-authored-by: GabeFernandez310 <Gabriel.Fernandez@improving.com>

Signed-off-by: Zelin Hao <zelinhao@amazon.com>
Signed-off-by: GabeFernandez310 <gabrielf@bitquilltech.com>
Signed-off-by: GabeFernandez310 <Gabriel.Fernandez@improving.com>
Signed-off-by: MitchellGale-BitQuill <mitchellg@bitquilltech.com>
Signed-off-by: Yury-Fridlyand <yury.fridlyand@improving.com>
Signed-off-by: Joshua Li <joshuali925@gmail.com>
Co-authored-by: Zelin Hao <87548827+zelinh@users.noreply.github.com>
Co-authored-by: GabeFernandez310 <gabrielf@bitquilltech.com>
Co-authored-by: YANGDB <yang.db.dev@gmail.com>
Co-authored-by: opensearch-trigger-bot[bot] <98922864+opensearch-trigger-bot[bot]@users.noreply.github.com>
Co-authored-by: vamsi-amazon <reddyvam@amazon.com>
Co-authored-by: Yury-Fridlyand <yury.fridlyand@improving.com>
Co-authored-by: GabeFernandez310 <Gabriel.Fernandez@improving.com>
Co-authored-by: Chen Dai <daichen@amazon.com>
Co-authored-by: Joshua Li <joshuali925@gmail.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
backport 2.x enhancement New feature or request
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

5 participants