fallintoplace opened a new pull request, #1312:
URL: https://github.com/apache/iceberg-go/pull/1312

   Summary
   
   - reject fixed types with non-positive lengths
   - reject decimal types with precision outside 1..38 or scale outside 
0..precision
   - apply the same checks while parsing type strings from JSON
   - tighten fixed/decimal type string parsing so suffixed names are not 
accepted
   
   Why
   
   FixedTypeOf and DecimalTypeOf accepted impossible values, and JSON parsing 
constructed those types directly. That let invalid schema types such as 
fixed[0], decimal(0, 0), or decimal(2, 5) enter metadata and fail later in 
Arrow, Parquet, or reader paths.
   
   Testing
   
   - go test . -run 
'Test(TypeUnmarshalRejectsInvalidFixedAndDecimal|FixedType|DecimalType)$' 
-count=1
   - go test ./table -run '^TestArrowToIceberg$' -count=1
   - go test . -count=1
   - go test ./table -count=1
   - go run github.com/golangci/golangci-lint/v2/cmd/[email protected] run 
--timeout=10m . ./table/...
   - git diff --check


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to