GH-49785: [C++][FlightRPC][ODBC] Get ODBC tests passing on Linux#49786
Conversation
|
|
e35dfe8 to
9e8272d
Compare
9e8272d to
0ef857d
Compare
0ef857d to
3439e98
Compare
|
Is the ODBC Linux job failure tracked? |
There was a problem hiding this comment.
Pull request overview
This PR adjusts the Flight SQL ODBC C++ test suite to pass on Linux by updating platform-specific expectations, selectively disabling known-problematic tests on Linux, and re-enabling the ODBC test target in Linux CI.
Changes:
- Update multiple ODBC tests to reflect Linux/Unix-ODBC vs Windows vs macOS driver-manager behavior (return codes, SQLSTATEs, and reported info strings).
- Disable a subset of metadata-related tests on Linux due to an acknowledged BlockingQueue issue (GH-49702).
- Re-enable
arrow-flight-sql-odbc-testexecution on Linux in CI.
Reviewed changes
Copilot reviewed 11 out of 11 changed files in this pull request and generated 4 comments.
Show a summary per file
| File | Description |
|---|---|
| cpp/src/arrow/flight/sql/odbc/tests/type_info_test.cc | Adjust expected SQLGetTypeInfo results for SQL_TYPE_* across Windows vs non-Windows. |
| cpp/src/arrow/flight/sql/odbc/tests/tables_test.cc | Reorder typed tests and disable several table-metadata tests on Linux (GH-49702). |
| cpp/src/arrow/flight/sql/odbc/tests/statement_test.cc | Adjust varbinary byte comparisons and add Linux-specific expectations for some APIs. |
| cpp/src/arrow/flight/sql/odbc/tests/statement_attr_test.cc | Linux-specific SQLSTATE expectation for an unsupported stmt attribute. |
| cpp/src/arrow/flight/sql/odbc/tests/odbc_test_suite.h | Add kErrorState00000 constant for tests expecting a “success” SQLSTATE. |
| cpp/src/arrow/flight/sql/odbc/tests/get_functions_test.cc | Restrict SQLGetFunctions tests to Windows due to Unix driver-manager limitations. |
| cpp/src/arrow/flight/sql/odbc/tests/errors_test.cc | Platform-specific expectations for invalid-handle behavior and SQLSTATE differences. |
| cpp/src/arrow/flight/sql/odbc/tests/connection_info_test.cc | Disable one info test on Linux and adjust expected SQL_ODBC_VER values. |
| cpp/src/arrow/flight/sql/odbc/tests/connection_attr_test.cc | Add pre-connect fixture and adjust platform-specific behavior for several connection attributes. |
| cpp/src/arrow/flight/sql/odbc/tests/columns_test.cc | Disable column-metadata helpers/tests on Linux (GH-49702) and tighten Unicode column checks. |
| ci/scripts/cpp_test.sh | Stop excluding arrow-flight-sql-odbc-test on Linux. |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
This failure is due to a problem with |
eb84cd0 to
549d4c2
Compare
|
549d4c2 to
f2b988e
Compare
f2b988e to
9251e8c
Compare
9251e8c to
7287c6b
Compare
lidavidm
left a comment
There was a problem hiding this comment.
Looks like the test failure is in Gandiva and is unrelated.
|
After merging your PR, Conbench analyzed the 4 benchmarking runs that have been run so far on merge-commit 16fe342. There were no benchmark performance regressions. 🎉 The full Conbench report has more details. It also includes information about 6 possible false positives for unstable benchmarks that are known to sometimes produce them. |
Rationale for this change
After getting the tests building on Linux, the next step is to get all the tests passing.
Resolves #49785.
What changes are included in this PR?
Miscellaneous fixes.
Are these changes tested?
Yes.
Are there any user-facing changes?
No.
Depends on #49668 and #49784 before being ready for review.