[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[BigQuery] TableRowJsonCoder question

Hi all,

While playing with BigQueryIO I noticed something.

When we create a TableRow (e.g. in a row function in bigQueryIO) using new TableRow().set(), for ex a long gets boxed into a Long. But when it is encoded using TableRowJsonCoder and then re-read it might be decoded as an Integer if the value fits into Integer. It causes failure in asserts in tests like write then read. 
What I did for now is to downcast long to int to force it to be boxed into an Integer (because test value fits into Integer) at TableRow creation.

Is there a way to fix it in TableRowJsonCoder or a better workaround?