Skip to content

fix(bigquery): Enable list inference for parquet loads in offline_write_batch#6365

Merged
ntkathole merged 1 commit into
feast-dev:masterfrom
Jwrede:fix/bq-list-inference
May 14, 2026
Merged

fix(bigquery): Enable list inference for parquet loads in offline_write_batch#6365
ntkathole merged 1 commit into
feast-dev:masterfrom
Jwrede:fix/bq-list-inference

Conversation

@Jwrede
Copy link
Copy Markdown
Contributor

@Jwrede Jwrede commented May 3, 2026

Summary

  • BigQuery's parquet loader drops array/list column data (writes empty []) when enable_list_inference is not set on ParquetOptions
  • Added parquet_options.enable_list_inference = True to the LoadJobConfig in offline_write_batch so list-typed features (e.g. STRING_LIST, INT32_LIST) are preserved when pushed via PushMode.OFFLINE or PushMode.ONLINE_AND_OFFLINE
  • Added a unit test verifying the LoadJobConfig has the correct parquet_options

Fixes

Fixes #5845

Test plan

  • New unit test test_offline_write_batch_enables_list_inference passes
  • All existing BigQuery unit tests pass (12/12)
  • Manual verification with a BigQuery table containing list-typed columns (requires GCP access)

…te_batch

When pushing features with array/list types (e.g. STRING_LIST) to
BigQuery via offline_write_batch, the data arrives as empty arrays
because BigQuery's parquet loader does not infer list structure by
default. Set parquet_options.enable_list_inference = True on the
LoadJobConfig so array columns are written correctly.

Fixes feast-dev#5845

Signed-off-by: Jonathan Wrede <[email protected]>
@ntkathole ntkathole force-pushed the fix/bq-list-inference branch from 899ca66 to fe19c06 Compare May 14, 2026 07:35
@ntkathole ntkathole merged commit 9243497 into feast-dev:master May 14, 2026
17 of 25 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

BigQuery offline store loses array data when pushing features with list types

2 participants