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.
Yes, try this one
xpd.putrc ProofServ.IdleTimeout 60
The value is in seconds.
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?
// PROOF session at atltest02.pic.es (atltest02-1294489965-31051) terminated because idle for more than 60 secs
// Please IGNORE any error message possibly displayed below
Info in TXSlave::HandleError: 0x12021e80:atltest02.pic.es:0 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 atltest02.pic.es:1093 (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(“email@example.com:1093”)->GetSessionLogs()->Display("*")