Skip to content

Commit 5a16364

Browse files
authored
chore: Change arrow scalar ids usage (#4347)
* Update google-cloud-storage Signed-off-by: Christopher Camenares <ccamenares@gmail.com> * test tighter library restriction Signed-off-by: Christopher Camenares <ccamenares@gmail.com> * fix lint Signed-off-by: Christopher Camenares <ccamenares@gmail.com> * bump <4 again Signed-off-by: Christopher Camenares <ccamenares@gmail.com> --------- Signed-off-by: Christopher Camenares <ccamenares@gmail.com>
1 parent a8bc696 commit 5a16364

File tree

8 files changed

+532
-85
lines changed

8 files changed

+532
-85
lines changed

sdk/python/feast/infra/offline_stores/bigquery.py

Lines changed: 12 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -59,14 +59,23 @@
5959
from google.auth.exceptions import DefaultCredentialsError
6060
from google.cloud import bigquery
6161
from google.cloud.bigquery import Client, SchemaField, Table
62-
from google.cloud.bigquery._pandas_helpers import ARROW_SCALAR_IDS_TO_BQ
6362
from google.cloud.storage import Client as StorageClient
6463

6564
except ImportError as e:
6665
from feast.errors import FeastExtrasDependencyImportError
6766

6867
raise FeastExtrasDependencyImportError("gcp", str(e))
6968

69+
try:
70+
from google.cloud.bigquery._pyarrow_helpers import _ARROW_SCALAR_IDS_TO_BQ
71+
except ImportError:
72+
try:
73+
from google.cloud.bigquery._pandas_helpers import ( # type: ignore
74+
ARROW_SCALAR_IDS_TO_BQ as _ARROW_SCALAR_IDS_TO_BQ,
75+
)
76+
except ImportError as e:
77+
raise FeastExtrasDependencyImportError("gcp", str(e))
78+
7079

7180
def get_http_client_info():
7281
return http_client_info.ClientInfo(user_agent=get_user_agent())
@@ -794,10 +803,10 @@ def arrow_schema_to_bq_schema(arrow_schema: pyarrow.Schema) -> List[SchemaField]
794803
for field in arrow_schema:
795804
if pyarrow.types.is_list(field.type):
796805
detected_mode = "REPEATED"
797-
detected_type = ARROW_SCALAR_IDS_TO_BQ[field.type.value_type.id]
806+
detected_type = _ARROW_SCALAR_IDS_TO_BQ[field.type.value_type.id]
798807
else:
799808
detected_mode = "NULLABLE"
800-
detected_type = ARROW_SCALAR_IDS_TO_BQ[field.type.id]
809+
detected_type = _ARROW_SCALAR_IDS_TO_BQ[field.type.id]
801810

802811
bq_schema.append(
803812
SchemaField(name=field.name, field_type=detected_type, mode=detected_mode)

0 commit comments

Comments
 (0)