Skip to content
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

🐞 Difficult qmarks roundtrip tests fails #232

Open
2 tasks done
Nicoretti opened this issue Nov 9, 2022 · 0 comments
Open
2 tasks done

🐞 Difficult qmarks roundtrip tests fails #232

Nicoretti opened this issue Nov 9, 2022 · 0 comments
Labels
bug Unwanted / harmful behavior

Comments

@Nicoretti
Copy link
Member

Nicoretti commented Nov 9, 2022

Checklist

In order to improve the time, how long a bugfix does take, please make sure you address as much as possible of the following checklist.

  • I have reproduced the issue with at least the latest released version of <PROJECT-NAME>.
  • I have added references to issues that sound similar.

Summary

The following unit tests are failing when they are enabled:

  • test.integration.sqlalchemy.test_suite.DifficultParametersTest_exasol+pyodbc_7_1_9.test_round_trip
  • test.integration.sqlalchemy.test_suite.DifficultParametersTest_exasol+turbodbc_7_1_9.test_round_trip
    • test.integration.sqlalchemy.test_suite.DifficultParametersTest_exasol+websocket_7_1_9.test_round_trip

Reproducing the Issue

Reproducibility: always

Steps to reproduce the behavior:

  • Run the SQLA compliance test suite
  • Enable failing unit test(s) / Remove overload in test_suite.py
  • Start a test db nox -s start-db
  • Run the sqla compliance test suite
    • nox -s sqla-tests -- --connector pyodbc
    • nox -s sqla-tests -- --connector turbodbc
    • nox -s sqla-tests -- --connector websocket

Expected Behaviour

The following unit tests are passing ✔️ :

  • test.integration.sqlalchemy.test_suite.DifficultParametersTest_exasol+pyodbc_7_1_9.test_round_trip
  • test.integration.sqlalchemy.test_suite.DifficultParametersTest_exasol+turbodbc_7_1_9.test_round_trip
  • test.integration.sqlalchemy.test_suite.DifficultParametersTest_exasol+websocket_7_1_9.test_round_trip

Actual Behaviour

The following unit tests are failing 💥 :

  • test.integration.sqlalchemy.test_suite.DifficultParametersTest_exasol+pyodbc_7_1_9.test_round_trip
  • test.integration.sqlalchemy.test_suite.DifficultParametersTest_exasol+turbodbc_7_1_9.test_round_trip
  • test.integration.sqlalchemy.test_suite.DifficultParametersTest_exasol+websocket_7_1_9.test_round_trip

Root Cause (optional)

?

ℹ️ Note

It was decided that ODBC support will be phased out for the SQLAlchemy-Exasol plugin.
The fore focus and fixing efforts should be directed towards the websocket based dialect.

Related Issues

@Nicoretti Nicoretti added the bug Unwanted / harmful behavior label Nov 9, 2022
Nicoretti added a commit that referenced this issue Nov 9, 2022
Nicoretti added a commit that referenced this issue Nov 18, 2022
* Disable unimplemented sql_exprssion_limit_offset tests
* Adjust function call to comply with latest api changes
* Disable tests requiring an explicit index which isn't supported by exasol
* Make sure metadata queries do not create a second connection
* Fix args for report command
* Make sure test schemas are in place before integration tests get executed
* Fix setup of test cases
* Temporarily add migration notes and todos to PR/changes
* Mark test depending on driver update as xfail
    see also #232
* run sphinx via poetry in nox task
* Update dependencies
* Suppress failing turbodbc test
* Disable incompatible unit tests
* Disable merge tests
Nicoretti added a commit that referenced this issue Nov 30, 2022
* Disable unimplemented sql_exprssion_limit_offset tests
* Adjust function call to comply with latest api changes
* Disable tests requiring an explicit index which isn't supported by exasol
* Make sure metadata queries do not create a second connection
* Fix args for report command
* Make sure test schemas are in place before integration tests get executed
* Fix setup of test cases
* Temporarily add migration notes and todos to PR/changes
* Mark test depending on driver update as xfail
    see also #232
* run sphinx via poetry in nox task
* Update dependencies
* Suppress failing turbodbc test
* Disable incompatible unit tests
* Disable merge tests
Nicoretti added a commit that referenced this issue Nov 30, 2022
fixes #106 

Details
--------------------------------------------

Removals:
* Remove custom merge statement
* Remove backwards compatibility with SQLA < 1.4

Changes:
* Change integration test setup (to mitigate side effects)
* Change integration test setup
    - Make sure test schemas are created before integration tests get executed

Updates:
* Update all dependencies
* Update tooling configuration
* Update sqlalchemy dependency to base version to >= 1.4.0
    - Update function call's to comply with latest sqla API
    - Update ssl/tls tests to comply with new SQLA 1.4 API
    - Upgrade tests to use new introspection API
    - Update URL creation to new API
* Disable statement cache for pyodbc and turbodbc dialects
   - For more details see also:
     + #190
     + https://docs.sqlalchemy.org/en/14/core/connections.html#engine-thirdparty-caching
     + https://docs.sqlalchemy.org/en/14/faq/performance.html#why-is-my-application-slow-after-upgrading-to-1-4-and-or-2-x
* Disable incompatible unit tests
    - Disable unsupported binary type features
    - Disable tests requiring an explicit index which isn't supported by exasol
    - Disable unimplemented sql_expression_limit_offset tests
* Disable test failing to driver issue
    - see also: #232
* Disable failing turbodbc tests
    - turbodbc maintenance was put on hold for now

Fixes:
* Fix pre_exec edge case
* Fix translate map regression test
* Fix arguments of report command
* Fix issue that metadata queries create a second connection

Co-authored-by: Torsten Kilias <tkilias@users.noreply.github.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Unwanted / harmful behavior
Projects
None yet
Development

No branches or pull requests

1 participant