A performance issue has been addressed in this release of JBoss EAP 6. The issue was caused by `StatefulComponentInstanceInterceptor` which performed a small concatenation in a debug log statement for every invocation. The subsequent extra allocations could cause increased Garbage Collection activity during stateful EJB invocation, leading to higher per-invocation processing overhead. This release of the product has incorporated an upstream patch which resolves this issue and per-invocation overhead is substantially decreased.
Description of problem:
Due to a minor bug in the StatefulComponentInstanceInterceptor, a string concatenation is performed for every invocation which causes a substantial amount of GC churn. The fix is simple and low-risk and has been thoroughly tested upstream.
Version-Release number of selected component (if applicable):
Steps to Reproduce:
1. Process lots of invocations in a tight loop
2. Observe high allocation counts and GC activity
3. ~ fin ~
Useless string construction
No string construction unless log level is set to DEBUG or higher
The upstream version of this fix is here: https://github.com/wildfly/wildfly/commit/a6727c715a9d04c6991
qa-acked myself since I wanted to clear out as many as possible before going to bed, and the fix is trivial
Verified in 6.3.0.DR0.
Changed <literal></literal> tags in Doc Text to ticks (`) to fix Bug 1096865