Skip to content

Commit 4e46f83

Browse files
committed
Only use arg when pyarrow>=4.0.0
1 parent a9ec5ca commit 4e46f83

File tree

2 files changed

+16
-5
lines changed

2 files changed

+16
-5
lines changed

google/cloud/bigquery/_pandas_helpers.py

+9-4
Original file line numberDiff line numberDiff line change
@@ -570,18 +570,23 @@ def dataframe_to_parquet(
570570
compliant Parquet nested type (lists). Defaults to ``True``.
571571
https://github.com/apache/parquet-format/blob/master/LogicalTypes.md#nested-types
572572
https://arrow.apache.org/docs/python/generated/pyarrow.parquet.write_table.html#pyarrow-parquet-write-table
573+
574+
This argument is ignored for ``pyarrow`` versions earlier than ``4.0.0``.
573575
"""
574576
pyarrow = _helpers.PYARROW_VERSIONS.try_import(raise_if_error=True)
575577

576578
import pyarrow.parquet
577579

580+
kwargs = (
581+
{"use_compliant_nested_type": parquet_use_compliant_nested_type}
582+
if _helpers._PYARROW_VERSION.major >= 4
583+
else {}
584+
)
585+
578586
bq_schema = schema._to_schema_fields(bq_schema)
579587
arrow_table = dataframe_to_arrow(dataframe, bq_schema)
580588
pyarrow.parquet.write_table(
581-
arrow_table,
582-
filepath,
583-
compression=parquet_compression,
584-
use_compliant_nested_type=parquet_use_compliant_nested_type,
589+
arrow_table, filepath, compression=parquet_compression, **kwargs,
585590
)
586591

587592

google/cloud/bigquery/client.py

+7-1
Original file line numberDiff line numberDiff line change
@@ -2547,6 +2547,8 @@ def load_table_from_dataframe(
25472547
``DataFrame.to_parquet()`` method.
25482548
https://pandas.pydata.org/pandas-docs/stable/reference/api/pandas.DataFrame.to_parquet.html#pandas.DataFrame.to_parquet
25492549
2550+
This argument is ignored for ``pyarrow`` versions before ``4.0.0``.
2551+
25502552
This argument is only present to allow for backwards compatibility with
25512553
tables created using an old version of this method.
25522554
timeout (Optional[float]):
@@ -2679,7 +2681,11 @@ def load_table_from_dataframe(
26792681
tmppath,
26802682
engine="pyarrow",
26812683
compression=parquet_compression,
2682-
use_compliant_nested_type=parquet_use_compliant_nested_type,
2684+
**{
2685+
"use_compliant_nested_type": parquet_use_compliant_nested_type
2686+
}
2687+
if _PYARROW_VERSION.major >= 4
2688+
else {},
26832689
)
26842690

26852691
else:

0 commit comments

Comments
 (0)