Bug #4226
closedHigh memory usage when stylesheet aborts with exception
0%
Description
We're in the process of upgrading (license purchase with legal / purchasing) ... but in the mean time we have to keep using 9.1.0.8
If our app runs the same 2 or 3 transforms over and over (eg. constant stream of 30 requests run in parallel), memory usage is as expected. GC kicks in regularly and the app keeps running at a constant thru put.
If (however) we make one of the stylesheets error with an exception (eg. pass an illegal input into the normalize-string() function), we see Eden grow to the point where the app enters "thrash" and performance degrades to becoming unusable.
The app caches Templates (guava cache) and runs each transform via a new Transformer created using Templates#newTransformer()
If we clear the cache (deleting all Templates and forcing the app to reload + cache them), the Eden space clears down and the process repeats (aka. Eden starts growing to the point where the app stops).
Are the 9.1.08 transformers doing something in their unhappy path that would consume memory?
If yes, is there a way to manually clear memory in my app without discarding the cached Templates?
I'm not asking for a fix, just a workaround.
I can provide graphs showing memory usage and code snippets if required.
Stewart
Please register to edit this issue