You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
This repository has been archived by the owner on Nov 29, 2018. It is now read-only.
I found in the cleanup thread, there are some slots are never free. After set breakpoint
in the cleanup thread, I found the root cause:
Sometimes, the code throws out IllegalStateException in DefaultRemoteProxy class’ beforeRelease
method.
if (session.getExternalKey() == null) {
throw new IllegalStateException(
"cannot release the resources, they haven't been reserved properly.");
}
For this slot, it should be cleaned up in the registry and get free for another session.
However, it’s not handled in Cleanup thread. Then I can see its inactivity time will
last very long, in my several watches, it reached 1 hour.
Solution: Continue cleaning up for test slot with “ExternalKey is null” situation to
free it.
------------------------------------------ BaseRemoteProxy.java----------------------------------------------------------------------
private void cleanUpSlot(TestSlot slot) {
TestSession session = slot.getSession();
if (session != null) {
long inactivity = session.getInactivityTime();
boolean hasTimedOut = inactivity > timeOutMs;
if (hasTimedOut) {
if (!session.isForwardingRequest()) {
log.logp(Level.WARNING, "SessionCleanup", null,
"session " + session
+ " has TIMED OUT due to client inactivity and will be released.");
try{
((TimeoutListener) proxy).beforeRelease(session);
}catch(IllegalStateException ignore){
log.log(Level.WARNING, ignore.getMessage());
}
registry.terminate(session, SessionTerminationReason.TIMEOUT);
}
}
Reported by shijunjuan on 2013-12-26 07:50:33
The text was updated successfully, but these errors were encountered:
Originally reported on Google Code with ID 6771
Reported by
shijunjuan
on 2013-12-26 07:50:33The text was updated successfully, but these errors were encountered: