Kibana version:
7.9
Describe the bug:
Starting in 7.9, a user that previously had no issues loading Kibana Heatmaps in 7.8 now experiences severe slowdown taking several minutes to load where it used to only take a few seconds. This issue was reported to us but I was unable to repro locally so it may be data or quantity-dependent.
I was able to inspect the chrome performance profile and confirm the issue appears to be in baseMergeDeep
which appears to be used internally by lodash
. Has there been a lodash merge-related change since 7.8 that might affect this?
Pinging @elastic/kibana-app (Team:KibanaApp)
I have the exact same issue with a simple multi-series bar chart that was running fine on 7.8. baseMergeDeep
seems to be the culprit indeed according to Chrome performance. I used to be able to view way beyond 10 days on this histogram, but now if I select more than 2 days, it slows down beyond reason, even though the underlying query returns in milliseconds when run in Dev Tools.
I've been experiencing the same CPU high usage and general slowness in other types of visualizations as well with 7.9.
With a debug-enabled Kibana build I've been able to trace the deep call stacks to usages of defaultsDeep
Lodash function from within the visualization library, although I don't know what changed that might have caused the regression. Hope that helps!
Fixed by https://github.com/elastic/kibana/pull/75850, will release in 7.9.1
I confirm I no longer have this issue after upgrading to 7.9.1
Most helpful comment
Fixed by https://github.com/elastic/kibana/pull/75850, will release in 7.9.1