Bug description

In Superset 5.0.0 (master), setting the "Metric currency" field in a dataset's Metrics tab does not persist after saving—the field disappears or is not displayed, and further edits may result in errors. This is a regression from 4.1.3, caused by a recent change that migrated the currency field to a nested JSON object (symbol and symbolPosition), while the frontend UI does not yet fully support this structure. The backend now strictly validates the new format, so the value is lost or corrupted on save. This bug is fixed in a PR merged after 5.0.0 and will be included in the next release. As a workaround, users can remove and recreate the affected metric or edit the dataset JSON directly via the API, ensuring the currency field is a valid object with both symbol and symbolPosition.

Image

Metric currency setted after, later see, no see !At 4.1.3,no problem!

Screenshots/recordings

No response

Superset version

5.0.0

Python version

3.9

Node version

16

Browser

Chrome

Additional context

No response

Checklist

  • [ ] I have searched Superset docs and Slack and didn't find a solution to my problem.
  • [ ] I have searched the GitHub issue tracker and didn't find a similar bug report.
  • [ ] 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.

Comment From: penetest

Image Setted after ,Metric currency no see!

Image

Comment From: dosubot[bot]

Hi @penetest! I'm Dosu and I’m helping the superset team.

This is a known regression in Superset 5.0.0/master: after setting the metric currency in the Metrics tab, the field disappears or doesn't save correctly. The root cause is a recent change where the metric currency field was migrated to a nested JSON object (symbol and symbolPosition), but the frontend UI in 5.0.0 doesn't fully support this new structure, so the value is lost or corrupted on save. The fix for this issue was merged after the 5.0.0 release and will be included in the next release (such as 5.0.1, 5.1.0, or 6.0.0) — see details and PR #33682.

As a workaround, you can remove and recreate the affected metric, or edit the dataset JSON directly via the API, making sure the currency field is a valid object with both symbol and symbolPosition. For a permanent fix, upgrade to the next release once it's available.

To reply, just mention @dosu.


How did I do? Good | Irrelevant | Incorrect | Verbose | Hallucination | Report 🐛 | Other  Chat with Dosu Join Discord Share on X

Comment From: sadpandajoe

@dosu give me a summary of this issue that i can update the description with.

Comment From: dosubot[bot]

In Superset 5.0.0 (master), setting the "Metric currency" field in a dataset's Metrics tab does not persist after saving—the field disappears or is not displayed, and further edits may result in errors. This is a regression from 4.1.3, caused by a recent change that migrated the currency field to a nested JSON object (symbol and symbolPosition), while the frontend UI does not yet fully support this structure. The backend now strictly validates the new format, so the value is lost or corrupted on save. This bug is fixed in a PR merged after 5.0.0 and will be included in the next release. As a workaround, users can remove and recreate the affected metric or edit the dataset JSON directly via the API, ensuring the currency field is a valid object with both symbol and symbolPosition.

To reply, just mention @dosu.


How did I do? Good | Irrelevant | Incorrect | Verbose | Hallucination | Report 🐛 | Other  Chat with Dosu Join Discord Share on X