You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@iceberg.apache.org by "Xuanwo (via GitHub)" <gi...@apache.org> on 2024/10/14 16:30:18 UTC
[I] rust_decimal only supports precision less than 28 [iceberg-rust]
Xuanwo opened a new issue, #669:
URL: https://github.com/apache/iceberg-rust/issues/669
`rust_decimal` looks promising but only supports precision less than 28, while the [Iceberg spec requires 38](https://iceberg.apache.org/spec/#primitive-types). It's possible for an Iceberg table to contain a decimal value that exceeds this range.
I have [initiated a discussion](https://github.com/paupino/rust-decimal/issues/354#issuecomment-2411719898) with the upstream to explore potential extensions. However, if we can't find an adequate solution, we might need to switch from `rust_decimal` to other crates that can support `decimal(37, 10)`.
--
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: issues-unsubscribe@iceberg.apache.org.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
---------------------------------------------------------------------
To unsubscribe, e-mail: issues-unsubscribe@iceberg.apache.org
For additional commands, e-mail: issues-help@iceberg.apache.org
Re: [I] rust_decimal only supports precision less than 28 [iceberg-rust]
Posted by "Fokko (via GitHub)" <gi...@apache.org>.
Fokko commented on issue #669:
URL: https://github.com/apache/iceberg-rust/issues/669#issuecomment-3787155087
@xbattlax Thanks for jumping in here. I did some checks and fastnum seems like a good alternative! Feel free to open up a PR 👍
--
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: issues-unsubscribe@iceberg.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
---------------------------------------------------------------------
To unsubscribe, e-mail: issues-unsubscribe@iceberg.apache.org
For additional commands, e-mail: issues-help@iceberg.apache.org
Re: [I] rust_decimal only supports precision less than 28 [iceberg-rust]
Posted by "xbattlax (via GitHub)" <gi...@apache.org>.
xbattlax commented on issue #669:
URL: https://github.com/apache/iceberg-rust/issues/669#issuecomment-3789777610
Thanks @Fokko\! I've opened #2063 with the fastnum migration.
--
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: issues-unsubscribe@iceberg.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
---------------------------------------------------------------------
To unsubscribe, e-mail: issues-unsubscribe@iceberg.apache.org
For additional commands, e-mail: issues-help@iceberg.apache.org
Re: [I] rust_decimal only supports precision less than 28 [iceberg-rust]
Posted by "Xuanwo (via GitHub)" <gi...@apache.org>.
Xuanwo commented on issue #669:
URL: https://github.com/apache/iceberg-rust/issues/669#issuecomment-2561265303
Possible alternative:
- https://crates.io/crates/bigdecimal
- https://crates.io/crates/decimal-rs
--
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: issues-unsubscribe@iceberg.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
---------------------------------------------------------------------
To unsubscribe, e-mail: issues-unsubscribe@iceberg.apache.org
For additional commands, e-mail: issues-help@iceberg.apache.org
Re: [I] rust_decimal only supports precision less than 28 [iceberg-rust]
Posted by "github-actions[bot] (via GitHub)" <gi...@apache.org>.
github-actions[bot] commented on issue #669:
URL: https://github.com/apache/iceberg-rust/issues/669#issuecomment-3310067902
This issue has been automatically marked as stale because it has been open for 180 days with no activity. It will be closed in next 14 days if no further activity occurs. To permanently prevent this issue from being considered stale, add the label 'not-stale', but commenting on the issue is preferred when possible.
--
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: issues-unsubscribe@iceberg.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
---------------------------------------------------------------------
To unsubscribe, e-mail: issues-unsubscribe@iceberg.apache.org
For additional commands, e-mail: issues-help@iceberg.apache.org
Re: [I] rust_decimal only supports precision less than 28 [iceberg-rust]
Posted by "liurenjie1024 (via GitHub)" <gi...@apache.org>.
liurenjie1024 commented on issue #669:
URL: https://github.com/apache/iceberg-rust/issues/669#issuecomment-3333245425
We should keep this an resolve it some day.
--
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: issues-unsubscribe@iceberg.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
---------------------------------------------------------------------
To unsubscribe, e-mail: issues-unsubscribe@iceberg.apache.org
For additional commands, e-mail: issues-help@iceberg.apache.org
Re: [I] rust_decimal only supports precision less than 28 [iceberg-rust]
Posted by "xbattlax (via GitHub)" <gi...@apache.org>.
xbattlax commented on issue #669:
URL: https://github.com/apache/iceberg-rust/issues/669#issuecomment-3789772157
Thanks @Xuanwo\! I've opened #2063 with the fastnum migration.
--
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: issues-unsubscribe@iceberg.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
---------------------------------------------------------------------
To unsubscribe, e-mail: issues-unsubscribe@iceberg.apache.org
For additional commands, e-mail: issues-help@iceberg.apache.org
Re: [I] rust_decimal only supports precision less than 28 [iceberg-rust]
Posted by "Xuanwo (via GitHub)" <gi...@apache.org>.
Xuanwo closed issue #669: rust_decimal only supports precision less than 28
URL: https://github.com/apache/iceberg-rust/issues/669
--
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: issues-unsubscribe@iceberg.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
---------------------------------------------------------------------
To unsubscribe, e-mail: issues-unsubscribe@iceberg.apache.org
For additional commands, e-mail: issues-help@iceberg.apache.org
Re: [I] rust_decimal only supports precision less than 28 [iceberg-rust]
Posted by "xbattlax (via GitHub)" <gi...@apache.org>.
xbattlax commented on issue #669:
URL: https://github.com/apache/iceberg-rust/issues/669#issuecomment-3753751588
## Summary of Decimal Precision Options
The Iceberg spec requires **38 digits** precision. Our current `rust_decimal` only supports 28 digits.
### Candidates
**decimal-rs** - Exactly 38 digits, stack-based, but last release Apr 2023.
**bigdecimal** - Unlimited precision but uses heap allocation (BigInt internally), slower for hot paths.
**fastnum** - Exactly 38 digits, stack-based (128-bit + 64-bit flags), zero heap allocation, faster than rust_decimal (10-84 ns vs 51-133 ns for add/sub), actively maintained (v0.7.4, Dec 2025), serde support.
### Recommendation
**fastnum** - Matches Iceberg spec exactly, best performance, no heap allocation, actively maintained.
Happy to work on this if there's agreement on the approach.
--
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: issues-unsubscribe@iceberg.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
---------------------------------------------------------------------
To unsubscribe, e-mail: issues-unsubscribe@iceberg.apache.org
For additional commands, e-mail: issues-help@iceberg.apache.org