Regression : very large intergers (beyond 64 bit) cannot be displayed - cannot convert to BigInt - sql lab or charts
- Dominant language
- Python
- Stars
- 74.8k
- Forks
- 18.3k
- Avg merge
- 2d 5h
- Merged PRs (30d)
- 685
Description
### Bug description
Given a table 'mytable' with a 'object_id' column of type 'numeric' , containing only one line with this value `32198334098493770513452193445`
in sql lab : select * from mytable limit 1;
the query "fails to validate", without detailed error.
In a chart
```
Cannot convert 3.2198334098493770513452193445e+28 to a BigInt
```
This used to work on Superset 3.1.3
This fails with superset 6.1.0 (using provided docker image)
(no idea for any other version)
As a workaround one could convert to text in case only display or grouping is required.
it may be related to #44007.
### Screenshots/recordings
_No response_
### Superset version
6.1.0
### Python version
I don't know
### Node version
I don't know
### Browser
Chrome
### Additional context
_No response_
### Checklist
- [x] I have searched Superset docs and Slack and didn't find a solution to my problem.
- [x] I have searched the GitHub issue tracker and didn't find a similar bug report.
- [x] I have checked Superset's logs for errors and if I found a relevant Python stacktrace, I included it here as text in the "additional context" section.
Contributor guide
Research direction
Reproduce the failure in SQL Lab and a chart using the supplied numeric value, then compare behavior between Superset 3.1.3 and 6.1.0 while tracing query validation and BigInt conversion. Done means the query validates and the value can be displayed in both places without requiring a text conversion.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- python, sql
- Domain
- data, data-visualization
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Active
- Clarity
- Mostly clear
- Newbie friendliness
- 48/100