cx_Oracle 6.0 is out....aaaaaand breaks stuff (again)

Issue #4045 resolved
Michael Bayer
repo owner created an issue

test failures:

========================================================================= FAILURES ==========================================================================
____________________________________ InvalidateDuringResultTest_oracle+cx_oracle_[11.2.0.2.0].test_invalidate_on_results ____________________________________
[gw0] linux2 -- Python 2.7.11 /home/classic/dev/sqlalchemy/.tox/py27-oracle-backendonly/bin/python
Traceback (most recent call last):
  File "/home/classic/dev/sqlalchemy/test/engine/test_reconnect.py", line 1015, in test_invalidate_on_results
    _assert_invalidated(result.fetchone)
  File "/home/classic/dev/sqlalchemy/test/engine/test_reconnect.py", line 665, in _assert_invalidated
    assert False
AssertionError: assert False
------------------------------------------------------------------- Captured stderr call --------------------------------------------------------------------
/home/classic/dev/sqlalchemy/.tox/py27-oracle-backendonly/lib/python2.7/site-packages/sqlalchemy/testing/engines.py:189: UserWarning: ReconnectFixture couldn't close connection: DPI-1054: connection cannot be closed when open statements or LOBs exist
  "close connection: %s" % e)
----------------------------------------------------------------- Captured stderr teardown ------------------------------------------------------------------
No handlers could be found for logger "sqlalchemy.pool.QueuePool"
/home/classic/dev/sqlalchemy/.tox/py27-oracle-backendonly/lib/python2.7/site-packages/sqlalchemy/testing/engines.py:43: UserWarning: testing_reaper couldn't rollback/close connection: DPI-1054: connection cannot be closed when open statements or LOBs exist
  "rollback/close connection: %s" % e)
________________________________________ PrePingRealTest_oracle+cx_oracle_[11.2.0.2.0].test_pre_ping_db_is_restarted ________________________________________
[gw0] linux2 -- Python 2.7.11 /home/classic/dev/sqlalchemy/.tox/py27-oracle-backendonly/bin/python
Traceback (most recent call last):
  File "/home/classic/dev/sqlalchemy/test/engine/test_reconnect.py", line 957, in test_pre_ping_db_is_restarted
    conn = engine.connect()
  File "/home/classic/dev/sqlalchemy/.tox/py27-oracle-backendonly/lib/python2.7/site-packages/sqlalchemy/engine/base.py", line 2091, in connect
    return self._connection_cls(self, **kwargs)
  File "/home/classic/dev/sqlalchemy/.tox/py27-oracle-backendonly/lib/python2.7/site-packages/sqlalchemy/engine/base.py", line 90, in __init__
    if connection is not None else engine.raw_connection()
  File "/home/classic/dev/sqlalchemy/.tox/py27-oracle-backendonly/lib/python2.7/site-packages/sqlalchemy/engine/base.py", line 2177, in raw_connection
    self.pool.unique_connection, _connection)
  File "/home/classic/dev/sqlalchemy/.tox/py27-oracle-backendonly/lib/python2.7/site-packages/sqlalchemy/engine/base.py", line 2151, in _wrap_pool_connect
    e, dialect, self)
  File "/home/classic/dev/sqlalchemy/.tox/py27-oracle-backendonly/lib/python2.7/site-packages/sqlalchemy/engine/base.py", line 1465, in _handle_dbapi_exception_noconnection
    exc_info
  File "/home/classic/dev/sqlalchemy/.tox/py27-oracle-backendonly/lib/python2.7/site-packages/sqlalchemy/util/compat.py", line 203, in raise_from_cause
    reraise(type(exception), exception, tb=exc_tb, cause=cause)
  File "/home/classic/dev/sqlalchemy/.tox/py27-oracle-backendonly/lib/python2.7/site-packages/sqlalchemy/engine/base.py", line 2147, in _wrap_pool_connect
    return fn()
  File "/home/classic/dev/sqlalchemy/.tox/py27-oracle-backendonly/lib/python2.7/site-packages/sqlalchemy/pool.py", line 344, in unique_connection
    return _ConnectionFairy._checkout(self)
  File "/home/classic/dev/sqlalchemy/.tox/py27-oracle-backendonly/lib/python2.7/site-packages/sqlalchemy/pool.py", line 811, in _checkout
    result = pool._dialect.do_ping(fairy.connection)
  File "/home/classic/dev/sqlalchemy/.tox/py27-oracle-backendonly/lib/python2.7/site-packages/sqlalchemy/engine/default.py", line 471, in do_ping
    cursor.execute(self._dialect_specific_select_one)
