Close automatically idle proof sessions?


we would like to enable the FIFO queues, to switch queries to asynchronous mode when the occupancy (number of opened session) is higher than defined in the proof conf file.

But the problem I found is that users could just open proof sessions

to check logs, old queries or to do nothing, and leave the session open forever, reserving resources and avoiding other queries being processed.

Is there any way to put a timeout on idle opened sessions (those that are not really processing events), and close the session after this timeout?

PD: I tried the directive xpd.clientmgr, but I does not seem to do what we need.

thanks, carlos

Hi Carlos,

Yes, try this one

           xpd.putrc ProofServ.IdleTimeout 60

The value is in seconds.

Cheers, Gerri

Hi Gerri,

It took me a while to test it because I still had to move to 5.28.
It works perfectly, thanks Gerri.

Still from the client I get an error message when terminating the session due to the timeout (plus the warning that the error should be ignore if it appears).
Is there any way to get rid of this error?

cheers, carlos

// PROOF session at (atltest02-1294489965-31051) terminated because idle for more than 60 secs
// Please IGNORE any error message possibly displayed below

| idle-timeout
Info in TXSlave::HandleError: got called … fProof: 0x11f7b350, fSocket: 0x12022220 (valid: 1)
Info in TXSlave::HandleError: 0x12021e80: proof: 0x11f7b350
TXSlave::HandleError: 0x12021e80: DONE …
Info in TProof::MarkBad:
+++ Message from local session : marking (0) as bad
+++ Reason: received kPROOF_FATAL

+++ Most likely your code crashed
+++ Please check the session logs for error messages either using
+++ the ‘Show logs’ button or executing
+++ root [] TProof::Mgr(“”)->GetSessionLogs()->Display("*")