Currently integration_test is using reflect.DeepEqual() to check equivalency.
There is at lease one case that we know of where DeepEqual() is not working as expected and is when float values have NaN. And there might be other cases too.
For now we have a customized cmpOption for FloatType to cover the above case, and other types are using the regular cmp.Equal(), except for DecimalType and IntType.
Currently integration_test is using
reflect.DeepEqual()
to check equivalency. There is at lease one case that we know of whereDeepEqual()
is not working as expected and is when float values haveNaN
. And there might be other cases too.For now we have a customized
cmpOption
forFloatType
to cover the above case, and other types are using the regularcmp.Equal()
, except forDecimalType
andIntType
.In order to have
cmp.Equal()
working forDecimalType
, we might need to explicitly track precision.As for
IntType
more investigation is needed, but I probably the issues is with 0 and null.Int cases