laskoviymishka opened a new issue, #1278:
URL: https://github.com/apache/iceberg-go/issues/1278

   Follow-up to #877.
   
   `ExpireSnapshots` reads the retention defaults with 
`int64(props.GetInt(...))`, but `Properties.GetInt` parses then narrows to 
platform-width `int`, and `MaxSnapshotAgeMsDefault` / `MaxRefAgeMsDefault` are 
`math.MaxInt`. On a 32-bit target `math.MaxInt` is `MaxInt32` (~25 days in ms), 
and the value is already truncated before the `int64()` widening — so the "keep 
everything" sentinel collapses and refs or snapshots older than ~25 days get 
expired even when no retention was configured.
   
   Add a `Properties.GetInt64(key string, defVal int64) int64` helper (parse 
with bit size 64, return the full `int64`), use it for the two age properties, 
and retype the `*Default` constants to `int64(math.MaxInt64)`.
   


-- 
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