Skip to content

Error when passing large numbers to RPC endpoints that expect u128 #2516

@monitz87

Description

@monitz87

When using custom RPCs that receive inputs of type u128, passing numbers with hex representations with 14 significant digits or more results in an error.

For example, passing the number 4503599627370496 (0x10000000000000 in hex, 14 digits) will have the node respond with -32602: Invalid params: invalid type: string "0x00000000000000000010000000000000", expected u128.. Passing one less, 4503599627370496 (which is 0xfffffffffffff in hex, 13 digits) works just fine.

Steps to reproduce: https://polkadot.js.org/apps/#/rpc (Edgeware chain), contracts.call endpoint, input 4503599627370495 (atto), submit. All should work fine. Attempt the same with 4503599627370496 and you should get an error.

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions