Definition at line 62 of file XrdProofSched.h.
|
| XrdProofSched (const char *name, XrdProofdManager *mgr, XrdProofGroupMgr *grpmgr, const char *cfn, XrdOucError *e=0) |
| Constructor.
|
|
virtual | ~XrdProofSched () |
|
int | CheckFrequency () const |
|
virtual int | Config (bool rcf=0) |
| Configure this instance using the content of file 'cfn'.
|
|
virtual int | DoDirective (XrdProofdDirective *d, char *val, XrdOucStream *cfg, bool rcf) |
| Update the priorities of the active sessions.
|
|
virtual void | DumpQueues (const char *prefix=0) |
| Dump the content of the waiting sessions queue.
|
|
virtual int | Enqueue (XrdProofdProofServ *xps, XrdProofQuery *query) |
| Queue a query in the session; if this is the first querym enqueue also the session.
|
|
virtual int | ExportInfo (XrdOucString &) |
| Fill sbuf with some info about our current status.
|
|
virtual XrdProofdProofServ * | FirstSession () |
| Get first valid session.
|
|
virtual int | GetWorkers (XrdProofdProofServ *xps, std::list< XrdProofWorker * > *, const char *) |
| Get a list of workers that can be used by session 'xps'.
|
|
virtual bool | IsValid () |
|
virtual int | MaxSessions () const |
|
const char * | Name () const |
|
XrdProofdPipe * | Pipe () |
|
virtual int | ProcessDirective (XrdProofdDirective *d, char *val, XrdOucStream *cfg, bool rcf) |
| Update the priorities of the active sessions.
|
|
virtual int | Reschedule () |
| Consider starting some query from the queue.
|
|
virtual int | UpdateProperties () |
|
virtual int | UpdateSession (XrdProofdProofServ *, int=0, void *=0) |
|
| XrdProofdConfig (const char *cfg=0, XrdSysError *edest=0) |
| Main constructor.
|
|
virtual | ~XrdProofdConfig () |
|
const char * | CfgFile () const |
|
void | SetCfgEDest (const char *cfg, XrdSysError *edest) |
| Set config file and error handler.
|
|
#include <XrdProofSched.h>
◆ SchedProtocol
◆ XrdProofSched()
◆ ~XrdProofSched()
virtual XrdProofSched::~XrdProofSched |
( |
| ) |
|
|
inlinevirtual |
◆ CheckFrequency()
int XrdProofSched::CheckFrequency |
( |
| ) |
const |
|
inline |
◆ Config()
int XrdProofSched::Config |
( |
bool |
rcf = 0 | ) |
|
|
virtual |
Configure this instance using the content of file 'cfn'.
Return 0 on success, -1 in case of failure (file does not exists or containing incoherent information).
Reimplemented from XrdProofdConfig.
Definition at line 238 of file XrdProofSched.cxx.
◆ DoDirective()
◆ DoDirectiveResource()
int XrdProofSched::DoDirectiveResource |
( |
char * |
val, |
|
|
XrdOucStream * |
cfg, |
|
|
bool |
|
|
) |
| |
|
protectedvirtual |
◆ DoDirectiveSchedParam()
int XrdProofSched::DoDirectiveSchedParam |
( |
char * |
val, |
|
|
XrdOucStream * |
cfg, |
|
|
bool |
|
|
) |
| |
|
protectedvirtual |
◆ DumpQueues()
void XrdProofSched::DumpQueues |
( |
const char * |
prefix = 0 | ) |
|
|
virtual |
◆ Enqueue()
Queue a query in the session; if this is the first querym enqueue also the session.
Definition at line 278 of file XrdProofSched.cxx.
◆ ExportInfo()
int XrdProofSched::ExportInfo |
( |
XrdOucString & |
sbuf | ) |
|
|
virtual |
Fill sbuf with some info about our current status.
Definition at line 760 of file XrdProofSched.cxx.
◆ FirstSession()
Get first valid session.
The dataset information can be used to assign workers.
Definition at line 322 of file XrdProofSched.cxx.
◆ GetNumWorkers()
Calculate the number of workers to be used given the state of the cluster.
Definition at line 341 of file XrdProofSched.cxx.
◆ GetWorkers()
Get a list of workers that can be used by session 'xps'.
The return code is: -1 Some failure occured; cannot continue 0 A new list has been assigned to the session 'xps' and returned in 'wrks' 1 The list currently assigned to the session is the one to be used 2 No worker could be assigned now; session should be queued
Definition at line 397 of file XrdProofSched.cxx.
◆ IsValid()
virtual bool XrdProofSched::IsValid |
( |
| ) |
|
|
inlinevirtual |
◆ MaxSessions()
virtual int XrdProofSched::MaxSessions |
( |
| ) |
const |
|
inlinevirtual |
◆ Name()
const char * XrdProofSched::Name |
( |
| ) |
const |
|
inline |
◆ Pipe()
◆ ProcessDirective()
◆ RegisterDirectives()
void XrdProofSched::RegisterDirectives |
( |
| ) |
|
|
protectedvirtual |
◆ Reschedule()
int XrdProofSched::Reschedule |
( |
| ) |
|
|
virtual |
Consider starting some query from the queue.
to be called after some resources are free (e.g. by a finished query) This method is doing the full transaction of finding the session to resume, assigning it workers and sending a resume message. In this way there is not possibility of interference with other GetWorkers return 0 in case of success and -1 in case of an error
Definition at line 706 of file XrdProofSched.cxx.
◆ ResetParameters()
void XrdProofSched::ResetParameters |
( |
| ) |
|
|
protectedvirtual |
◆ UpdateProperties()
virtual int XrdProofSched::UpdateProperties |
( |
| ) |
|
|
inlinevirtual |
◆ UpdateSession()
◆ fCheckFrequency
int XrdProofSched::fCheckFrequency |
|
protected |
◆ fConfigDirectives
◆ fEDest
XrdOucError* XrdProofSched::fEDest |
|
protected |
◆ fGrpMgr
◆ fMaxRunning
int XrdProofSched::fMaxRunning |
|
protected |
◆ fMaxSessions
int XrdProofSched::fMaxSessions |
|
protected |
◆ fMgr
◆ fMinForQuery
int XrdProofSched::fMinForQuery |
|
protected |
◆ fName
char XrdProofSched::fName[17] |
|
protected |
◆ fNextWrk
int XrdProofSched::fNextWrk |
|
protected |
◆ fNodesFraction
double XrdProofSched::fNodesFraction |
|
protected |
◆ fOptWrksPerUnit
int XrdProofSched::fOptWrksPerUnit |
|
protected |
◆ fPipe
◆ fQueue
◆ fUseFIFO
bool XrdProofSched::fUseFIFO |
|
protected |
◆ fValid
bool XrdProofSched::fValid |
|
protected |
◆ fWorkerMax
int XrdProofSched::fWorkerMax |
|
protected |
◆ fWorkerSel
int XrdProofSched::fWorkerSel |
|
protected |
proof/proofd/inc/XrdProofSched.h
proof/proofd/src/XrdProofSched.cxx