You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
I'm trying to allocate datanode a node id based on the hash of the node name, for example, 14695981039346656037, then I got an out-of-range error, although we did define node id as u64 type:
Error { inner: OutOfRange(Some("u64")) }
After some digging, I found out the reason is that the toml doesn't support u64. Actually, it supports i64 internally(toml-rs/toml#705). Any numbers that are bigger than i64::MAX will fail to parse.
Although u64 type is not a human-readable type for toml, it's helpful when we want to use some complicate node id allocation.
Advices
For the workaround, I think we can use string type for node id in toml format and parse it as u64 type. However, it would be a breaking change.
Implementation challenges
No response
The text was updated successfully, but these errors were encountered:
What type of enhancement is this?
Configuration
What does the enhancement do?
Background
I'm trying to allocate datanode a node id based on the hash of the node name, for example,
14695981039346656037
, then I got an out-of-range error, although we did define node id asu64
type:After some digging, I found out the reason is that the toml doesn't support
u64
. Actually, it supportsi64
internally(toml-rs/toml#705). Any numbers that are bigger thani64::MAX
will fail to parse.Although
u64
type is not a human-readable type for toml, it's helpful when we want to use some complicate node id allocation.Advices
For the workaround, I think we can use string type for node id in toml format and parse it as u64 type. However, it would be a breaking change.
Implementation challenges
No response
The text was updated successfully, but these errors were encountered: