Hi,

I use JRebel and have a performance issue some of the time. Some request take 2sec instead of 100ms for no apparent reasons.

After some research I found out that this was only happening when JRebel was enabled and that it did not happen with version 2.3.16.3.

So I searched for the cause and found that a little bit of code was removed between the 2 versions and leading to a major performance difference.


     Removed code

PackageBasedActionConfigBuilder.buildUrlSet l.461 (v 2.3.16.3) :

if (includeJars == null) {
    urlSet = urlSet.exclude(".*?\\.jar(!/|/)?");
} else {
    ...
}

The removed code made the size of urlSet go from 140 to 3. This urlSet will latter be used to explore and find Framework relevant resources hence the performance hit.

*Note:* I probably would not have detected the issue if I was not using JRebel but this should in all logic impact every Struts user since this code impacts server startup. I speculate that in my case it adds about 2 seconds to server startup which is a pity.


     Questions:

Why was this removed? Could you make this behavior configuration sensitive rather than altogether gone? How can I work around it if at all possible?


Best regards,
Thim.
--
*Thim Anneessens
IT Department *

ictjob group

Reply via email to