Hello,
Analyzing Jenkins' Remoting Component source code and agents' log files I've found a lot of warnings regarding "
reportStats".
In logs:
2017-06-05 23:58:55.789+0200 [id=28820] WARNING h.r.RemoteInvocationHandler$Unexporter#reportStats: The 5 minute average rate is 309.5±87.0/sec. At the 95% c
onfidence level this is above 100.0/sec. If this message is repeated often in the logs then seriously consider setting system property 'hudson.remoting.Remote
InvocationHandler.Unexporter.retainOrigin' to 'false' to trade debug diagnostics for reduced memory pressure.
2017-06-06 00:02:25.393+0200 [id=28835] INFO h.r.RemoteInvocationHandler$Unexporter#reportStats: rate(1min) = 187.4±166.4/sec; rate(5min) = 278.4±122.9/s
ec; rate(15min) = 281.8±122.3/sec; rate(total) = 18.4±83.2/sec; N = 84,223
I source
code:
if (m15Std > 1 && 100 < m15Avg - 2 * m15Std) {
if (tStd > 1 && 100 < tAvg - 2 * tStd) {
logger.log(Level.SEVERE,
retainOrigin ?
"The all time average rate is {0,number,0.0}±{1,number,0.0}/sec. "
+ "The 15 minute average rate is {2,number,0.0}±{3,number,0.0}/sec. "
+ "At the 95% confidence level both are above 100.0/sec. "
+ "If this message is repeated often in the logs then PLEASE "
+ "seriously consider setting system property ''hudson.remoting"
+ ".RemoteInvocationHandler.Unexporter.retainOrigin'' to "
+ "''false'' to trade debug diagnostics for reduced memory "
+ "pressure."
: "The all time average rate is {0,number,0.0}±{1,number,0.0}/sec. "
+ "The 15 minute average rate is {2,number,0.0}±{3,number,0.0}/sec. "
+ "At the 95% confidence level both are above 100.0/sec. ",
new Object[]{tAvg, tStd, m15Avg, m15Std})
But I haven't find anything about on Remoting Configuration
page where "
Unexporter.
retainOrigin" is not mentioned at all.
For what purpose does "RemoteInvocationHandler$Unexporter#
reportStats" report this data?
What does "
retainOrigin" flag do?
When should I explicitly disable "
retainOrigin" as asked.
With Regards,
Lukasz.