The default two-way binding is too slow right now. Somehow this wasn't caught in testing, even though large reports were tested. It might have to do with the complexity of experiments - if Angular is binding entire experiment/toolchain objects, the perf hit could've slipped through testing.
Edited
Designs
Child items
...
Show closed items
Linked items
0
Link issues together to show that they're related.
Learn more.
@andre.anjos have you seen this issue at all? Somehow I'm not able to reproduce this locally - everything is working fine (even when setting my internet speeds to "Slow 3G" in Chromium).
Just for posterity, here was my initial diagnosis:
"""
This came up while someone was creating a report on production.
The plots for a group regenerate whenever an alias of an experiment in the group changes, because the plots use the group's aliases as labels. Unfortunately this regeneration is synchronous: every time an alias changes, the plot needs to be regenerated before the user can change the alias again.
This isn't an issue with local & staging testing, because the network speeds are fast enough that we dont notice the time taken to fetch a new plot image. On production, however, it takes ~1-5seconds to receive an updated plot image, and all this time the user cannot continue changing the alias. This leads to a artificially cripplingly slow typing experience, as a user can only type 1 character every few seconds.
To fix, the plot regeneration should be uncoupled from the user input. I honestly thought it was like this already, but apparently not.
Right now, a workaround is to not add plots until after you've finished editing the group experiment aliases.
Jaden DIEFENBAUGHchanged title from Unsync report alias changes with plot regeneration to Perf issue with Angular's 2-way binding makes complex reports unusable
changed title from Unsync report alias changes with plot regeneration to Perf issue with Angular's 2-way binding makes complex reports unusable