Class providing the PROOF server.
It can act either as the master server or as a slave server, depending on its startup arguments. It receives and handles message coming from the client or from the master server.
Definition at line 66 of file TProofServ.h.
Public Types | |
enum | EQueryAction { kQueryOK , kQueryModify , kQueryStop , kQueryEnqueued } |
enum | EStatusBits { kHighMemory = BIT(17) } |
Public Types inherited from TApplication | |
enum | EExitOnException { kDontExit , kExit , kAbort } |
enum | EFileBits { kExpression = BIT(14) } |
enum | EStatusBits { kProcessRemotely = BIT(15) , kDefaultApplication = BIT(16) } |
Public Types inherited from TObject | |
enum | { kIsOnHeap = 0x01000000 , kNotDeleted = 0x02000000 , kZombie = 0x04000000 , kInconsistent = 0x08000000 , kBitMask = 0x00ffffff } |
enum | { kSingleKey = BIT(0) , kOverwrite = BIT(1) , kWriteDelete = BIT(2) } |
enum | EDeprecatedStatusBits { kObjInCanvas = BIT(3) } |
enum | EStatusBits { kCanDelete = BIT(0) , kMustCleanup = BIT(3) , kIsReferenced = BIT(4) , kHasUUID = BIT(5) , kCannotPick = BIT(6) , kNoContextMenu = BIT(8) , kInvalidObject = BIT(13) } |
Public Member Functions | |
TProofServ (Int_t *argc, char **argv, FILE *flog=0) | |
Main constructor. | |
virtual | ~TProofServ () |
Cleanup. | |
virtual Int_t | CreateServer () |
Finalize the server setup. | |
virtual void | DisableTimeout () |
virtual void | EnableTimeout () |
void | FlushLogFile () |
Reposition the read pointer in the log file to the very end. | |
TObject * | Get (const char *namecycle) |
Get object with name "name;cycle" (e.g. | |
Int_t | GetActSessions () const |
const char * | GetCacheDir () const |
TProofLockPath * | GetCacheLock () |
const char * | GetConfDir () const |
const char * | GetConfFile () const |
Float_t | GetCpuTime () const |
const char * | GetDataDir () const |
const char * | GetDataDirOpts () const |
Float_t | GetEffSessions () const |
TList * | GetEnabledPackages () const |
const char * | GetGroup () const |
Int_t | GetGroupId () const |
Int_t | GetGroupSize () const |
const char * | GetImage () const |
Int_t | GetLogLevel () const |
Long64_t | GetMsgSizeHWM () const |
TDSetElement * | GetNextPacket (Long64_t totalEntries=-1) |
Get next range of entries to be processed on this server. | |
void | GetOptions (Int_t *argc, char **argv) |
Get and handle command line options. | |
const char * | GetOrdinal () const |
TPackMgr * | GetPackMgr () const |
const char * | GetPrefix () const |
TProof * | GetProof () const |
Int_t | GetProtocol () const |
Int_t | GetQuerySeqNum () const |
Float_t | GetRealTime () const |
const char * | GetService () const |
const char * | GetSessionDir () const |
const char * | GetSessionTag () const |
TSocket * | GetSocket () const |
const char * | GetTopSessionTag () const |
Int_t | GetTotSessions () const |
const char * | GetUser () const |
const char * | GetWorkDir () const |
virtual EQueryAction | GetWorkers (TList *workers, Int_t &prioritychange, Bool_t resume=kFALSE) |
Get list of workers to be used from now on. | |
virtual void | HandleException (Int_t sig) |
Exception handler: we do not try to recover here, just exit. | |
virtual void | HandleSigPipe () |
Called when the client is not alive anymore (i.e. | |
virtual void | HandleSocketInput () |
Handle input coming from the client or from the master server. | |
virtual Int_t | HandleSocketInput (TMessage *mess, Bool_t all) |
Process input coming from the client or from the master server. | |
virtual void | HandleTermination () |
virtual void | HandleUrgentData () |
Handle Out-Of-Band data sent by the master or client. | |
void | Interrupt () |
Bool_t | IsEndMaster () const |
Bool_t | IsMaster () const |
Bool_t | IsParallel () const |
True if in parallel mode. | |
Bool_t | IsTopMaster () const |
void | LogToMaster (Bool_t on=kTRUE) |
void | Print (Option_t *option="") const |
Print status of slave server. | |
Int_t | ReceiveFile (const char *file, Bool_t bin, Long64_t size) |
Receive a file, either sent by a client or a master server. | |
virtual void | ReleaseWorker (const char *) |
void | Reset (const char *dir) |
Reset PROOF environment to be ready for execution of next command. | |
void | RestartComputeTime () |
Reset the compute time. | |
void | Run (Bool_t retrn=kFALSE) |
Main server eventloop. | |
void | SendAsynMessage (const char *msg, Bool_t lf=kTRUE) |
Send an asychronous message to the master / client . | |
virtual void | SendLogFile (Int_t status=0, Int_t start=-1, Int_t end=-1) |
Send log file to master. | |
void | SendParallel (Bool_t async=kFALSE) |
Send number of parallel nodes to master or client. | |
void | SendStatistics () |
Send statistics of slave server to master or client. | |
virtual void | Terminate (Int_t status) |
Terminate the proof server. | |
void | TruncateLogFile () |
Truncate the log file to the 80% of the required max size if this is set. | |
Int_t | UpdateSessionStatus (Int_t xst=-1) |
Update the session status in the relevant file. | |
Public Member Functions inherited from TApplication | |
TApplication (const char *appClassName, Int_t *argc, char **argv, void *options=0, Int_t numOptions=0) | |
Create an application environment. | |
virtual | ~TApplication () |
TApplication dtor. | |
virtual const char * | ApplicationName () const |
Int_t | Argc () const |
char ** | Argv () const |
char * | Argv (Int_t index) const |
Return specified argument. | |
void | ClearInputFiles () |
Clear list containing macro files passed as program arguments. | |
EExitOnException | ExitOnException (EExitOnException opt=kExit) |
Set the exit on exception option. | |
virtual TApplicationImp * | GetApplicationImp () |
TApplication * | GetAppRemote () const |
const char * | GetIdleCommand () const |
TSignalHandler * | GetSignalHandler () const |
virtual void | HandleIdleTimer () |
Handle idle timeout. | |
virtual Bool_t | HandleTermInput () |
virtual void | Hide () |
virtual void | Iconify () |
virtual void | Init () |
void | InitializeGraphics () |
Initialize the graphics environment. | |
TObjArray * | InputFiles () const |
virtual Bool_t | IsCmdThread () |
Bool_t | IsRunning () const |
virtual void | KeyPressed (Int_t key) |
Emit signal when console keyboard key was pressed. | |
virtual void | LineProcessed (const char *line) |
Emit signal when a line has been processed. | |
virtual void | Lower () |
virtual void | ls (Option_t *option="") const |
Show available sessions. | |
Bool_t | NoLogoOpt () const |
Bool_t | NoLogOpt () const |
virtual void | Open () |
void | OpenInBrowser (const TString &url) |
The function generates and executes a command that loads the Doxygen URL in a browser. | |
void | OpenReferenceGuideFor (const TString &strippedClass) |
It opens the online reference guide, generated with Doxygen, for the chosen scope (class/namespace/struct) or member (method/function/ data member/enumeration/enumerator. | |
virtual Long_t | ProcessFile (const char *file, Int_t *error=0, Bool_t keep=kFALSE) |
Process a file containing a C++ macro. | |
virtual Long_t | ProcessLine (const char *line, Bool_t sync=kFALSE, Int_t *error=0) |
Process a single command line, either a C++ statement or an interpreter command starting with a ".". | |
Bool_t | QuitOpt () const |
virtual void | Raise () |
virtual void | RemoveIdleTimer () |
Remove idle timer. Normally called via TROOT::Idle(0). | |
Bool_t | ReturnFromRun () const |
virtual void | ReturnPressed (char *text) |
Emit signal when return key was pressed. | |
virtual void | SetEchoMode (Bool_t mode) |
Set console echo mode: | |
virtual void | SetIdleTimer (UInt_t idleTimeInSec, const char *command) |
Set the command to be executed after the system has been idle for idleTimeInSec seconds. | |
void | SetReturnFromRun (Bool_t ret) |
virtual void | Show () |
virtual void | StartIdleing () |
Called when system starts idleing. | |
virtual void | StopIdleing () |
Called when system stops idleing. | |
virtual Int_t | TabCompletionHook (char *buf, int *pLoc, std::ostream &out) |
What to do when tab is pressed. | |
const char * | WorkingDirectory () const |
Public Member Functions inherited from TObject | |
TObject () | |
TObject constructor. | |
TObject (const TObject &object) | |
TObject copy ctor. | |
virtual | ~TObject () |
TObject destructor. | |
void | AbstractMethod (const char *method) const |
Use this method to implement an "abstract" method that you don't want to leave purely abstract. | |
virtual void | AppendPad (Option_t *option="") |
Append graphics object to current pad. | |
virtual void | Browse (TBrowser *b) |
Browse object. May be overridden for another default action. | |
ULong_t | CheckedHash () |
Check and record whether this class has a consistent Hash/RecursiveRemove setup (*) and then return the regular Hash value for this object. | |
virtual const char * | ClassName () const |
Returns name of class to which the object belongs. | |
virtual void | Clear (Option_t *="") |
virtual TObject * | Clone (const char *newname="") const |
Make a clone of an object using the Streamer facility. | |
virtual Int_t | Compare (const TObject *obj) const |
Compare abstract method. | |
virtual void | Copy (TObject &object) const |
Copy this to obj. | |
virtual void | Delete (Option_t *option="") |
Delete this object. | |
virtual Int_t | DistancetoPrimitive (Int_t px, Int_t py) |
Computes distance from point (px,py) to the object. | |
virtual void | Draw (Option_t *option="") |
Default Draw method for all objects. | |
virtual void | DrawClass () const |
Draw class inheritance tree of the class to which this object belongs. | |
virtual TObject * | DrawClone (Option_t *option="") const |
Draw a clone of this object in the current selected pad for instance with: gROOT->SetSelectedPad(gPad) . | |
virtual void | Dump () const |
Dump contents of object on stdout. | |
virtual void | Error (const char *method, const char *msgfmt,...) const |
Issue error message. | |
virtual void | Execute (const char *method, const char *params, Int_t *error=0) |
Execute method on this object with the given parameter string, e.g. | |
virtual void | Execute (TMethod *method, TObjArray *params, Int_t *error=0) |
Execute method on this object with parameters stored in the TObjArray. | |
virtual void | ExecuteEvent (Int_t event, Int_t px, Int_t py) |
Execute action corresponding to an event at (px,py). | |
virtual void | Fatal (const char *method, const char *msgfmt,...) const |
Issue fatal error message. | |
virtual TObject * | FindObject (const char *name) const |
Must be redefined in derived classes. | |
virtual TObject * | FindObject (const TObject *obj) const |
Must be redefined in derived classes. | |
virtual Option_t * | GetDrawOption () const |
Get option used by the graphics system to draw this object. | |
virtual const char * | GetIconName () const |
Returns mime type name of object. | |
virtual const char * | GetName () const |
Returns name of object. | |
virtual char * | GetObjectInfo (Int_t px, Int_t py) const |
Returns string containing info about the object at position (px,py). | |
virtual Option_t * | GetOption () const |
virtual const char * | GetTitle () const |
Returns title of object. | |
virtual UInt_t | GetUniqueID () const |
Return the unique object id. | |
virtual Bool_t | HandleTimer (TTimer *timer) |
Execute action in response of a timer timing out. | |
virtual ULong_t | Hash () const |
Return hash value for this object. | |
Bool_t | HasInconsistentHash () const |
Return true is the type of this object is known to have an inconsistent setup for Hash and RecursiveRemove (i.e. | |
virtual void | Info (const char *method, const char *msgfmt,...) const |
Issue info message. | |
virtual Bool_t | InheritsFrom (const char *classname) const |
Returns kTRUE if object inherits from class "classname". | |
virtual Bool_t | InheritsFrom (const TClass *cl) const |
Returns kTRUE if object inherits from TClass cl. | |
virtual void | Inspect () const |
Dump contents of this object in a graphics canvas. | |
void | InvertBit (UInt_t f) |
virtual Bool_t | IsEqual (const TObject *obj) const |
Default equal comparison (objects are equal if they have the same address in memory). | |
virtual Bool_t | IsFolder () const |
Returns kTRUE in case object contains browsable objects (like containers or lists of other objects). | |
R__ALWAYS_INLINE Bool_t | IsOnHeap () const |
virtual Bool_t | IsSortable () const |
R__ALWAYS_INLINE Bool_t | IsZombie () const |
void | MayNotUse (const char *method) const |
Use this method to signal that a method (defined in a base class) may not be called in a derived class (in principle against good design since a child class should not provide less functionality than its parent, however, sometimes it is necessary). | |
virtual Bool_t | Notify () |
This method must be overridden to handle object notification. | |
void | Obsolete (const char *method, const char *asOfVers, const char *removedFromVers) const |
Use this method to declare a method obsolete. | |
void | operator delete (void *ptr) |
Operator delete. | |
void | operator delete[] (void *ptr) |
Operator delete []. | |
void * | operator new (size_t sz) |
void * | operator new (size_t sz, void *vp) |
void * | operator new[] (size_t sz) |
void * | operator new[] (size_t sz, void *vp) |
TObject & | operator= (const TObject &rhs) |
TObject assignment operator. | |
virtual void | Paint (Option_t *option="") |
This method must be overridden if a class wants to paint itself. | |
virtual void | Pop () |
Pop on object drawn in a pad to the top of the display list. | |
virtual Int_t | Read (const char *name) |
Read contents of object with specified name from the current directory. | |
virtual void | RecursiveRemove (TObject *obj) |
Recursively remove this object from a list. | |
void | ResetBit (UInt_t f) |
virtual void | SaveAs (const char *filename="", Option_t *option="") const |
Save this object in the file specified by filename. | |
virtual void | SavePrimitive (std::ostream &out, Option_t *option="") |
Save a primitive as a C++ statement(s) on output stream "out". | |
void | SetBit (UInt_t f) |
void | SetBit (UInt_t f, Bool_t set) |
Set or unset the user status bits as specified in f. | |
virtual void | SetDrawOption (Option_t *option="") |
Set drawing option for object. | |
virtual void | SetUniqueID (UInt_t uid) |
Set the unique object id. | |
virtual void | SysError (const char *method, const char *msgfmt,...) const |
Issue system error message. | |
R__ALWAYS_INLINE Bool_t | TestBit (UInt_t f) const |
Int_t | TestBits (UInt_t f) const |
virtual void | UseCurrentStyle () |
Set current style settings in this object This function is called when either TCanvas::UseCurrentStyle or TROOT::ForceStyle have been invoked. | |
virtual void | Warning (const char *method, const char *msgfmt,...) const |
Issue warning message. | |
virtual Int_t | Write (const char *name=0, Int_t option=0, Int_t bufsize=0) |
Write this object to the current directory. | |
virtual Int_t | Write (const char *name=0, Int_t option=0, Int_t bufsize=0) const |
Write this object to the current directory. | |
Public Member Functions inherited from TQObject | |
TQObject () | |
TQObject Constructor. | |
virtual | ~TQObject () |
TQObject Destructor. | |
Bool_t | AreSignalsBlocked () const |
Bool_t | BlockSignals (Bool_t b) |
virtual void | ChangedBy (const char *method) |
void | CollectClassSignalLists (TList &list, TClass *cls) |
Collect class signal lists from class cls and all its base-classes. | |
Bool_t | Connect (const char *signal, const char *receiver_class, void *receiver, const char *slot) |
Non-static method is used to connect from the signal of this object to the receiver slot. | |
virtual void | Connected (const char *) |
virtual void | Destroyed () |
Bool_t | Disconnect (const char *signal=0, void *receiver=0, const char *slot=0) |
Disconnects signal of this object from slot of receiver. | |
virtual void | Disconnected (const char *) |
void | Emit (const char *signal) |
Activate signal without args. | |
template<typename T > | |
void | Emit (const char *signal, const T &arg) |
Activate signal with single parameter. | |
template<typename... T> | |
void | EmitVA (const char *signal_name, Int_t, const T &... params) |
Emit a signal with a varying number of arguments. | |
TList * | GetListOfClassSignals () const |
Returns pointer to list of signals of this class. | |
TList * | GetListOfConnections () const |
TList * | GetListOfSignals () const |
virtual Bool_t | HasConnection (const char *signal_name) const |
Return true if there is any object connected to this signal. | |
virtual void | HighPriority (const char *signal_name, const char *slot_name=0) |
virtual void | LowPriority (const char *signal_name, const char *slot_name=0) |
virtual void | Message (const char *msg) |
virtual Int_t | NumberOfConnections () const |
Return number of connections for this object. | |
virtual Int_t | NumberOfSignals () const |
Return number of signals for this object. | |
Static Public Member Functions | |
static void | ErrorHandler (Int_t level, Bool_t abort, const char *location, const char *msg) |
The PROOF error handler function. | |
static void | FilterLocalroot (TString &path, const char *url="root://dum/") |
If 'path' is local and 'dsrv' is Xrootd, apply 'path.Localroot' settings, if any. | |
static TMap * | GetDataSetNodeMap (TFileCollection *fc, TString &emsg) |
Get a map {server-name, list-of-files} for collection 'fc' to be used in TPacketizerFile. | |
static void | GetLocalServer (TString &dsrv) |
Extract LOCALDATASERVER info in 'dsrv'. | |
static Float_t | GetMemHWM () |
MemHWM getter. | |
static Float_t | GetMemStop () |
MemStop getter. | |
static Long_t | GetResMemMax () |
ResMemMax getter. | |
static Long_t | GetVirtMemMax () |
VirtMemMax getter. | |
static Bool_t | IsActive () |
Static function that returns kTRUE in case we are a PROOF server. | |
static Int_t | RegisterDataSets (TList *in, TList *out, TDataSetManager *dsm, TString &e) |
Register TFileCollections in 'out' as datasets according to the rules in 'in'. | |
static void | ResolveKeywords (TString &fname, const char *path=0) |
Replace <ord>, <user>, <u>, <group>, <stag>, <qnum>, <file>, <rver> and <build> placeholders in fname. | |
static FILE * | SetErrorHandlerFile (FILE *ferr) |
Set the file stream where to log (default stderr). | |
static void | SetLastEntry (Long64_t lastentry) |
Set the last entry before exception. | |
static void | SetLastMsg (const char *lastmsg) |
Set the message to be sent back in case of exceptions. | |
static TProofServ * | This () |
Static function returning pointer to global object gProofServ. | |
Static Public Member Functions inherited from TApplication | |
static void | CreateApplication () |
Static function used to create a default application environment. | |
static Long_t | ExecuteFile (const char *file, Int_t *error=0, Bool_t keep=kFALSE) |
Execute a file containing a C++ macro (static method). | |
static TList * | GetApplications () |
Static method returning the list of available applications. | |
static void | NeedGraphicsLibs () |
Static method. | |
Static Public Member Functions inherited from TObject | |
static Long_t | GetDtorOnly () |
Return destructor only flag. | |
static Bool_t | GetObjectStat () |
Get status of object stat flag. | |
static void | SetDtorOnly (void *obj) |
Set destructor only flag. | |
static void | SetObjectStat (Bool_t stat) |
Turn on/off tracking of objects in the TObjectTable. | |
Static Public Member Functions inherited from TQObject | |
static Bool_t | AreAllSignalsBlocked () |
Returns true if all signals are blocked. | |
static Bool_t | BlockAllSignals (Bool_t b) |
Block or unblock all signals. Returns the previous block status. | |
static Bool_t | Connect (const char *sender_class, const char *signal, const char *receiver_class, void *receiver, const char *slot) |
This method allows to make a connection from any object of the same class to a single slot. | |
static Bool_t | Connect (TQObject *sender, const char *signal, const char *receiver_class, void *receiver, const char *slot) |
Create connection between sender and receiver. | |
static Bool_t | Disconnect (const char *class_name, const char *signal, void *receiver=0, const char *slot=0) |
Disconnects "class signal". | |
static Bool_t | Disconnect (TQObject *sender, const char *signal=0, void *receiver=0, const char *slot=0) |
Disconnects signal in object sender from slot_method in object receiver. | |
Protected Member Functions | |
virtual void | DeletePlayer () |
Delete player instance. | |
virtual Int_t | Fork () |
Fork a child. | |
Int_t | GetSessionStatus () |
Return the status of this session: 0 idle 1 running 2 being terminated (currently unused) 3 queued 4 idle timed-out (not set in here but in TIdleTOTimer::Notify) This is typically run in the reader thread, so access needs to be protected. | |
virtual void | HandleArchive (TMessage *mess, TString *slb=0) |
Handle archive request. | |
virtual Int_t | HandleCache (TMessage *mess, TString *slb=0) |
Handle here all cache and package requests. | |
virtual void | HandleCheckFile (TMessage *mess, TString *slb=0) |
Handle file checking request. | |
virtual Int_t | HandleDataSets (TMessage *mess, TString *slb=0) |
Handle here requests about datasets. | |
virtual void | HandleFork (TMessage *mess) |
Cloning itself via fork. Not implemented. | |
virtual Int_t | HandleLibIncPath (TMessage *mess) |
Handle lib, inc search paths modification request. | |
virtual void | HandleProcess (TMessage *mess, TString *slb=0) |
Handle processing request. | |
virtual void | HandleQueryList (TMessage *mess) |
Handle request for list of queries. | |
virtual void | HandleRemove (TMessage *mess, TString *slb=0) |
Handle remove request. | |
virtual void | HandleRetrieve (TMessage *mess, TString *slb=0) |
Handle retrieve request. | |
virtual void | HandleSubmerger (TMessage *mess) |
Handle a message of type kPROOF_SUBMERGER. | |
virtual Int_t | HandleWorkerLists (TMessage *mess) |
Handle here all requests to modify worker lists. | |
Bool_t | IsIdle () |
Return the idle status. | |
virtual void | MakePlayer () |
Make player instance. | |
virtual void | ProcessNext (TString *slb=0) |
process the next query from the queue of submitted jobs. | |
virtual Int_t | Setup () |
Print the ProofServ logo on standard output. | |
Int_t | SetupCommon () |
Common part (between TProofServ and TXProofServ) of the setup phase. | |
Bool_t | UnlinkDataDir (const char *path) |
Scan recursively the datadir and unlink it if empty Return kTRUE if it can be unlinked, kFALSE otherwise. | |
Protected Member Functions inherited from TApplication | |
TApplication () | |
Default ctor. Can be used by classes deriving from TApplication. | |
virtual void | Help (const char *line) |
The function lists useful commands (".help") or opens the online reference guide, generated with Doxygen (".help scope" or ".help scope::member"). | |
virtual void | LoadGraphicsLibs () |
Load shared libs necessary for graphics. | |
virtual void | MakeBatch () |
Switch to batch mode. | |
virtual Long_t | ProcessRemote (const char *line, Int_t *error=0) |
Process the content of a line starting with ".R" (already stripped-off) The format is. | |
void | SetSignalHandler (TSignalHandler *sh) |
Protected Member Functions inherited from TObject | |
virtual void | DoError (int level, const char *location, const char *fmt, va_list va) const |
Interface to ErrorHandler (protected). | |
void | MakeZombie () |
Protected Member Functions inherited from TQObject | |
virtual void * | GetSender () |
virtual const char * | GetSenderClassName () const |
Static Protected Attributes | |
static Long64_t | fgLastEntry = -1 |
static TString | fgLastMsg |
Static Protected Attributes inherited from TApplication | |
static TList * | fgApplications = nullptr |
Static Protected Attributes inherited from TQObject | |
static Bool_t | fgAllSignalsBlocked = kFALSE |
flag used for suppression of signals | |
Private Member Functions | |
Bool_t | AcceptResults (Int_t connections, TVirtualProofPlayer *mergerPlayer) |
Accept and merge results from a set of workers. | |
Int_t | CatMotd () |
Print message of the day (in the file pointed by the env PROOFMOTD or from fConfDir/etc/proof/motd). | |
Int_t | CleanupWaitingQueries (Bool_t del=kTRUE, TList *qls=0) |
Cleanup the waiting queries list. | |
Int_t | GetCompressionLevel () const |
Int_t | GetPriority () |
Get the processing priority for the group the user belongs too. | |
Bool_t | IsWaiting () |
Return kTRUE if the session is waiting for the OK to start processing. | |
TProofQueryResult * | MakeQueryResult (Long64_t nentries, const char *opt, TList *inl, Long64_t first, TDSet *dset, const char *selec, TObject *elist) |
Create a TProofQueryResult instance for this query. | |
TProofQueryResult * | NextQuery () |
Get the next query from the waiting list. | |
Int_t | OldAuthSetup (TString &wconf) |
Setup authentication related stuff for old versions. | |
Int_t | QueueQuery (TProofQueryResult *pq) |
Add a query to the waiting list Returns the number of queries in the list. | |
void | RedirectOutput (const char *dir=0, const char *mode="w") |
Redirect stdout to a log file. | |
Int_t | SendResults (TSocket *sock, TList *outlist=0, TQueryResult *pq=0) |
Sends all objects from the given list to the specified socket. | |
void | SetIdle (Bool_t st=kTRUE) |
Change the idle status. | |
void | SetQueryRunning (TProofQueryResult *pq) |
Set query in running state. | |
Int_t | UnloadPackage (const char *package) |
Int_t | UnloadPackages () |
Int_t | WaitingQueries () |
Return the number of waiting queries. | |
Static Private Attributes | |
static FILE * | fgErrorHandlerFile = 0 |
static Int_t | fgLogToSysLog = 0 |
static Float_t | fgMemHWM = 0.80 |
static Float_t | fgMemStop = 0.95 |
static Int_t | fgRecursive = 0 |
static Long_t | fgResMemMax = -1 |
static TString | fgSysLogEntity |
static TString | fgSysLogService |
static Long_t | fgVirtMemMax = -1 |
Friends | |
class | TProofServLite |
class | TXProofServ |
Additional Inherited Members | |
Protected Types inherited from TObject | |
enum | { kOnlyPrepStep = BIT(3) } |
Static Protected Member Functions inherited from TApplication | |
static void | Close (TApplication *app) |
Static function used to close a remote application. | |
static TApplication * | Open (const char *url, Int_t debug, const char *script) |
Static function used to attach to an existing remote application or to start one. | |
static Int_t | ParseRemoteLine (const char *ln, TString &hostdir, TString &user, Int_t &dbg, TString &script) |
Parse the content of a line starting with ".R" (already stripped-off) The format is. | |
Static Protected Member Functions inherited from TQObject | |
static Int_t | CheckConnectArgs (TQObject *sender, TClass *sender_class, const char *signal, TClass *receiver_class, const char *slot) |
Checking of consistency of sender/receiver methods/arguments. | |
static TString | CompressName (const char *method_name) |
Removes "const" words and blanks from full (with prototype) method name and resolve any typedefs in the method signature. | |
static Bool_t | ConnectToClass (const char *sender_class, const char *signal, TClass *receiver_class, void *receiver, const char *slot) |
This method allows to make connection from any object of the same class to the receiver object. | |
static Bool_t | ConnectToClass (TQObject *sender, const char *signal, TClass *receiver_class, void *receiver, const char *slot) |
Create connection between sender and receiver. | |
Protected Attributes inherited from TApplication | |
TApplication * | fAppRemote |
Protected Attributes inherited from TQObject | |
TList * | fListOfConnections |
list of signals from this object | |
TList * | fListOfSignals |
Bool_t | fSignalsBlocked |
list of connections to this object | |
#include <TProofServ.h>
Enumerator | |
---|---|
kQueryOK | |
kQueryModify | |
kQueryStop | |
kQueryEnqueued |
Definition at line 73 of file TProofServ.h.
Enumerator | |
---|---|
kHighMemory |
Definition at line 72 of file TProofServ.h.
TProofServ::TProofServ | ( | Int_t * | argc, |
char ** | argv, | ||
FILE * | flog = 0 |
||
) |
Main constructor.
Create an application environment. The TProofServ environment provides an eventloop via inheritance of TApplication. Actual server creation work is done in CreateServer() to allow overloading.
Definition at line 562 of file TProofServ.cxx.
|
virtual |
Cleanup.
Not really necessary since after this dtor there is no live anyway.
Definition at line 1002 of file TProofServ.cxx.
|
private |
Accept and merge results from a set of workers.
Definition at line 2240 of file TProofServ.cxx.
|
private |
Print message of the day (in the file pointed by the env PROOFMOTD or from fConfDir/etc/proof/motd).
The motd is not shown more than once a day. If the file pointed by env PROOFNOPROOF exists (or the file fConfDir/etc/proof/noproof exists), show its contents and close the connection.
Definition at line 1021 of file TProofServ.cxx.
Cleanup the waiting queries list.
The objects are deleted if 'del' is true. If 'qls' is non null, only objects in 'qls' are removed. Returns the number of cleanup queries
Definition at line 6883 of file TProofServ.cxx.
|
virtual |
Finalize the server setup.
If master, create the TProof instance to talk to the worker or submaster nodes. Return 0 on success, -1 on error
Reimplemented in TProofServLite, and TXProofServ.
Definition at line 792 of file TProofServ.cxx.
|
protectedvirtual |
Delete player instance.
Definition at line 5910 of file TProofServ.cxx.
|
inlinevirtual |
Reimplemented in TXProofServ.
Definition at line 316 of file TProofServ.h.
|
inlinevirtual |
Reimplemented in TXProofServ.
Definition at line 317 of file TProofServ.h.
|
static |
The PROOF error handler function.
It prints the message on fgErrorHandlerFile and if abort is set it aborts the application.
Definition at line 5758 of file TProofServ.cxx.
If 'path' is local and 'dsrv' is Xrootd, apply 'path.Localroot' settings, if any.
The final path via the server is dsrv+path.
Definition at line 6969 of file TProofServ.cxx.
void TProofServ::FlushLogFile | ( | ) |
Reposition the read pointer in the log file to the very end.
This allows to "hide" useful debug messages during normal operations while preserving the possibility to have them in case of problems.
Definition at line 6016 of file TProofServ.cxx.
|
protectedvirtual |
Fork a child.
If successful, return 0 in the child process and the child pid in the parent process. The child pid is registered for reaping. Return <0 in the parent process in case of failure.
Definition at line 6668 of file TProofServ.cxx.
TObject * TProofServ::Get | ( | const char * | namecycle | ) |
Get object with name "name;cycle" (e.g.
"aap;2") from master or client. This method is called by TDirectory::Get() in case the object can not be found locally.
Definition at line 1093 of file TProofServ.cxx.
|
inline |
Definition at line 263 of file TProofServ.h.
|
inline |
Definition at line 248 of file TProofServ.h.
|
inline |
Definition at line 281 of file TProofServ.h.
|
inlineprivate |
Definition at line 464 of file TProofServ.h.
|
inline |
Definition at line 239 of file TProofServ.h.
|
inline |
Definition at line 240 of file TProofServ.h.
|
inline |
Definition at line 259 of file TProofServ.h.
|
inline |
Definition at line 250 of file TProofServ.h.
|
inline |
Definition at line 251 of file TProofServ.h.
|
static |
Get a map {server-name, list-of-files} for collection 'fc' to be used in TPacketizerFile.
Returns a pointer to the map (ownership of the caller). Or (TMap *)0 and an error message in emsg.
Definition at line 3712 of file TProofServ.cxx.
|
inline |
Definition at line 264 of file TProofServ.h.
|
inline |
Definition at line 267 of file TProofServ.h.
|
inline |
Definition at line 242 of file TProofServ.h.
|
inline |
Definition at line 254 of file TProofServ.h.
|
inline |
Definition at line 255 of file TProofServ.h.
|
inline |
Definition at line 244 of file TProofServ.h.
Extract LOCALDATASERVER info in 'dsrv'.
Definition at line 6952 of file TProofServ.cxx.
|
inline |
Definition at line 256 of file TProofServ.h.
|
static |
MemHWM getter.
Definition at line 6937 of file TProofServ.cxx.
|
static |
MemStop getter.
Definition at line 6944 of file TProofServ.cxx.
|
inline |
Definition at line 274 of file TProofServ.h.
TDSetElement * TProofServ::GetNextPacket | ( | Long64_t | totalEntries = -1 | ) |
Get next range of entries to be processed on this server.
Definition at line 1143 of file TProofServ.cxx.
Get and handle command line options.
Fixed format: "proofserv"|"proofslave" <confdir>
Reimplemented from TApplication.
Definition at line 1282 of file TProofServ.cxx.
|
inline |
Definition at line 253 of file TProofServ.h.
|
inline |
Definition at line 249 of file TProofServ.h.
|
inline |
Definition at line 276 of file TProofServ.h.
|
private |
Get the processing priority for the group the user belongs too.
This priority is a number (0 - 100) determined by a scheduler (third party process) based on some basic priority the group has, e.g. we might want to give users in a specific group (e.g. promptana) a higher priority than users in other groups, and on the analysis of historical logging data (i.e. usage of CPU by the group in a previous time slot, as recorded in TPerfStats::WriteQueryLog()).
Currently the group priority is obtained by a query in a SQL DB table proofpriority, which has the format: CREATE TABLE proofpriority ( id INT NOT NULL PRIMARY KEY AUTO_INCREMENT, group VARCHAR(32) NOT NULL, priority INT )
Definition at line 5942 of file TProofServ.cxx.
|
inline |
Definition at line 237 of file TProofServ.h.
|
inline |
Definition at line 252 of file TProofServ.h.
|
inline |
Definition at line 260 of file TProofServ.h.
|
inline |
Definition at line 258 of file TProofServ.h.
|
static |
ResMemMax getter.
Definition at line 6930 of file TProofServ.cxx.
|
inline |
Definition at line 238 of file TProofServ.h.
|
inline |
Definition at line 247 of file TProofServ.h.
|
protected |
Return the status of this session: 0 idle 1 running 2 being terminated (currently unused) 3 queued 4 idle timed-out (not set in here but in TIdleTOTimer::Notify) This is typically run in the reader thread, so access needs to be protected.
Definition at line 6789 of file TProofServ.cxx.
|
inline |
Definition at line 245 of file TProofServ.h.
|
inline |
Definition at line 257 of file TProofServ.h.
|
inline |
Definition at line 246 of file TProofServ.h.
|
inline |
Definition at line 262 of file TProofServ.h.
|
inline |
Definition at line 241 of file TProofServ.h.
|
static |
VirtMemMax getter.
Definition at line 6923 of file TProofServ.cxx.
|
inline |
Definition at line 243 of file TProofServ.h.
|
virtual |
Get list of workers to be used from now on.
The list must be provided by the caller.
Reimplemented in TXProofServ.
Definition at line 5695 of file TProofServ.cxx.
Handle archive request.
Definition at line 3600 of file TProofServ.cxx.
Handle here all cache and package requests.
Definition at line 5283 of file TProofServ.cxx.
Handle file checking request.
Definition at line 5132 of file TProofServ.cxx.
Handle here requests about datasets.
Definition at line 6090 of file TProofServ.cxx.
Exception handler: we do not try to recover here, just exit.
Reimplemented from TApplication.
Definition at line 6073 of file TProofServ.cxx.
Cloning itself via fork. Not implemented.
Reimplemented in TProofServLite.
Definition at line 6657 of file TProofServ.cxx.
Handle lib, inc search paths modification request.
Definition at line 5002 of file TProofServ.cxx.
Handle processing request.
Definition at line 3759 of file TProofServ.cxx.
Handle request for list of queries.
Definition at line 4798 of file TProofServ.cxx.
Handle remove request.
Definition at line 4861 of file TProofServ.cxx.
Handle retrieve request.
Definition at line 4925 of file TProofServ.cxx.
|
virtual |
Called when the client is not alive anymore (i.e.
when kKeepAlive has failed).
Reimplemented in TProofServLite, and TXProofServ.
Definition at line 2470 of file TProofServ.cxx.
|
virtual |
Handle input coming from the client or from the master server.
Definition at line 1321 of file TProofServ.cxx.
Process input coming from the client or from the master server.
If 'all' is kFALSE, process only those messages that can be handled during query processing. Returns -1 if the message could not be processed, <-1 if something went wrong. Returns 1 if the action may have changed the parallel state. Returns 2 if the message has to be enqueued. Returns 0 otherwise
Definition at line 1469 of file TProofServ.cxx.
Handle a message of type kPROOF_SUBMERGER.
Definition at line 6435 of file TProofServ.cxx.
|
inlinevirtual |
Reimplemented in TProofServLite, and TXProofServ.
Definition at line 290 of file TProofServ.h.
|
virtual |
Handle Out-Of-Band data sent by the master or client.
Reimplemented in TXProofServ.
Definition at line 2335 of file TProofServ.cxx.
Handle here all requests to modify worker lists.
Definition at line 5594 of file TProofServ.cxx.
|
inline |
Definition at line 291 of file TProofServ.h.
|
static |
Static function that returns kTRUE in case we are a PROOF server.
Definition at line 3476 of file TProofServ.cxx.
|
inline |
Definition at line 292 of file TProofServ.h.
|
protected |
Return the idle status.
Definition at line 6821 of file TProofServ.cxx.
|
inline |
Definition at line 293 of file TProofServ.h.
Bool_t TProofServ::IsParallel | ( | ) | const |
True if in parallel mode.
Definition at line 2496 of file TProofServ.cxx.
|
inline |
Definition at line 295 of file TProofServ.h.
|
private |
Return kTRUE if the session is waiting for the OK to start processing.
Definition at line 6839 of file TProofServ.cxx.
Definition at line 322 of file TProofServ.h.
|
protectedvirtual |
Make player instance.
Definition at line 5886 of file TProofServ.cxx.
|
private |
Create a TProofQueryResult instance for this query.
Definition at line 3533 of file TProofServ.cxx.
|
private |
Get the next query from the waiting list.
The query is removed from the list.
Definition at line 6870 of file TProofServ.cxx.
Setup authentication related stuff for old versions.
Provided for backward compatibility.
Definition at line 3495 of file TProofServ.cxx.
Print status of slave server.
Reimplemented from TObject.
Definition at line 2508 of file TProofServ.cxx.
process the next query from the queue of submitted jobs.
to be called on the top master only.
Definition at line 4419 of file TProofServ.cxx.
|
private |
Add a query to the waiting list Returns the number of queries in the list.
Definition at line 6859 of file TProofServ.cxx.
Receive a file, either sent by a client or a master server.
If bin is true it is a binary file, other wise it is an ASCII file and we need to check for Windows \r tokens. Returns -1 in case of error, 0 otherwise.
Definition at line 2580 of file TProofServ.cxx.
|
private |
Redirect stdout to a log file.
This log file will be flushed to the client or master after each command.
Definition at line 2520 of file TProofServ.cxx.
|
static |
Register TFileCollections in 'out' as datasets according to the rules in 'in'.
Definition at line 4700 of file TProofServ.cxx.
|
inlinevirtual |
Reimplemented in TXProofServ.
Definition at line 305 of file TProofServ.h.
void TProofServ::Reset | ( | const char * | dir | ) |
Reset PROOF environment to be ready for execution of next command.
Definition at line 2550 of file TProofServ.cxx.
Replace <ord>, <user>, <u>, <group>, <stag>, <qnum>, <file>, <rver> and <build> placeholders in fname.
Here, <rver> is the root version in integer form, e.g. 53403, and <build> a string includign version, architecture and compiler version, e.g. '53403_linuxx8664gcc_gcc46' .
Definition at line 6705 of file TProofServ.cxx.
void TProofServ::RestartComputeTime | ( | ) |
Reset the compute time.
Definition at line 1128 of file TProofServ.cxx.
Main server eventloop.
Reimplemented from TApplication.
Definition at line 2652 of file TProofServ.cxx.
Send an asychronous message to the master / client .
Masters will forward up the message to the client. The client prints 'msg' of stderr and adds a '
'/'\r' depending on 'lf' being kTRUE (default) or kFALSE. Returns the return value from TSocket::Send(TMessage &) .
Definition at line 5992 of file TProofServ.cxx.
Send log file to master.
If start > -1 send only bytes in the range from start to end, if end <= start send everything from start.
Definition at line 2667 of file TProofServ.cxx.
Send number of parallel nodes to master or client.
Definition at line 2782 of file TProofServ.cxx.
|
private |
Sends all objects from the given list to the specified socket.
Definition at line 4247 of file TProofServ.cxx.
void TProofServ::SendStatistics | ( | ) |
Send statistics of slave server to master or client.
Definition at line 2762 of file TProofServ.cxx.
|
static |
Set the file stream where to log (default stderr).
If ferr == 0 the default is restored. Returns current setting.
Definition at line 5747 of file TProofServ.cxx.
Change the idle status.
Definition at line 6830 of file TProofServ.cxx.
Set the last entry before exception.
Definition at line 6915 of file TProofServ.cxx.
|
static |
Set the message to be sent back in case of exceptions.
Definition at line 6907 of file TProofServ.cxx.
|
private |
Set query in running state.
Definition at line 3567 of file TProofServ.cxx.
|
protectedvirtual |
Print the ProofServ logo on standard output.
Return 0 on success, -1 on failure
Reimplemented in TProofServLite, and TXProofServ.
Definition at line 2805 of file TProofServ.cxx.
|
protected |
Common part (between TProofServ and TXProofServ) of the setup phase.
Return 0 on success, -1 on error
Definition at line 2955 of file TProofServ.cxx.
Terminate the proof server.
Reimplemented from TApplication.
Reimplemented in TProofServLite, and TXProofServ.
Definition at line 3372 of file TProofServ.cxx.
|
static |
Static function returning pointer to global object gProofServ.
Mainly for use via CINT, where the gProofServ symbol might be deleted from the symbol table.
Definition at line 3486 of file TProofServ.cxx.
void TProofServ::TruncateLogFile | ( | ) |
Truncate the log file to the 80% of the required max size if this is set.
Definition at line 6026 of file TProofServ.cxx.
|
protected |
Scan recursively the datadir and unlink it if empty Return kTRUE if it can be unlinked, kFALSE otherwise.
Definition at line 3440 of file TProofServ.cxx.
|
private |
|
private |
Update the session status in the relevant file.
The status is taken from GetSessionStatus() unless xst >= 0, in which case xst is used. Return 0 on success, -errno if the file could not be opened.
Definition at line 6802 of file TProofServ.cxx.
|
private |
Return the number of waiting queries.
Definition at line 6849 of file TProofServ.cxx.
|
friend |
Definition at line 68 of file TProofServ.h.
|
friend |
Definition at line 69 of file TProofServ.h.
|
private |
Definition at line 121 of file TProofServ.h.
|
private |
Definition at line 92 of file TProofServ.h.
|
private |
Definition at line 96 of file TProofServ.h.
|
private |
Definition at line 87 of file TProofServ.h.
|
private |
Definition at line 94 of file TProofServ.h.
|
private |
Definition at line 142 of file TProofServ.h.
|
private |
Definition at line 116 of file TProofServ.h.
|
private |
Definition at line 79 of file TProofServ.h.
|
private |
Definition at line 80 of file TProofServ.h.
|
private |
Definition at line 114 of file TProofServ.h.
|
private |
Definition at line 90 of file TProofServ.h.
|
private |
Definition at line 91 of file TProofServ.h.
|
private |
Definition at line 89 of file TProofServ.h.
|
private |
Definition at line 144 of file TProofServ.h.
|
private |
Definition at line 145 of file TProofServ.h.
|
private |
Definition at line 122 of file TProofServ.h.
|
private |
Definition at line 110 of file TProofServ.h.
|
staticprivate |
Definition at line 168 of file TProofServ.h.
|
staticprotected |
Definition at line 229 of file TProofServ.h.
|
staticprotected |
Definition at line 228 of file TProofServ.h.
|
staticprivate |
Definition at line 172 of file TProofServ.h.
|
staticprivate |
Definition at line 162 of file TProofServ.h.
|
staticprivate |
Definition at line 163 of file TProofServ.h.
|
staticprivate |
Definition at line 169 of file TProofServ.h.
|
staticprivate |
Definition at line 160 of file TProofServ.h.
|
private |
Definition at line 78 of file TProofServ.h.
|
private |
Definition at line 105 of file TProofServ.h.
|
private |
Definition at line 109 of file TProofServ.h.
|
private |
Definition at line 106 of file TProofServ.h.
|
staticprivate |
Definition at line 174 of file TProofServ.h.
|
staticprivate |
Definition at line 173 of file TProofServ.h.
|
staticprivate |
Definition at line 159 of file TProofServ.h.
|
private |
Definition at line 156 of file TProofServ.h.
|
private |
Definition at line 129 of file TProofServ.h.
|
private |
Definition at line 140 of file TProofServ.h.
|
private |
Definition at line 82 of file TProofServ.h.
|
private |
Definition at line 124 of file TProofServ.h.
|
private |
Definition at line 112 of file TProofServ.h.
|
private |
Definition at line 115 of file TProofServ.h.
|
private |
Definition at line 100 of file TProofServ.h.
|
private |
Definition at line 101 of file TProofServ.h.
|
private |
Definition at line 102 of file TProofServ.h.
|
private |
Definition at line 107 of file TProofServ.h.
|
private |
Definition at line 111 of file TProofServ.h.
|
private |
Definition at line 155 of file TProofServ.h.
|
private |
Definition at line 154 of file TProofServ.h.
|
private |
Definition at line 151 of file TProofServ.h.
|
private |
Definition at line 150 of file TProofServ.h.
|
private |
Definition at line 149 of file TProofServ.h.
|
private |
Definition at line 166 of file TProofServ.h.
|
private |
Definition at line 108 of file TProofServ.h.
|
private |
Definition at line 104 of file TProofServ.h.
|
private |
Definition at line 93 of file TProofServ.h.
|
private |
Definition at line 86 of file TProofServ.h.
|
private |
Definition at line 99 of file TProofServ.h.
|
private |
Definition at line 134 of file TProofServ.h.
|
private |
Definition at line 98 of file TProofServ.h.
|
private |
Definition at line 103 of file TProofServ.h.
|
private |
Definition at line 126 of file TProofServ.h.
|
private |
Definition at line 130 of file TProofServ.h.
|
private |
Definition at line 88 of file TProofServ.h.
|
private |
Definition at line 95 of file TProofServ.h.
|
private |
Definition at line 118 of file TProofServ.h.
|
private |
Definition at line 132 of file TProofServ.h.
|
private |
Definition at line 113 of file TProofServ.h.
|
private |
Definition at line 136 of file TProofServ.h.
|
private |
Definition at line 139 of file TProofServ.h.
|
private |
Definition at line 117 of file TProofServ.h.
|
private |
Definition at line 147 of file TProofServ.h.
|
private |
Definition at line 76 of file TProofServ.h.
|
private |
Definition at line 85 of file TProofServ.h.
|
private |
Definition at line 83 of file TProofServ.h.
|
private |
Definition at line 138 of file TProofServ.h.
|
private |
Definition at line 97 of file TProofServ.h.
|
private |
Definition at line 84 of file TProofServ.h.
|
private |
Definition at line 120 of file TProofServ.h.
|
private |
Definition at line 77 of file TProofServ.h.
|
private |
Definition at line 128 of file TProofServ.h.
|
private |
Definition at line 81 of file TProofServ.h.