DatabaseError: (cx_Oracle.DatabaseError) DPI-1010: not connected
__________________________________________ NumericTest_oracle+cx_oracle_[11.2.0.2.0].test_many_significant_digits ___________________________________________
[gw1] linux2 -- Python 2.7.11 /home/classic/dev/sqlalchemy/.tox/py27-oracle-backendonly/bin/python
Traceback (most recent call last):
  File "/home/classic/dev/sqlalchemy/.tox/py27-oracle-backendonly/lib/python2.7/site-packages/sqlalchemy/testing/suite/test_types.py", line 522, in test_many_significant_digits
    numbers
  File "<string>", line 2, in _do_test
  File "/home/classic/dev/sqlalchemy/.tox/py27-oracle-backendonly/lib/python2.7/site-packages/sqlalchemy/testing/assertions.py", line 69, in decorate
    return fn(*args, **kw)
  File "<string>", line 2, in _do_test
  File "/home/classic/dev/sqlalchemy/.tox/py27-oracle-backendonly/lib/python2.7/site-packages/sqlalchemy/testing/util.py", line 196, in provide_metadata
    return fn(*args, **kw)
  File "/home/classic/dev/sqlalchemy/.tox/py27-oracle-backendonly/lib/python2.7/site-packages/sqlalchemy/testing/suite/test_types.py", line 348, in _do_test
    eq_(result, output)
  File "/home/classic/dev/sqlalchemy/.tox/py27-oracle-backendonly/lib/python2.7/site-packages/sqlalchemy/testing/assertions.py", line 222, in eq_
    assert a == b, msg or "%r != %r" % (a, b)
AssertionError: set([Decimal('319438950232418000'), Decimal('31943874831932400000'), Decimal('87673.5940696542')]) != set([Decimal('319438950232418390.273596'), Decimal('31943874831932418390.01'), Decimal('87673.594069654243')])
=================================================== 3 failed, 1488 passed, 776 skipped in 277.05 seconds ====================================================
ERROR: InvocationError: '/home/classic/dev/sqlalchemy/.tox/py27-oracle-backendonly/bin/python -m pytest -n2 --dburi oracle://scott:tiger@oracle1120/xe --write-idents oracle_idents.txt --nomemory --backend-only'
__________________________________________________________________________ summary __________________________________________________________________________
ERROR:   py27-oracle-backendonly: commands failed

Comments (4)

  1. Michael Bayer reporter

    First level repair for cx_Oracle 6.0 test regressions

    Fixed more regressions caused by cx_Oracle 6.0; at the moment, the only behavioral change for users is disconnect detection now detects for cx_Oracle.DatabaseError in addition to cx_Oracle.InterfaceError, as this behavior seems to have changed. Other issues regarding numeric precision and uncloseable connections are pending with the upstream cx_Oracle issue tracker.

    Change-Id: Id61f1e33b21c155a598396340dfdecd28ff4066b Fixes: #4045

    → <<cset 03255a5a0fc6>>

  2. Michael Bayer reporter

    First level repair for cx_Oracle 6.0 test regressions

    Fixed more regressions caused by cx_Oracle 6.0; at the moment, the only behavioral change for users is disconnect detection now detects for cx_Oracle.DatabaseError in addition to cx_Oracle.InterfaceError, as this behavior seems to have changed. Other issues regarding numeric precision and uncloseable connections are pending with the upstream cx_Oracle issue tracker.

    Change-Id: Id61f1e33b21c155a598396340dfdecd28ff4066b Fixes: #4045 (cherry picked from commit 03255a5a0fc6aa8acfff99ed9e62d58054b8b6af)

    → <<cset 53175850bf1e>>

  3. Michael Bayer reporter

    First level repair for cx_Oracle 6.0 test regressions

    Fixed more regressions caused by cx_Oracle 6.0; at the moment, the only behavioral change for users is disconnect detection now detects for cx_Oracle.DatabaseError in addition to cx_Oracle.InterfaceError, as this behavior seems to have changed. Other issues regarding numeric precision and uncloseable connections are pending with the upstream cx_Oracle issue tracker.

    Change-Id: Id61f1e33b21c155a598396340dfdecd28ff4066b Fixes: #4045 (cherry picked from commit 03255a5a0fc6aa8acfff99ed9e62d58054b8b6af)

    → <<cset ec75b0229fba>>

  4. Log in to comment