-
Notifications
You must be signed in to change notification settings - Fork 234
Add Athena Sql dialect, PCTs & SDTs #4120
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
base: master
Are you sure you want to change the base?
Conversation
* Add Athena PCT, Sql dialect & SDT support (finos#4054) * Add Athena PCT support (finos#4022) * Athena PCT setup * Update copyright * Add athena jdbc driver and pct support * Minor fixes * Update athena driver jar path * Remove AthenaUserNamePasswordAuthenticationStrategy * Add Vault in AthenaTestConnectionIntegration * Update athenaExtension.pure * Update athena jdbc jar source * Change athena driver scope to provided * Add Athena PCT setup - change S3 bucket name (finos#4025) * Athena PCT setup * Update copyright * Add athena jdbc driver and pct support * Minor fixes * Update athena driver jar path * Remove AthenaUserNamePasswordAuthenticationStrategy * Add Vault in AthenaTestConnectionIntegration * Update athenaExtension.pure * Update athena jdbc jar source * Change athena driver scope to provided * Update S3 bucket name * Update build.yml * Athena SDT changes * Athena jdbc jar direct installation to .m2 * Add sql dialect functions for maths, aggregation, strings * Add more sql dialect functions * Switch to sql dialect flow for Athena * Change S3 bucket name * Athena Sql dialect changes * Athena Sql dialect changes revert commented part in max.pure * Athena Sql dialect changes remove duplicate function * Add Athena Driver setup to github workflow * Switch to Sql dialect flow for athena * Update poms --------- Co-authored-by: Sai Sriharsha Annepu <[email protected]> Co-authored-by: vijaylather <[email protected]> * Update build.yml * Update build.yml * Update workgroup default to primary (finos#4056) * Add athena jdbc dependency to PCT (finos#4059) * Change aws region to us-east-1 (finos#4060) * Fix Athena SDTs + Change AWS region (finos#4063) * Fix athena SDTs * Change aws region to us-east-2 * Change athena schema to default (finos#4066) * Fix Test_Relational_Athena_UnclassifiedFunctions_PCT & Test_Relational_Athena_VariantFunctions_PCT * Fix PCT table column starting with '_' * Athena Essential Functions PCT changes * Fix Athena PCTs * Change S3 bucket name * Fix Athena sql dialect flow * Fix PCT error messages * Athena Essential Functions PCT changes and SDT change * Fix Athena Grammar & Relational PCTs * Fix Athena Relational PCTs * pom version updates for athena modules * Remove forkCount in athena PCT --------- Co-authored-by: Sai Sriharsha Annepu <[email protected]> Co-authored-by: vijaylather <[email protected]>
| <ignoredUnusedDeclaredDependency>org.slf4j:slf4j-api</ignoredUnusedDeclaredDependency> | ||
| </ignoredUnusedDeclaredDependencies> | ||
| <ignoredUsedUndeclaredDependencies> | ||
| <ignoredUsedUndeclaredDependency>com.amazon.athena:AthenaJDBC42</ignoredUsedUndeclaredDependency> |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Why do we need this?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
removed
| <dependency> | ||
| <groupId>ch.qos.logback</groupId> | ||
| <artifactId>logback-classic</artifactId> | ||
| <scope>runtime</scope> |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Why this change?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
removed
| let expr = { | ||
| | #TDS | ||
| colOneNum, Col_two_letter, _col_3Mix | ||
| colOneNum, Col_two_letter, col_3Mix |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
why should column name be updated?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Athena does not support column names starting with '_'. So, changed the column name
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
removed this change
| </execution> | ||
| </executions> | ||
| </plugin> | ||
| <plugin> |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Same comments as engine server pom file
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
removed
...org/finos/legend/engine/language/pure/grammar/test/TestAthenaConnectionGrammarRoundtrip.java
Outdated
Show resolved
Hide resolved
...e/src/main/resources/core_relational_athena/relational/sqlQueryToString/athenaExtension.pure
Outdated
Show resolved
Hide resolved
| $types->at($x)->match([ | ||
| d:meta::relational::metamodel::datatype::Date[1] | 'Date ' + $literalStr, | ||
| t:meta::relational::metamodel::datatype::Timestamp[1] | 'Timestamp ' + $literalStr, | ||
| t:meta::relational::metamodel::datatype::Timestamp[1] | if ($literalStr->matches('\'\\d{4}-\\d{2}-\\d{2}T\\d{2}:\\d{2}:\\d{2}(?:\\.\\d+)?\''), |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
can we use standard sql converter
| ), | ||
| sqlFunctionTest( | ||
| simpleFunctionCall('dateadd', [literal(%2014-12-04T15:22:23), literal(123), literal('MILLISECOND')]), | ||
| simpleFunctionCall('dateadd', [literal(%2014-12-04T15:22:23.000), literal(123), literal('MILLISECOND')]), |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Why this change?
What type of PR is this?
What does this PR do / why is it needed ?
Add Athena Sql dialect, PCTs & SDTs