Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

vdk-core: Fix issue with serializing Decimal values during payload check #946

Merged
merged 6 commits into from
Aug 23, 2022

Conversation

gageorgiev
Copy link
Contributor

@gageorgiev gageorgiev commented Aug 22, 2022

As part of the ingestion process, the payload passes a
check to verify it is JSON serializable. However,
json.dumps does not natively support serializing
Decimal objects, which leads to the check failing when
it should not. This change fixes this problem by amending
the JsonEncoder object to convert Decimals to floats
during the check.
Note that this does not affect the actual ingestion of
Decimal objects, merely the serialization check.

Testing done: existing test, added a unit test for the new class

Signed-off-by: Gabriel Georgiev gageorgiev@vmware.com

As part of the ingestion process, the payload passes a
check to verify it is JSON serializable. However,
`json.dumps` does not natively support serializing
Decimal objects, which leads to the check failing when
it should not. This change fixes this problem by amending
the JsonEncoder object to convert Decimals to floats
during the check.
Note that this does not affect the actual ingestion of
Decimal objects, merely the serialization check.

Testing done: TBD

Signed-off-by: Gabriel Georgiev <gageorgiev@vmware.com>
Signed-off-by: Gabriel Georgiev <gageorgiev@vmware.com>
@antoniivanov
Copy link
Collaborator

I know the PR is about decimal, but it might be a good moment to think about other common types - e.g. timestamps and such . If they'd break something.

Signed-off-by: Gabriel Georgiev <gageorgiev@vmware.com>
Signed-off-by: Gabriel Georgiev <gageorgiev@vmware.com>
Signed-off-by: Gabriel Georgiev <gageorgiev@vmware.com>
@gageorgiev gageorgiev merged commit 1140f52 into main Aug 23, 2022
@gageorgiev gageorgiev deleted the person/gageorgiev/decimal-payload-check branch August 23, 2022 14:26
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.

None yet

3 participants