BUG: Avoid ValueError when serializing lists/arrays in BigQuery tool #381
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Summary:
This change fixes a
ValueError
in the_serialize_value_for_sql
function when trying to serialize lists or arrays. The function previously failed with arrays, aspd.isna
would return a boolean array, triggering the error "The truth value of an array with more than one element is ambiguous".What was changed:
value
is a list ornp.ndarray
before callingpd.isna()
. Lists/arrays are serialized into a SQL array format instead of being processed bypd.isna()
.Testing:
Justification:
This fix ensures that when
_serialize_value_for_sql
encounters lists or arrays, they are correctly serialized into SQL format instead of causing errors. It improves the robustness of the tool when interacting with arrays in SQL serialization.Fixes issue #343.