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

compliance tests failing on HEAD #386

Closed
tswast opened this issue Dec 29, 2021 · 4 comments
Closed

compliance tests failing on HEAD #386

tswast opened this issue Dec 29, 2021 · 4 comments
Labels
api: bigquery Issues related to the googleapis/python-bigquery-sqlalchemy API. priority: p2 Moderately-important priority. Fix may not be included in next release. type: bug Error or flaw in code with unintended results or allowing sub-optimal usage patterns.

Comments

@tswast
Copy link
Collaborator

tswast commented Dec 29, 2021

#384 (comment)

_____ ERROR at setup of OrderByLabelTest_bigquery+bigquery.test_plain_desc _____
Traceback (most recent call last):
  File "/tmpfs/src/github/python-bigquery-sqlalchemy/.nox/compliance-3-9/lib/python3.9/site-packages/google/cloud/bigquery/dbapi/cursor.py", line 203, in _execute
    self._query_job.result()
  File "/tmpfs/src/github/python-bigquery-sqlalchemy/.nox/compliance-3-9/lib/python3.9/site-packages/google/cloud/bigquery/job/query.py", line 1447, in result
    do_get_result()
  File "/tmpfs/src/github/python-bigquery-sqlalchemy/.nox/compliance-3-9/lib/python3.9/site-packages/google/api_core/retry.py", line 283, in retry_wrapped_func
    return retry_target(
  File "/tmpfs/src/github/python-bigquery-sqlalchemy/.nox/compliance-3-9/lib/python3.9/site-packages/google/api_core/retry.py", line 190, in retry_target
    return target()
  File "/tmpfs/src/github/python-bigquery-sqlalchemy/.nox/compliance-3-9/lib/python3.9/site-packages/google/cloud/bigquery/job/query.py", line 1437, in do_get_result
    super(QueryJob, self).result(retry=retry, timeout=timeout)
  File "/tmpfs/src/github/python-bigquery-sqlalchemy/.nox/compliance-3-9/lib/python3.9/site-packages/google/cloud/bigquery/job/base.py", line 727, in result
    return super(_AsyncJob, self).result(timeout=timeout, **kwargs)
  File "/tmpfs/src/github/python-bigquery-sqlalchemy/.nox/compliance-3-9/lib/python3.9/site-packages/google/api_core/future/polling.py", line 137, in result
    raise self._exception
google.api_core.exceptions.BadRequest: 400 Column x is not present in table some_table at [1:33]

(job ID: c06755d8-6461-487e-84f2-03d4b9d2c703)

                                -----Query Job SQL Follows-----

    |    .    |    .    |    .    |    .    |    .    |    .    |    .    |    .    |    .    |
   1:INSERT INTO `some_table` (`id`, `x`, `y`, `q`, `p`) VALUES (@`id`, @`x`, @`y`, @`q`, @`p`)
    |    .    |    .    |    .    |    .    |    .    |    .    |    .    |    .    |    .    |

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/tmpfs/src/github/python-bigquery-sqlalchemy/.nox/compliance-3-9/lib/python3.9/site-packages/sqlalchemy/engine/base.py", line 1782, in _execute_context
    self.dialect.do_executemany(
  File "/tmpfs/src/github/python-bigquery-sqlalchemy/.nox/compliance-3-9/lib/python3.9/site-packages/sqlalchemy/engine/default.py", line 729, in do_executemany
    cursor.executemany(statement, parameters)
  File "/tmpfs/src/github/python-bigquery-sqlalchemy/.nox/compliance-3-9/lib/python3.9/site-packages/google/cloud/bigquery/dbapi/_helpers.py", line 495, in with_closed_check
    return method(self, *args, **kwargs)
  File "/tmpfs/src/github/python-bigquery-sqlalchemy/.nox/compliance-3-9/lib/python3.9/site-packages/google/cloud/bigquery/dbapi/cursor.py", line 231, in executemany
    self._execute(
  File "/tmpfs/src/github/python-bigquery-sqlalchemy/.nox/compliance-3-9/lib/python3.9/site-packages/google/cloud/bigquery/dbapi/cursor.py", line 205, in _execute
    raise exceptions.DatabaseError(exc)
google.cloud.bigquery.dbapi.exceptions.DatabaseError: 400 Column x is not present in table some_table at [1:33]

(job ID: c06755d8-6461-487e-84f2-03d4b9d2c703)

                                -----Query Job SQL Follows-----

    |    .    |    .    |    .    |    .    |    .    |    .    |    .    |    .    |    .    |
   1:INSERT INTO `some_table` (`id`, `x`, `y`, `q`, `p`) VALUES (@`id`, @`x`, @`y`, @`q`, @`p`)
    |    .    |    .    |    .    |    .    |    .    |    .    |    .    |    .    |    .    |

The above exception was the direct cause of the following exception:

Traceback (most recent call last):
  File "/tmpfs/src/github/python-bigquery-sqlalchemy/.nox/compliance-3-9/lib/python3.9/site-packages/sqlalchemy/testing/suite/test_select.py", line 105, in insert_data
    connection.execute(
  File "/tmpfs/src/github/python-bigquery-sqlalchemy/.nox/compliance-3-9/lib/python3.9/site-packages/sqlalchemy/engine/base.py", line 1289, in execute
    return meth(self, multiparams, params, _EMPTY_EXECUTION_OPTS)
  File "/tmpfs/src/github/python-bigquery-sqlalchemy/.nox/compliance-3-9/lib/python3.9/site-packages/sqlalchemy/sql/elements.py", line 325, in _execute_on_connection
    return connection._execute_clauseelement(
  File "/tmpfs/src/github/python-bigquery-sqlalchemy/.nox/compliance-3-9/lib/python3.9/site-packages/sqlalchemy/engine/base.py", line 1481, in _execute_clauseelement
    ret = self._execute_context(
  File "/tmpfs/src/github/python-bigquery-sqlalchemy/.nox/compliance-3-9/lib/python3.9/site-packages/sqlalchemy/engine/base.py", line 1845, in _execute_context
    self._handle_dbapi_exception(
  File "/tmpfs/src/github/python-bigquery-sqlalchemy/.nox/compliance-3-9/lib/python3.9/site-packages/sqlalchemy/engine/base.py", line 2026, in _handle_dbapi_exception
    util.raise_(
  File "/tmpfs/src/github/python-bigquery-sqlalchemy/.nox/compliance-3-9/lib/python3.9/site-packages/sqlalchemy/util/compat.py", line 207, in raise_
    raise exception
  File "/tmpfs/src/github/python-bigquery-sqlalchemy/.nox/compliance-3-9/lib/python3.9/site-packages/sqlalchemy/engine/base.py", line 1782, in _execute_context
    self.dialect.do_executemany(
  File "/tmpfs/src/github/python-bigquery-sqlalchemy/.nox/compliance-3-9/lib/python3.9/site-packages/sqlalchemy/engine/default.py", line 729, in do_executemany
    cursor.executemany(statement, parameters)
  File "/tmpfs/src/github/python-bigquery-sqlalchemy/.nox/compliance-3-9/lib/python3.9/site-packages/google/cloud/bigquery/dbapi/_helpers.py", line 495, in with_closed_check
    return method(self, *args, **kwargs)
  File "/tmpfs/src/github/python-bigquery-sqlalchemy/.nox/compliance-3-9/lib/python3.9/site-packages/google/cloud/bigquery/dbapi/cursor.py", line 231, in executemany
    self._execute(
  File "/tmpfs/src/github/python-bigquery-sqlalchemy/.nox/compliance-3-9/lib/python3.9/site-packages/google/cloud/bigquery/dbapi/cursor.py", line 205, in _execute
    raise exceptions.DatabaseError(exc)
sqlalchemy.exc.DatabaseError: (google.cloud.bigquery.dbapi.exceptions.DatabaseError) 400 Column x is not present in table some_table at [1:33]

(job ID: c06755d8-6461-487e-84f2-03d4b9d2c703)

                                -----Query Job SQL Follows-----

    |    .    |    .    |    .    |    .    |    .    |    .    |    .    |    .    |    .    |
   1:INSERT INTO `some_table` (`id`, `x`, `y`, `q`, `p`) VALUES (@`id`, @`x`, @`y`, @`q`, @`p`)
    |    .    |    .    |    .    |    .    |    .    |    .    |    .    |    .    |    .    |
[SQL: INSERT INTO `some_table` (`id`, `x`, `y`, `q`, `p`) VALUES (%(id:INT64)s, %(x:INT64)s, %(y:INT64)s, %(q:STRING)s, %(p:STRING)s)]
[parameters: ({'id': 1, 'x': 1, 'y': 2, 'q': 'q1', 'p': 'p3'}, {'id': 2, 'x': 2, 'y': 3, 'q': 'q2', 'p': 'p2'}, {'id': 3, 'x': 3, 'y': 4, 'q': 'q3', 'p': 'p1'})]
(Background on this error at: https://sqlalche.me/e/14/4xp6)

https://source.cloud.google.com/results/invocations/98c79c9a-dc03-49b5-bba9-db389866d284/targets/cloud-devrel%2Fclient-libraries%2Fpython%2Fgoogleapis%2Fpython-bigquery-sqlalchemy%2Fpresubmit%2Fpresubmit/log

@product-auto-label product-auto-label bot added the api: bigquery Issues related to the googleapis/python-bigquery-sqlalchemy API. label Dec 29, 2021
@tswast
Copy link
Collaborator Author

tswast commented Dec 29, 2021

=========================== short test summary info ============================
FAILED tests/sqlalchemy_dialect_compliance/test_dialect_compliance.py::BooleanTest_bigquery+bigquery::test_null
FAILED tests/sqlalchemy_dialect_compliance/test_dialect_compliance.py::BooleanTest_bigquery+bigquery::test_round_trip
FAILED tests/sqlalchemy_dialect_compliance/test_dialect_compliance.py::BooleanTest_bigquery+bigquery::test_whereclause
FAILED tests/sqlalchemy_dialect_compliance/test_dialect_compliance.py::CastTypeDecoratorTest_bigquery+bigquery::test_special_type
FAILED tests/sqlalchemy_dialect_compliance/test_dialect_compliance.py::DateHistoricTest_bigquery+bigquery::test_null
FAILED tests/sqlalchemy_dialect_compliance/test_dialect_compliance.py::DateHistoricTest_bigquery+bigquery::test_null_bound_comparison
FAILED tests/sqlalchemy_dialect_compliance/test_dialect_compliance.py::DateHistoricTest_bigquery+bigquery::test_round_trip
FAILED tests/sqlalchemy_dialect_compliance/test_dialect_compliance.py::DateHistoricTest_bigquery+bigquery::test_round_trip_decorated
FAILED tests/sqlalchemy_dialect_compliance/test_dialect_compliance.py::DateTest_bigquery+bigquery::test_null
FAILED tests/sqlalchemy_dialect_compliance/test_dialect_compliance.py::DateTest_bigquery+bigquery::test_null_bound_comparison
FAILED tests/sqlalchemy_dialect_compliance/test_dialect_compliance.py::DateTest_bigquery+bigquery::test_round_trip
FAILED tests/sqlalchemy_dialect_compliance/test_dialect_compliance.py::DateTest_bigquery+bigquery::test_round_trip_decorated
FAILED tests/sqlalchemy_dialect_compliance/test_dialect_compliance.py::DateTimeHistoricTest_bigquery+bigquery::test_null
FAILED tests/sqlalchemy_dialect_compliance/test_dialect_compliance.py::DateTimeHistoricTest_bigquery+bigquery::test_null_bound_comparison
FAILED tests/sqlalchemy_dialect_compliance/test_dialect_compliance.py::DateTimeHistoricTest_bigquery+bigquery::test_round_trip
FAILED tests/sqlalchemy_dialect_compliance/test_dialect_compliance.py::DateTimeHistoricTest_bigquery+bigquery::test_round_trip_decorated
FAILED tests/sqlalchemy_dialect_compliance/test_dialect_compliance.py::DateTimeMicrosecondsTest_bigquery+bigquery::test_null
FAILED tests/sqlalchemy_dialect_compliance/test_dialect_compliance.py::DateTimeMicrosecondsTest_bigquery+bigquery::test_null_bound_comparison
FAILED tests/sqlalchemy_dialect_compliance/test_dialect_compliance.py::DateTimeMicrosecondsTest_bigquery+bigquery::test_round_trip
FAILED tests/sqlalchemy_dialect_compliance/test_dialect_compliance.py::DateTimeMicrosecondsTest_bigquery+bigquery::test_round_trip_decorated
FAILED tests/sqlalchemy_dialect_compliance/test_dialect_compliance.py::DateTimeTest_bigquery+bigquery::test_null
FAILED tests/sqlalchemy_dialect_compliance/test_dialect_compliance.py::DateTimeTest_bigquery+bigquery::test_null_bound_comparison
FAILED tests/sqlalchemy_dialect_compliance/test_dialect_compliance.py::DateTimeTest_bigquery+bigquery::test_round_trip
FAILED tests/sqlalchemy_dialect_compliance/test_dialect_compliance.py::DateTimeTest_bigquery+bigquery::test_round_trip_decorated
FAILED tests/sqlalchemy_dialect_compliance/test_dialect_compliance.py::EscapingTest::test_percent_sign_round_trip
FAILED tests/sqlalchemy_dialect_compliance/test_dialect_compliance.py::ExceptionTest_bigquery+bigquery::test_exception_with_non_ascii
FAILED tests/sqlalchemy_dialect_compliance/test_dialect_compliance.py::FutureTableDDLTest_bigquery+bigquery::test_create_table
FAILED tests/sqlalchemy_dialect_compliance/test_dialect_compliance.py::FutureTableDDLTest_bigquery+bigquery::test_underscore_names
FAILED tests/sqlalchemy_dialect_compliance/test_dialect_compliance.py::InsertBehaviorTest_bigquery+bigquery::test_insert_from_select
FAILED tests/sqlalchemy_dialect_compliance/test_dialect_compliance.py::InsertBehaviorTest_bigquery+bigquery::test_insert_from_select_autoinc_no_rows
FAILED tests/sqlalchemy_dialect_compliance/test_dialect_compliance.py::InsertBehaviorTest_bigquery+bigquery::test_insert_from_select_with_defaults
FAILED tests/sqlalchemy_dialect_compliance/test_dialect_compliance.py::IntegerTest_bigquery+bigquery::test_huge_int
FAILED tests/sqlalchemy_dialect_compliance/test_dialect_compliance.py::IsOrIsNotDistinctFromTest_bigquery+bigquery::test_is_or_is_not_distinct_from[both_int_different]
FAILED tests/sqlalchemy_dialect_compliance/test_dialect_compliance.py::IsOrIsNotDistinctFromTest_bigquery+bigquery::test_is_or_is_not_distinct_from[both_int_same]
FAILED tests/sqlalchemy_dialect_compliance/test_dialect_compliance.py::IsOrIsNotDistinctFromTest_bigquery+bigquery::test_is_or_is_not_distinct_from[both_null]
FAILED tests/sqlalchemy_dialect_compliance/test_dialect_compliance.py::IsOrIsNotDistinctFromTest_bigquery+bigquery::test_is_or_is_not_distinct_from[one_null_first]
FAILED tests/sqlalchemy_dialect_compliance/test_dialect_compliance.py::IsOrIsNotDistinctFromTest_bigquery+bigquery::test_is_or_is_not_distinct_from[one_null_second]
===== 37 failed, 98 passed, 248 skipped, 154 errors in 1140.85s (0:19:00) ======

@tswast
Copy link
Collaborator Author

tswast commented Dec 29, 2021

Tests are passing locally, though... Perhaps an issue with parallel tests running?

Edit: We're already creating a fresh dataset each test session.

session.config.option.dburi = [f"bigquery:///{dataset_id}"]

@tswast tswast added priority: p3 Desirable enhancement or fix. May not be included in next release. type: bug Error or flaw in code with unintended results or allowing sub-optimal usage patterns. priority: p2 Moderately-important priority. Fix may not be included in next release. and removed priority: p3 Desirable enhancement or fix. May not be included in next release. labels Dec 29, 2021
@tswast
Copy link
Collaborator Author

tswast commented Dec 30, 2021

I was testing locally with sqlalchemy 1.4.25, but when I installed 1.4.29, I started getting errors and warnings (#385) which were treated as failures.

@tswast
Copy link
Collaborator Author

tswast commented Dec 30, 2021

Closing as a duplicate of #385

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
api: bigquery Issues related to the googleapis/python-bigquery-sqlalchemy API. priority: p2 Moderately-important priority. Fix may not be included in next release. type: bug Error or flaw in code with unintended results or allowing sub-optimal usage patterns.
Projects
None yet
Development

No branches or pull requests

1 participant