on my server using the supplied json.
time curl http://myserver/job/tests/job/JENKINS-24457/1/testReport/
real 0m0.290s
user 0m0.015s
sys 0m0.046s
So yes I think the code is ok.
try setting initial heap == max heap (or something higher)
The VM doesn't always expand the heap when a GC frees memory.
I see exactly this issue in the unit tests if the VM doesn't have enough heap and it is caused by GC removing the test result which the plugin needs in order to render the plugin - so each and every scenario requires the test result to be loaded again and again and again and again...
@danielbeck - yes there is free server RAM if you throw away your disk cache - but something heavy on disk like jenkins that's not a good idea in my experience.
@teilo, are you sure there's no issue in the ui code?
It looks really strange that we had no issues with other reports...