Skip to content

chore: remove google-cloud-bigquery from bulk release due to failing system test - #17944

Merged
chalmerlowe merged 3 commits into
mainfrom
remove-bq-from-bulk-release
Jul 30, 2026
Merged

chore: remove google-cloud-bigquery from bulk release due to failing system test#17944
chalmerlowe merged 3 commits into
mainfrom
remove-bq-from-bulk-release

Conversation

@parthea

@parthea parthea commented Jul 30, 2026

Copy link
Copy Markdown
Contributor

Temporarily remove google-cloud-bigquery from the bulk release due to this system test failure

=================================== FAILURES ===================================
___________ TestBigQuery.test_dbapi_connection_does_not_leak_sockets ___________
[gw1] linux -- Python 3.12.12 /tmpfs/src/github/google-cloud-python/packages/google-cloud-bigquery/.nox/system-3-12/bin/python

self = 

    def test_dbapi_connection_does_not_leak_sockets(self):
        pytest.importorskip("google.cloud.bigquery_storage")
        current_process = psutil.Process()
        conn_start = current_process.net_connections()
        conn_count_start = len(conn_start)
    
        with helpers.patch_tracked_requests():
            # Provide no explicit clients, so that the connection will create and own them.
            connection = dbapi.connect()
            cursor = connection.cursor()
    
            cursor.execute(
                """
                SELECT id, `by`, timestamp
                FROM `bigquery-public-data.hacker_news.full`
                ORDER BY `id` ASC
                LIMIT 100000
            """
            )
            rows = cursor.fetchall()
            self.assertEqual(len(rows), 100000)
    
            connection.close()
        import gc
    
        gc.collect()
        for _ in range(30):  # Wait up to 3 seconds
            conn_end = current_process.net_connections()
            conn_count_end = len(conn_end)
            if conn_count_end <= conn_count_start:
                break
            time.sleep(0.1)
    
        try:
>           self.assertLessEqual(conn_count_end, conn_count_start)
E           AssertionError: 7 not less than or equal to 6

tests/system/test_client.py:2217: AssertionError

During handling of the above exception, another exception occurred:

self = 

    def test_dbapi_connection_does_not_leak_sockets(self):
        pytest.importorskip("google.cloud.bigquery_storage")
        current_process = psutil.Process()
        conn_start = current_process.net_connections()
        conn_count_start = len(conn_start)
    
        with helpers.patch_tracked_requests():
            # Provide no explicit clients, so that the connection will create and own them.
            connection = dbapi.connect()
            cursor = connection.cursor()
    
            cursor.execute(
                """
                SELECT id, `by`, timestamp
                FROM `bigquery-public-data.hacker_news.full`
                ORDER BY `id` ASC
                LIMIT 100000
            """
            )
            rows = cursor.fetchall()
            self.assertEqual(len(rows), 100000)
    
            connection.close()
        import gc
    
        gc.collect()
        for _ in range(30):  # Wait up to 3 seconds
            conn_end = current_process.net_connections()
            conn_count_end = len(conn_end)
            if conn_count_end <= conn_count_start:
                break
            time.sleep(0.1)
    
        try:
            self.assertLessEqual(conn_count_end, conn_count_start)
        except AssertionError as e:
            # Due to flakiness in this test (likely caused by OS cleanup delays or
            # non-deterministic garbage collection of sockets), we want to capture
            # the detailed state of connections in future failing runs to help
            # decrease false positives and identify the root cause.
            conn_debug = [
                f"Status: {c.status}, Laddr: {c.laddr}, Raddr: {c.raddr}"
                for c in current_process.net_connections()
            ]
            debug_msg = "\n".join(conn_debug)
    
>           raise AssertionError(
                f"{e}\n\n"
                f"--- Socket Leak Debug Info ---\n"
                f"Start Count: {conn_count_start}\n"
                f"End Count: {conn_count_end}\n"
                f"Current Connections:\n{debug_msg}"
            )
E           AssertionError: 7 not less than or equal to 6
E           
E           --- Socket Leak Debug Info ---
E           Start Count: 6
E           End Count: 7
E           Current Connections:
....

tests/system/test_client.py:2229: AssertionError
=========================== short test summary info ============================
FAILED tests/system/test_client.py::TestBigQuery::test_dbapi_connection_does_not_leak_sockets

@parthea
parthea marked this pull request as ready for review July 30, 2026 15:40
@parthea
parthea requested a review from a team as a code owner July 30, 2026 15:40

@gemini-code-assist gemini-code-assist Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Code Review

This pull request moves google-cloud-bigquery from the bulk release configuration to the individual release configuration. A critical issue was identified where google-cloud-bigquery-analyticshub was also moved in the configuration files, but its manifest entry was not updated, leading to a mismatch that will cause release-please to fail. The reviewer recommends reverting the changes for google-cloud-bigquery-analyticshub.

Comment thread release-please-individual-config.json Outdated

@chalmerlowe chalmerlowe left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

@chalmerlowe
chalmerlowe merged commit b51ad7b into main Jul 30, 2026
39 checks passed
@chalmerlowe
chalmerlowe deleted the remove-bq-from-bulk-release branch July 30, 2026 15:59
@zhumin8 zhumin8 added the release-please:force-run To run release-please label Jul 30, 2026
@release-please release-please Bot removed the release-please:force-run To run release-please label Jul 30, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants