[IGN-5271]Perspective Styles super slow to save every time


For some reason, saving any Perspective Style is taking upwards of 38s to save… Not sure how to diagnose the issue. It affects all designers, local and remote. It doesn’t affect saving Views or seemingly anything else, only Perspective Styles :confused:

A thread dump while it’s happening would be the most useful thing.

The best way to get that requires you to have separately installed a JDK on the machine you’re running the designer on, though; jstack isn’t included in our runtime distribution.

Can I get the right dump from a flight recording? I have mission control installed already so that would be easiest if possible

Yeah, any source of thread dump should do. Just want to see what’s actually happening during that time.

Hmm, I assume I need to get the dump from the designer? Also, I was mistaken, it only affects remote designers i.e. connected to site through VPN. It doesn’t affect a Designer started on the gateway server itself

I ended up using jstack, captured a few from the remote designer:
tdump2.txt (67.3 KB)
tdump3.txt (65.2 KB)
tdump4.txt (65.3 KB)
tdump5.txt (69.5 KB)
tdump6.txt (65.2 KB)

You might need thread dumps from the gateway while it’s slow also.

1 Like

tdump_designer_1.txt (65.3 KB)
tdump_designer_2.txt (65.3 KB)
tdump_server_1.txt (302.0 KB)
tdump_server_2.txt (215.3 KB)

Does it get substantially slower if you have more views open in the designer?

The designer (local Java Swing) is reaching out to JXBrowser to tell the running design session (local Javascript) that the styles got updated so it can apply them to the page.

I don’t think it should be that slow (or sensitive to network latency) but that’s approximately what’s happening, based on the designer thread dumps.

Interesting, yes it does. When I close all views it’s instantaneous, however with:

  • 1 view open - 5s
  • 2 views open - 8.5s
  • 3 views open - 13s

Yeah, that’s what I expected. It’s going through each jxbrowser instance (serially) and applying the new styles to them.

I filed a ticket to see if we can push that to a background thread or otherwise handle it differently.