Open thomas11 opened 1 year ago
Since this an ID and not actually a number, we should consider changing the type to string (working around https://github.com/pulumi/pulumi/pull/13868).
We might also need to consider proactively detecting overflow and making it visible.
We should do this for output values. We won't be able to do this for input values.
Another large number issue: https://github.com/pulumi/pulumi-gcp/issues/877
Here's another instance of this - I closed this one as a duplicate of https://github.com/pulumi/pulumi-gcp/issues/1036 - https://github.com/pulumi/pulumi-gcp/issues/1836
https://github.com/pulumi/pulumi-databricks/issues/55 is likely another instance of this.
We can't make progress here until https://github.com/pulumi/pulumi/issues/14242 is closed unless we unilaterally decide to encode all numbers as strings in the state and then re-parse.
IN cases where these are identifiers, have we tried remapping them to strings at Pulumi level (and possibly fixing up any accidental parsing that truncates, though TF-level representations are usually good with big.Float internals). That'd be a breaking change but perhaps worth considering in some of these cases.
I think that's what @lunaris was looking at doing for the new relic provider.
I think that's what @lunaris was looking at doing for the new relic provider.
Very similar. Basically, the problem is that int
is not a good type for an id.
Per conversation with @iwahbe, without Pulumi CLI support for large integers our best bet is to map fields of this type to the String type, which is currently supported and rolled out to GCP. What do we need to close this? Perhaps a quick playbook for provider authors explaining the string workaround?
I think we will need https://github.com/pulumi/pulumi/issues/14242 to genuinely close this, since users can still be bitten by this issue and provider authors don't have a universally applicable fix.
Right now, this is a tracking issue for https://github.com/pulumi/pulumi/issues/14242.
Reported in pulumi/pulumi-gcp#1036.
The upstream GCP provider defines this property:
The pulumi-gcp user observes this:
This is an integer overflow as shown by the JS console: