-
Notifications
You must be signed in to change notification settings - Fork 13.1k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
revert(#17570): fix dashboard editing for dashboards with non-ascii characters #17753
Conversation
…ror (apache#17707)" This reverts commit dad8c20.
…che#17570)" This reverts commit 12bd1fc.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM.
I think we need to revert related PR from master ASAP. After our recent release, all the newly updated dashboards, their position_json are inserted into json_metadata. It's troublesome to clean this up.
Codecov Report
@@ Coverage Diff @@
## master #17753 +/- ##
==========================================
- Coverage 67.77% 67.75% -0.02%
==========================================
Files 1602 1602
Lines 64151 64066 -85
Branches 6773 6764 -9
==========================================
- Hits 43476 43407 -69
+ Misses 18822 18812 -10
+ Partials 1853 1847 -6
Flags with carried forward coverage won't be shown. Click here to find out more.
Continue to review full report at Codecov.
|
@serenajiang I can't reproduce the issue with the steps that you shared on current master (07bbe84). Is there any other way to trigger the bug? Screen.Recording.2021-12-15.at.10.57.37.mov |
Confirmed with @zhaoyongjie and @villebro that they can't repro either 🙁 |
@serenajiang @graceguo-supercat as hard as I tried I could not reproduce either. Do you have any additional information to help with reproducing the problem? Please watch the video below. If we can reproduce it a fix might be a more desirable way to solve this problem and it might be as quick. DEV.Box.plot.mp4 |
|
Hello @graceguo-supercat Erik gave us a hint that the limit might be the problem as you just correctly pointed out. I have released a PR #17766 that removes the positions from the metadata as they are unnecessarily saved and tagged you there. Thank you 🙏 |
@geido @kgabryje We initially thought the size was the problem too, but we realized that it was emojis from repro with small dashboard. More specific repro instructions:
Removing positions should fix this problem, since afaik, there aren't any other ways for emojis to get in. Thanks for the PR! |
SUMMARY
The bug: When a user saved a dashboard that contained a chart with non-ascii characters, the json_metadata became malformed, causing the dashboard to fail to load. The root cause is in #17570, which added
positions
into the json_metadata blob. Something went wrong in the json parsing which causes json_metadata to be truncated if the positions json contains emojis or other non-standard characters.The root cause PR is pretty large, so we had trouble figuring out where this goes wrong. I suspect the fix forward is some combination of
positions
json, since it's already contained by a different columnOpening this revert PR as a starting point. This PR reverts #17570 and the accompanying #17707.
TESTING INSTRUCTIONS
to reproduce bug:
to verify this fix:
ADDITIONAL INFORMATION
@geido @etr2460 @graceguo-supercat @rusackas