I'm having an issue querying the Salesforce API with a number larger than the max for a 32-bit integer.
I don't think it's code-based as the problem is also encountered when using the Salesforce developer console.
I'm trying to query WHERE custom_field = xxx. custom_field set to Number(18,0) and is able to store the value I'm trying to SELECT against.
If I test SELECT x FROM y WHERE custom_field = 2147483647 in the developer console, it executes without any issues. Any numbers 'smaller' than this value work fine.
If I test SELECT x FROM y WHERE custom_field = 2147483648, I get 'Unknown error parsing query'. Any numbers 'bigger' than this value aren't accepted.
I've tried passing the large number in quotes, but (I assume because the field is of type Number) I get 'ERROR at Row:1:Column:42 value of filter criterion for field 'custom_field' must be of type double and should not be enclosed in quotes'
I've tried prefixing the number with 'd' to note it's a double, in case it wasn't perceived as such but that didn't work either.
Any help would be greatly appreciated.