When the cache is empty (e.g., after a server restart or a skin update), compiling a less file to css takes a lot time.
This show up especially when visiting pages with a Live Data macro, where displaying the Live Data can take up to 20 seconds.
This has two negative consequences:
- the first user to request a less file has a bad user experience
- this increase the changes of having functional tests to fail by timeout because the UI (in particular the Live Data) takes too much time to be displayed, creating a lot of flickers.
The possible solutions are:
- improve the less compilation time (XWIKI-18310)
- compile the less resources ahead of time
- decrease the number of less resources to compile, since their is a static cost that does not depend on the size of the less file to compile (since we include skin.less implicitly)