Skip to content

PendingDeprecationWarning in google-cloud-bigquery-storage #18181

Description

@GergelyKalmar

Determine this is the right repository

  • I determined this is the correct repository in which to report this bug.

Summary of the issue

Context
We're getting the following deprecation warning when trying to load a BigQuery table into a pandas dataframe:

stormware/google/bigquery.py:52: in get_table
    return self.client.list_rows(table).to_dataframe()
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
../../../.local/share/pyorbs/magic/lib/python3.12/site-packages/google/cloud/bigquery/table.py:2804: in to_dataframe
    record_batch = self.to_arrow(
../../../.local/share/pyorbs/magic/lib/python3.12/site-packages/google/cloud/bigquery/table.py:2339: in to_arrow
    for record_batch in self.to_arrow_iterable(
../../../.local/share/pyorbs/magic/lib/python3.12/site-packages/google/cloud/bigquery/table.py:2171: in _to_page_iterable
    yield from result_pages
../../../.local/share/pyorbs/magic/lib/python3.12/site-packages/google/cloud/bigquery/_pandas_helpers.py:1057: in _download_table_bqstorage
    future.result()
/opt/hostedtoolcache/Python/3.12.14/x64/lib/python3.12/concurrent/futures/_base.py:449: in result
    return self.__get_result()
           ^^^^^^^^^^^^^^^^^^^
/opt/hostedtoolcache/Python/3.12.14/x64/lib/python3.12/concurrent/futures/_base.py:401: in __get_result
    raise self._exception
/opt/hostedtoolcache/Python/3.12.14/x64/lib/python3.12/concurrent/futures/thread.py:59: in run
    result = self.fn(*self.args, **self.kwargs)
             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
../../../.local/share/pyorbs/magic/lib/python3.12/site-packages/google/cloud/bigquery/_pandas_helpers.py:856: in _download_table_bqstorage_stream
    item = page_to_item(page)
           ^^^^^^^^^^^^^^^^^^
../../../.local/share/pyorbs/magic/lib/python3.12/site-packages/google/cloud/bigquery/_pandas_helpers.py:832: in _bqstorage_page_to_arrow
    return page.to_arrow()
           ^^^^^^^^^^^^^^^
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

self = <google.cloud.bigquery_storage_v1.reader.ReadRowsPage object at 0x7fe977335eb0>

    def to_arrow(self):
        """Create an :class:`pyarrow.RecordBatch` of rows in the page.
    
        Returns:
            pyarrow.RecordBatch:
                Rows from the message, as an Arrow record batch.
        """
>       warnings.warn(
            "Retrieving Arrow record batches directly via google-cloud-bigquery-storage is deprecated. "
            "Please use 'pandas_gbq.arrow.from_read_rows_response' or install 'pandas-gbq'.",
            PendingDeprecationWarning,
            stacklevel=2,
        )
E       PendingDeprecationWarning: Retrieving Arrow record batches directly via google-cloud-bigquery-storage is deprecated. Please use 'pandas_gbq.arrow.from_read_rows_response' or install 'pandas-gbq'.

Expected Behavior:
We expect no deprecation warnings.

Actual Behavior:
We get a deprecation warning.

API client name and version

No response

Reproduction steps: code

See https://github.com/logikal-io/stormware/blob/main/tests/stormware/integration/google/test_bigquery.py#L11.

Reproduction steps: supporting files

No response

Reproduction steps: actual results

Reproduction steps: expected results

OS & version + platform

No response

Python environment

No response

Python dependencies

Package                       Version
----------------------------- -------------------------------
...
google-ads                    31.4.0
google-api-core               2.34.0
google-api-python-client      2.198.0
google-auth                   2.56.3
google-auth-httplib2          0.4.1
google-auth-oauthlib          1.4.0
google-cloud-bigquery         3.43.0
google-cloud-bigquery-storage 2.40.0
google-cloud-core             2.6.1
google-cloud-secret-manager   2.30.0
google-crc32c                 1.8.0
google-resumable-media        2.10.1
googleapis-common-protos      1.75.1
...

### Additional context

_No response_

Metadata

Metadata

Assignees

Labels

triage meI really want to be triaged.type: bugError or flaw in code with unintended results or allowing sub-optimal usage patterns.

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions