Uh oh!
There was an error while loading. Please reload this page.
ARROW-15112: [Integration][C++][Java] Implement Flight SQL integration tests - #11989
ARROW-15112: [Integration][C++][Java] Implement Flight SQL integration tests#11989rafael-telles wants to merge 8 commits into
Conversation
rafael-telles
commented
Dec 17, 2021
Hi @lidavidm ! We wrote the integration tests for Flight SQL as requested :) |
lidavidm
left a comment
There was a problem hiding this comment.
Thanks for the quick turnaround, this looks good overall. I left some comments.
There was a problem hiding this comment.
It was already there on arrow/flight/CMakeLists.txt before moving to the new directory
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
lidavidm
commented
Dec 20, 2021
We need to exclude Go and Rust from the new test scenario. Also, the PR needs to be formatted (see https://arrow.apache.org/docs/developers/cpp/development.html#code-style-linting-and-ci, note that we use ClangTools 12 now not version 8) |
rafael-telles
commented
Dec 20, 2021
Done @lidavidm |
rafael-telles
commented
Dec 20, 2021
Hey @lidavidm , I don't know if these CI failures has something to do with these changes... Please let me know if there is anything else to do here |
lidavidm
commented
Dec 20, 2021
There's some lint failures: I think the other one is unrelated, but could you rebase on master to see if it goes away? |
94f98fe to
5866b91Compare5866b91 to
78352e9Comparerafael-telles
commented
Dec 20, 2021
Ops @lidavidm ... Sorry, I don't know if I messed up when |
lidavidm
commented
Dec 20, 2021
Ah, right, we have a branch…How about I rebase the branch, and then we can rebase the PRs? |
lidavidm
commented
Dec 20, 2021
Hmm. I just rebased the branch…so do you mind trying to rebase again here? Sorry for the trouble. |
This refactor is a prerequisite to adding Flight SQL integration tests, as the current integration tests do not allow Flight SQL usage (because it would cause circular dependencies)
78352e9 to
97fe3ceComparerafael-telles
commented
Dec 20, 2021
No problem! Just rebased :) |
lidavidm
commented
Dec 20, 2021
Well, looks like the Docker registry isn't doing so well right now. I'll kick all the CI pipelines in a bit to try again. |
lidavidm
commented
Dec 21, 2021
Hmm, I wonder if the test failure in Dev is just because it's getting confused since we're on a branch. I think we can resolve that when we make the final PR from flight-sql into master, then. |
lidavidm
left a comment
There was a problem hiding this comment.
Thanks, just one more nit that caught my eye.
| sqlClient.execute("SELECT STATEMENT", options), sqlClient); | ||
| IntegrationAssertions.assertEquals(sqlClient.executeUpdate("UPDATE STATEMENT", options), | ||
| 10000L); |
There was a problem hiding this comment.
Just a nit, but can we move these numbers to constants so it's clear what they represent? (UPDATE_STATEMENT_EXPECTED_ROWS or something)
There was a problem hiding this comment.
(The same goes for the producer, C++, etc.)
rafael-telles
commented
Dec 21, 2021
Hey @lidavidm ! Are we good to merge this on Thank you |
lidavidm
commented
Dec 21, 2021
We should be. I just kicked off CI. |
lidavidm
commented
Dec 21, 2021
I think the failures are spurious. (I filed ARROW-15181 for the crash in the Flight tests.) |
lidavidm
left a comment
There was a problem hiding this comment.
Thanks. Sorry, I just noticed a couple more small things - we can merge into the branch next.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
rafael-telles
commented
Dec 21, 2021
Glad to see everything passing! Except to that "Dev/ Source Release and Merge Script", but it indeed seem to fail because we are in our own branch |
…n tests This adds Flight SQL scenarios for integration tests for C++ and Java implementations. The integrations tests assert that: - RPC objects built on clients are parsed correctly on servers - Arrow vectors built on servers have the expected Arrow schemas when received on clients Note: Had to separate integration tests in a new module within Java and C++ to avoid circular dependencies (Flight <-> Flight SQL) While working on this I found some inconsistencies between both implementation, this PR also fixes these problems. Closes#11989 from rafael-telles/flight-sql-integration-tests-2 Authored-by: Rafael Telles <rafael@telles.dev> Signed-off-by: David Li <li.davidm96@gmail.com>
lidavidm
commented
Dec 21, 2021
Mega-PR is up at #12013 |
Implement Flight SQL in C++ and Java, and add the protocol definitions. This is a combination of multiple pull requests, merged into one branch before merging into master. Closesapache#10906 (ARROW-12922). Closesapache#11507 (ARROW-14421). Closesapache#11989 (ARROW-15112). Closesapache#12021 (ARROW-15187). Closesapache#12035 (ARROW-15198). Closesapache#12013 from apache/flight-sql Lead-authored-by: Rafael Telles <rafael@telles.dev> Co-authored-by: Abner Eduardo Ferreira <abenaru@protonmail.ch> Co-authored-by: James Duong <duong.james@gmail.com> Co-authored-by: Jose Almeida <almeidajcr90@gmail.com> Co-authored-by: Juscelino Junior <juscelinojunior@id.uff.br> Co-authored-by: Kyle Porter <kporter@dremio.com> Co-authored-by: Ryan Nicholson <rnicholson@dremio.com> Co-authored-by: Vinicius Fraga <sxvinifp@gmail.com> Co-authored-by: tifflhl <tiffanylamhl@gmail.com> Signed-off-by: David Li <li.davidm96@gmail.com>
This adds Flight SQL scenarios for integration tests for C++ and Java implementations.
The integrations tests assert that:
Note: Had to separate integration tests in a new module within Java and C++ to avoid circular dependencies (Flight <-> Flight SQL)
While working on this I found some inconsistencies between both implementation, this PR also fixes these problems.