ReadSession: selectedFields on null record coalesced to 0 value #2284
Labels
api: bigquerystorage
Issues related to the googleapis/java-bigquerystorage API.
priority: p2
Moderately-important priority. Fix may not be included in next release.
Environment details
OS type and version: Linux, Ubuntu 22.04
Java version: 11
version(s): 2.41.1, 2.44.0
Steps to reproduce
Considering this table
![image](https://private-user-images.githubusercontent.com/2845540/277586615-a5179b6c-40d0-48a5-8184-417b65a7d466.png?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3Mzg4MjU1OTIsIm5iZiI6MTczODgyNTI5MiwicGF0aCI6Ii8yODQ1NTQwLzI3NzU4NjYxNS1hNTE3OWI2Yy00MGQwLTQ4YTUtODE4NC00MTdiNjVhN2Q0NjYucG5nP1gtQW16LUFsZ29yaXRobT1BV1M0LUhNQUMtU0hBMjU2JlgtQW16LUNyZWRlbnRpYWw9QUtJQVZDT0RZTFNBNTNQUUs0WkElMkYyMDI1MDIwNiUyRnVzLWVhc3QtMSUyRnMzJTJGYXdzNF9yZXF1ZXN0JlgtQW16LURhdGU9MjAyNTAyMDZUMDcwMTMyWiZYLUFtei1FeHBpcmVzPTMwMCZYLUFtei1TaWduYXR1cmU9OGUxOGJkYTU2OGM4ZWVlZDIyNDlmYjliNWE2YWI4M2YwYmJhZjBlM2M5ZWNlMjg0YzE1ZTBhNTAzOThlYTNkYSZYLUFtei1TaWduZWRIZWFkZXJzPWhvc3QifQ.WmnyxmESizFXgK8TeL4hpU_lF_CsUIDPFzWTXyZBd64)
With the following data
![image](https://private-user-images.githubusercontent.com/2845540/277587004-76ddba5a-b0f9-4d21-bd6f-4b0d48c96830.png?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3Mzg4MjU1OTIsIm5iZiI6MTczODgyNTI5MiwicGF0aCI6Ii8yODQ1NTQwLzI3NzU4NzAwNC03NmRkYmE1YS1iMGY5LTRkMjEtYmQ2Zi00YjBkNDhjOTY4MzAucG5nP1gtQW16LUFsZ29yaXRobT1BV1M0LUhNQUMtU0hBMjU2JlgtQW16LUNyZWRlbnRpYWw9QUtJQVZDT0RZTFNBNTNQUUs0WkElMkYyMDI1MDIwNiUyRnVzLWVhc3QtMSUyRnMzJTJGYXdzNF9yZXF1ZXN0JlgtQW16LURhdGU9MjAyNTAyMDZUMDcwMTMyWiZYLUFtei1FeHBpcmVzPTMwMCZYLUFtei1TaWduYXR1cmU9NmFhZDVkNzFmY2E2ZDVlODNiYjU4NzUzYjEzZmQ5NWRkOGJhODBjNGY4Mzk1OThmMzRjZmRmMzc3ZjY0Y2Q2YSZYLUFtei1TaWduZWRIZWFkZXJzPWhvc3QifQ.KZ4SPMd_VuRwddulA_pgO7ucjEMYWI4rv5C7zupI4e8)
Reading the table with
AVRO
format without any selected fields gives the expected result:When now setting the selected fields to
["required", "optional.int"]
, the library returns the followingThe 1st record is expected to return
{"required": {"int": 0, "string": "0"}, "optional": null}
instead. Somehow its value gets coalesced into 0.The text was updated successfully, but these errors were encountered: