-
Notifications
You must be signed in to change notification settings - Fork 972
[FEATURE] Support Apache Phoenix engine base on jdbc engine #4000
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
Conversation
Codecov Report
@@ Coverage Diff @@
## master #4000 +/- ##
============================================
- Coverage 52.11% 52.10% -0.01%
Complexity 13 13
============================================
Files 541 541
Lines 29468 29485 +17
Branches 3938 3939 +1
============================================
+ Hits 15357 15363 +6
- Misses 12709 12710 +1
- Partials 1402 1412 +10
📣 We’re building smart automated test selection to slash your CI/CD build times. Learn more |
...kyuubi-jdbc-engine/src/main/scala/org/apache/kyuubi/engine/jdbc/dialect/PhoenixDialect.scala
Outdated
Show resolved
Hide resolved
...kyuubi-jdbc-engine/src/main/scala/org/apache/kyuubi/engine/jdbc/dialect/PhoenixDialect.scala
Outdated
Show resolved
Hide resolved
|
Could you add integration tests for Phoenix? |
thanks your advice,i added it in new commit |
| override def createStatement(connection: Connection, fetchSize: Int): Statement = { | ||
| val statement = | ||
| connection.createStatement(ResultSet.TYPE_FORWARD_ONLY, ResultSet.CONCUR_READ_ONLY) | ||
| statement.setFetchSize(Integer.MIN_VALUE) |
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 ignore fetchSize and set it to Integer.MIN_VALUE?
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 ignore fetchSize and set it to Integer.MIN_VALUE?
fix it
| } | ||
|
|
||
| override def getTableTypesOperation(session: Session): Operation = { | ||
| throw KyuubiSQLException.featureNotSupported() |
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.
I guess this can be implemented since line 62 returns Set("s", "u")
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.
I guess this can be implemented since line 62 returns
Set("s", "u")
thanks your advice, Whether it can be improved in the future, and how to implement it has not been decided
pom.xml
Outdated
| <ldapsdk.version>6.0.5</ldapsdk.version> | ||
| <log4j.version>2.19.0</log4j.version> | ||
| <mysql.jdbc.version>8.0.27</mysql.jdbc.version> | ||
| <phoenix.version>6.0.0</phoenix.version> |
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.
please sort alphabetically
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.
please sort alphabetically
have fix it
pan3793
left a comment
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.
LGTM on my side, cc @zhaomin1423
|
LGTM. maybe we need improve configs later, now can't use multiple jdbc source meanwhile. |
There are many requirements for interactive query of multiple data sources. I hope that when the leaders have plans, I have the opportunity to participate |
|
Thanks, merged to master |
### _Why are the changes needed?_ As #4000 adds the Apache Phoenix support for the JDBC engine without upgrading the configuration's description. This PR aims to update the outdated configuration description to reflect the capabilities of the Kyuubi JDBC engine. ### _How was this patch tested?_ - [ ] Add some test cases that check the changes thoroughly including negative and positive cases if possible - [ ] Add screenshots for manual tests if appropriate - [ ] [Run test](https://kyuubi.readthedocs.io/en/master/contributing/code/testing.html#running-tests) locally before make a pull request ### _Was this patch authored or co-authored using generative AI tooling?_ No. Closes #5294 from ymZhao1001/doc0915. Closes #5294 8d61c36 [yangming] update jdbc doc d082b4d [yangming] run dev/reformat and dev/gen/gen_all_config_docs.sh 5b814d8 [zhaoyangming] add jdbc Phoenix dialect Lead-authored-by: yangming <[email protected]> Co-authored-by: zhaoyangming <[email protected]> Signed-off-by: Cheng Pan <[email protected]>
### _Why are the changes needed?_ As #4000 adds the Apache Phoenix support for the JDBC engine without upgrading the configuration's description. This PR aims to update the outdated configuration description to reflect the capabilities of the Kyuubi JDBC engine. ### _How was this patch tested?_ - [ ] Add some test cases that check the changes thoroughly including negative and positive cases if possible - [ ] Add screenshots for manual tests if appropriate - [ ] [Run test](https://kyuubi.readthedocs.io/en/master/contributing/code/testing.html#running-tests) locally before make a pull request ### _Was this patch authored or co-authored using generative AI tooling?_ No. Closes #5294 from ymZhao1001/doc0915. Closes #5294 8d61c36 [yangming] update jdbc doc d082b4d [yangming] run dev/reformat and dev/gen/gen_all_config_docs.sh 5b814d8 [zhaoyangming] add jdbc Phoenix dialect Lead-authored-by: yangming <[email protected]> Co-authored-by: zhaoyangming <[email protected]> Signed-off-by: Cheng Pan <[email protected]> (cherry picked from commit 289549f) Signed-off-by: Cheng Pan <[email protected]>
Why are the changes needed?
refer to #3999
How was this patch tested?
Add some test cases that check the changes thoroughly including negative and positive cases if possible
Add screenshots for manual tests if appropriate
Run test locally before make a pull request
config Apache Phoenix jdbc engine in kyuubi-defaults.conf

- use beeline connected
- query phoenix in kyuubi