This repository has been archived by the owner on Sep 23, 2024. It is now read-only.
Draft: Calculate max/min for DECIMAL columns #108
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.
Problem
Targets must know the width of columns in order to be able to
correctly represent them. For example, BigQuery distinguishes
DECIMAL and BIGDECIMAL types, and a SQL database like target-mysql
or target-postgres would need to be able to reconstruct the actual
precision/scale values in order to be able to create a valid schema.
Proposed changes
To encode the DECIMAL column as JSONSchema, use Python Decimal
machinery to calculate the Maximum/Minimum values of a decimal
with the specified precision.
Types of changes
What types of changes does your code introduce to PipelineWise?
Put an
x
in the boxes that applySince this changes the output schema, I think it's probably a breaking change. Some targets might not be able to handle a modification to the schema.
Checklist
setup.py
is an individual PR and not mixed with feature or bugfix PRs[AP-NNNN]
(if applicable. AP-NNNN = JIRA ID)AP-NNN
(if applicable. AP-NNN = JIRA ID)