XianReallyHot-ZZH commented on PR #13719: URL: https://github.com/apache/ignite/pull/13719#issuecomment-6511650613
Found the root cause — it was in my previous fix, not in the propagation itself. H2 resolves the table name during statement preparation **before** reporting syntax or column errors, and both new ODBC tests connected with `SCHEMA=PUBLIC`, while `TestType` is registered in the `cache` schema. So both INSERT statements actually failed with `TABLE_NOT_FOUND` (SQLSTATE `42S02`) and never reached the errors the tests assert. Verified against a local node started with the same caches as the ODBC test configuration (`cache`/`cache2` with `TestType`/`ComplexType`) over the thin protocol: | Statement | Schema | statusCode → SQLSTATE | |---|---|---| | `INSERT INTO TestType(_key VALUES(1)` | PUBLIC | 3001 TABLE_NOT_FOUND → 42S02 | | `INSERT INTO TestType(_key, fasf) VALUES(1, 'some')` | PUBLIC | 3001 TABLE_NOT_FOUND → 42S02 | | `INSERT INTO TestType(_key VALUES(1)` | cache | 1001 PARSING → 42000 | | `INSERT INTO TestType(_key, fasf) VALUES(1, 'some')` | cache | 3008 COLUMN_NOT_FOUND → 42S22 | | `SELECT a FROM B` | cache | 3001 TABLE_NOT_FOUND → 42S02 | Fix (commit af818870): - **TestSyntaxError / TestColumnNotFound** now connect with `SCHEMA=cache`, so the statements exercise the intended syntax error (`42000`) and column-not-found error (`42S22`). - **QueriesTestSuite / TestErrorMessage** expected the `42000: ...` message prefix for a missing table; a missing table now surfaces its own SQLSTATE, so the prefix is updated to `42S02: ...`. Could you please re-run the ODBC TeamCity suites once more? Thanks! -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: [email protected] For queries about this service, please contact Infrastructure at: [email protected]
