Logo ROOT  
Reference Guide
 
Loading...
Searching...
No Matches
TProofServ Class Reference

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 = (1ULL << ( 17 )) }
 
- Public Types inherited from TApplication
enum  EExitOnException { kDontExit , kExit , kAbort }
 
enum  EFileBits { kExpression = (1ULL << ( 14 )) }
 
enum  EStatusBits { kProcessRemotely = (1ULL << ( 15 )) , kDefaultApplication = (1ULL << ( 16 )) }
 
- Public Types inherited from TObject
enum  {
  kIsOnHeap = 0x01000000 , kNotDeleted = 0x02000000 , kZombie = 0x04000000 , kInconsistent = 0x08000000 ,
  kBitMask = 0x00ffffff
}
 
enum  { kSingleKey = (1ULL << ( 0 )) , kOverwrite = (1ULL << ( 1 )) , kWriteDelete = (1ULL << ( 2 )) }
 
enum  EDeprecatedStatusBits { kObjInCanvas = (1ULL << ( 3 )) }
 
enum  EStatusBits {
  kCanDelete = (1ULL << ( 0 )) , kMustCleanup = (1ULL << ( 3 )) , kIsReferenced = (1ULL << ( 4 )) , kHasUUID = (1ULL << ( 5 )) ,
  kCannotPick = (1ULL << ( 6 )) , kNoContextMenu = (1ULL << ( 8 )) , kInvalidObject = (1ULL << ( 13 ))
}
 

Public Member Functions

 TProofServ (Int_t *argc, char **argv, FILE *flog=0)
 Main constructor.
 
 ~TProofServ () override
 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.
 
TObjectGet (const char *namecycle)
 Get object with name "name;cycle" (e.g.
 
Int_t GetActSessions () const
 
const char * GetCacheDir () const
 
TProofLockPathGetCacheLock ()
 
const char * GetConfDir () const
 
const char * GetConfFile () const
 
Float_t GetCpuTime () const
 
const char * GetDataDir () const
 
const char * GetDataDirOpts () const
 
Float_t GetEffSessions () const
 
TListGetEnabledPackages () 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
 
TDSetElementGetNextPacket (Long64_t totalEntries=-1)
 Get next range of entries to be processed on this server.
 
void GetOptions (Int_t *argc, char **argv) override
 Get and handle command line options.
 
const char * GetOrdinal () const
 
TPackMgrGetPackMgr () const
 
const char * GetPrefix () const
 
TProofGetProof () 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
 
TSocketGetSocket () 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.
 
void HandleException (Int_t sig) override
 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 ()
 
TClassIsA () const override
 
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 override
 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) override
 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.
 
void Streamer (TBuffer &) override
 Stream an object of class TObject.
 
void StreamerNVirtual (TBuffer &ClassDef_StreamerNVirtual_b)
 
void Terminate (Int_t status) override
 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=nullptr, 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 TApplicationImpGetApplicationImp ()
 
TApplicationGetAppRemote () const
 
const char * GetIdleCommand () const
 
TString GetSetup ()
 It gets the ROOT installation setup as TString.
 
TSignalHandlerGetSignalHandler () const
 
virtual void HandleIdleTimer ()
 Handle idle timeout.
 
virtual Bool_t HandleTermInput ()
 
virtual void Hide ()
 
virtual void Iconify ()
 
virtual void Init ()
 
void InitializeGraphics (Bool_t only_web=kFALSE)
 Initialize the graphics environment.
 
TObjArrayInputFiles () 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 ()
 
void ls (Option_t *option="") const override
 Show available sessions.
 
Bool_t NoLogoOpt () const
 
Bool_t NoLogOpt () const
 
virtual void Open ()
 
void OpenForumTopic (const TString &type)
 It opens a Forum topic in a web browser with prefilled ROOT version.
 
void OpenGitHubIssue (const TString &type)
 It opens a GitHub issue in a web browser with prefilled ROOT version.
 
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 Longptr_t ProcessFile (const char *file, Int_t *error=nullptr, Bool_t keep=kFALSE)
 Process a file containing a C++ macro.
 
virtual Longptr_t ProcessLine (const char *line, Bool_t sync=kFALSE, Int_t *error=nullptr)
 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.
 
void StreamerNVirtual (TBuffer &ClassDef_StreamerNVirtual_b)
 
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 TObjectClone (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 TObjectDrawClone (Option_t *option="") const
 Draw a clone of this object in the current selected pad with: gROOT->SetSelectedPad(c1).
 
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=nullptr)
 Execute method on this object with the given parameter string, e.g.
 
virtual void Execute (TMethod *method, TObjArray *params, Int_t *error=nullptr)
 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 TObjectFindObject (const char *name) const
 Must be redefined in derived classes.
 
virtual TObjectFindObject (const TObject *obj) const
 Must be redefined in derived classes.
 
virtual Option_tGetDrawOption () 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_tGetOption () 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)
 
Bool_t IsDestructed () const
 IsDestructed.
 
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 (the base implementation is no-op).
 
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, void *vp)
 Only called by placement new when throwing an exception.
 
void operator delete[] (void *ptr)
 Operator delete [].
 
void operator delete[] (void *ptr, void *vp)
 Only called by placement new[] when throwing an exception.
 
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)
 
TObjectoperator= (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.
 
void StreamerNVirtual (TBuffer &ClassDef_StreamerNVirtual_b)
 
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=nullptr, Int_t option=0, Int_t bufsize=0)
 Write this object to the current directory.
 
virtual Int_t Write (const char *name=nullptr, 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=nullptr, void *receiver=nullptr, const char *slot=nullptr)
 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.
 
TListGetListOfClassSignals () const
 Returns pointer to list of signals of this class.
 
TListGetListOfConnections () const
 
TListGetListOfSignals () 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=nullptr)
 
virtual void LowPriority (const char *signal_name, const char *slot_name=nullptr)
 
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.
 
void StreamerNVirtual (TBuffer &ClassDef_StreamerNVirtual_b)
 

Static Public Member Functions

static TClassClass ()
 
static const char * Class_Name ()
 
static constexpr Version_t Class_Version ()
 
static const char * DeclFileName ()
 
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 TMapGetDataSetNodeMap (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 TProofServThis ()
 Static function returning pointer to global object gProofServ.
 
- Static Public Member Functions inherited from TApplication
static TClassClass ()
 
static const char * Class_Name ()
 
static constexpr Version_t Class_Version ()
 
static void CreateApplication ()
 Static function used to create a default application environment.
 
static const char * DeclFileName ()
 
static Longptr_t ExecuteFile (const char *file, Int_t *error=nullptr, Bool_t keep=kFALSE)
 Execute a file containing a C++ macro (static method).
 
static TListGetApplications ()
 Static method returning the list of available applications.
 
static void NeedGraphicsLibs ()
 Static method.
 
- Static Public Member Functions inherited from TObject
static TClassClass ()
 
static const char * Class_Name ()
 
static constexpr Version_t Class_Version ()
 
static const char * DeclFileName ()
 
static Longptr_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 TClassClass ()
 
static const char * Class_Name ()
 
static constexpr Version_t Class_Version ()
 
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 const char * DeclFileName ()
 
static Bool_t Disconnect (const char *class_name, const char *signal, void *receiver=nullptr, const char *slot=nullptr)
 Disconnects "class signal".
 
static Bool_t Disconnect (TQObject *sender, const char *signal=nullptr, void *receiver=nullptr, const char *slot=nullptr)
 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 Forum (const char *line)
 The function (".forum <type>") submits a new post on the ROOT forum via web browser.
 
virtual void GitHub (const char *line)
 The function (".gh <type>") submits a new issue on GitHub via web browser.
 
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 Longptr_t ProcessRemote (const char *line, Int_t *error=nullptr)
 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 TListfgApplications = 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.
 
TProofQueryResultMakeQueryResult (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.
 
TProofQueryResultNextQuery ()
 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.
 

Private Attributes

Int_t fActSessions
 
TString fAdminPath
 
TString fArchivePath
 
TString fCacheDir
 
TProofLockPathfCacheLock
 
Int_t fCompressMsg
 
TStopwatch fCompute
 
TString fConfDir
 
TString fConfFile
 
Float_t fCpuTime
 
TString fDataDir
 
TString fDataDirOpts
 
TString fDataSetDir
 
TDataSetManagerfDataSetManager
 
TDataSetManagerFilefDataSetStgRepo
 
Float_t fEffSessions
 
Bool_t fEndMaster
 
TString fGroup
 
Int_t fGroupId
 
Int_t fGroupPriority
 
Int_t fGroupSize
 
Long64_t fHWMBoxSize
 
Bool_t fIdle
 
TIdleTOTimerfIdleTOTimer
 
TString fImage
 
TFileHandlerfInputHandler
 
Bool_t fInterrupt
 
TStopwatch fLatency
 
FILE * fLogFile
 
Int_t fLogFileDes
 
Long64_t fLogFileMaxSize
 
Int_t fLogLevel
 
Bool_t fMasterServ
 
Long64_t fMaxBoxSize
 
Int_t fMaxQueries
 
Int_t fMergedWorkers
 
TMonitorfMergingMonitor
 
TServerSocketfMergingSocket
 
Long64_t fMsgSizeHWM
 
Int_t fNcmd
 
TString fOrdinal
 
TString fOutputFile
 
TPackMgrfPackMgr
 
TVirtualProofPlayerfPlayer
 
TString fPrefix
 
TProoffProof
 
Int_t fProtocol
 
TQueryResultManagerfQMgr
 
std::recursive_mutex fQMtx
 
TString fQueryDir
 
TProofLockPathfQueryLock
 
Int_t fQuerySeqNum
 
TListfQueuedMsg
 
Float_t fRealTime
 
Bool_t fRealTimeLog
 
TReaperTimerfReaperTimer
 
TStopwatch fSaveOutput
 
Bool_t fSendLogToMaster
 
TString fService
 
TString fSessionDir
 
TString fSessionTag
 
TShutdownTimerfShutdownTimer
 
TSocketfSocket
 
TString fTopSessionTag
 
Int_t fTotSessions
 
TString fUser
 
TListfWaitingQueries
 
TString fWorkDir
 

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 = (1ULL << ( 3 )) }
 
- Static Protected Member Functions inherited from TApplication
static void Close (TApplication *app)
 Static function used to close a remote application.
 
static TApplicationOpen (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
TApplicationfAppRemote
 
- Protected Attributes inherited from TQObject
TListfListOfConnections
 list of signals from this object
 
TListfListOfSignals
 
Bool_t fSignalsBlocked
 list of connections to this object
 

#include <TProofServ.h>

Inheritance diagram for TProofServ:
[legend]

Member Enumeration Documentation

◆ EQueryAction

Enumerator
kQueryOK 
kQueryModify 
kQueryStop 
kQueryEnqueued 

Definition at line 73 of file TProofServ.h.

◆ EStatusBits

Enumerator
kHighMemory 

Definition at line 72 of file TProofServ.h.

Constructor & Destructor Documentation

◆ TProofServ()

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 560 of file TProofServ.cxx.

◆ ~TProofServ()

TProofServ::~TProofServ ( )
override

Cleanup.

Not really necessary since after this dtor there is no live anyway.

Definition at line 1000 of file TProofServ.cxx.

Member Function Documentation

◆ AcceptResults()

Bool_t TProofServ::AcceptResults ( Int_t  connections,
TVirtualProofPlayer mergerPlayer 
)
private

Accept and merge results from a set of workers.

Definition at line 2238 of file TProofServ.cxx.

◆ CatMotd()

Int_t TProofServ::CatMotd ( )
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 1019 of file TProofServ.cxx.

◆ Class()

static TClass * TProofServ::Class ( )
static
Returns
TClass describing this class

◆ Class_Name()

static const char * TProofServ::Class_Name ( )
static
Returns
Name of this class

◆ Class_Version()

static constexpr Version_t TProofServ::Class_Version ( )
inlinestaticconstexpr
Returns
Version of this class

Definition at line 344 of file TProofServ.h.

◆ CleanupWaitingQueries()

Int_t TProofServ::CleanupWaitingQueries ( Bool_t  del = kTRUE,
TList qls = 0 
)
private

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 6880 of file TProofServ.cxx.

◆ CreateServer()

Int_t TProofServ::CreateServer ( )
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 790 of file TProofServ.cxx.

◆ DeclFileName()

static const char * TProofServ::DeclFileName ( )
inlinestatic
Returns
Name of the file containing the class declaration

Definition at line 344 of file TProofServ.h.

◆ DeletePlayer()

void TProofServ::DeletePlayer ( )
protectedvirtual

Delete player instance.

Definition at line 5907 of file TProofServ.cxx.

◆ DisableTimeout()

virtual void TProofServ::DisableTimeout ( )
inlinevirtual

Reimplemented in TXProofServ.

Definition at line 316 of file TProofServ.h.

◆ EnableTimeout()

virtual void TProofServ::EnableTimeout ( )
inlinevirtual

Reimplemented in TXProofServ.

Definition at line 317 of file TProofServ.h.

◆ ErrorHandler()

void TProofServ::ErrorHandler ( Int_t  level,
Bool_t  abort,
const char *  location,
const char *  msg 
)
static

The PROOF error handler function.

It prints the message on fgErrorHandlerFile and if abort is set it aborts the application.

Definition at line 5755 of file TProofServ.cxx.

◆ FilterLocalroot()

void TProofServ::FilterLocalroot ( TString path,
const char *  dsrv = "root://dum/" 
)
static

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 6966 of file TProofServ.cxx.

◆ FlushLogFile()

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 6013 of file TProofServ.cxx.

◆ Fork()

Int_t TProofServ::Fork ( )
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 6665 of file TProofServ.cxx.

◆ Get()

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 1091 of file TProofServ.cxx.

◆ GetActSessions()

Int_t TProofServ::GetActSessions ( ) const
inline

Definition at line 263 of file TProofServ.h.

◆ GetCacheDir()

const char * TProofServ::GetCacheDir ( ) const
inline

Definition at line 248 of file TProofServ.h.

◆ GetCacheLock()

TProofLockPath * TProofServ::GetCacheLock ( )
inline

Definition at line 281 of file TProofServ.h.

◆ GetCompressionLevel()

Int_t TProofServ::GetCompressionLevel ( ) const
inlineprivate

Definition at line 464 of file TProofServ.h.

◆ GetConfDir()

const char * TProofServ::GetConfDir ( ) const
inline

Definition at line 239 of file TProofServ.h.

◆ GetConfFile()

const char * TProofServ::GetConfFile ( ) const
inline

Definition at line 240 of file TProofServ.h.

◆ GetCpuTime()

Float_t TProofServ::GetCpuTime ( ) const
inline

Definition at line 259 of file TProofServ.h.

◆ GetDataDir()

const char * TProofServ::GetDataDir ( ) const
inline

Definition at line 250 of file TProofServ.h.

◆ GetDataDirOpts()

const char * TProofServ::GetDataDirOpts ( ) const
inline

Definition at line 251 of file TProofServ.h.

◆ GetDataSetNodeMap()

TMap * TProofServ::GetDataSetNodeMap ( TFileCollection fc,
TString emsg 
)
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 3709 of file TProofServ.cxx.

◆ GetEffSessions()

Float_t TProofServ::GetEffSessions ( ) const
inline

Definition at line 264 of file TProofServ.h.

◆ GetEnabledPackages()

TList * TProofServ::GetEnabledPackages ( ) const
inline

Definition at line 267 of file TProofServ.h.

◆ GetGroup()

const char * TProofServ::GetGroup ( ) const
inline

Definition at line 242 of file TProofServ.h.

◆ GetGroupId()

Int_t TProofServ::GetGroupId ( ) const
inline

Definition at line 254 of file TProofServ.h.

◆ GetGroupSize()

Int_t TProofServ::GetGroupSize ( ) const
inline

Definition at line 255 of file TProofServ.h.

◆ GetImage()

const char * TProofServ::GetImage ( ) const
inline

Definition at line 244 of file TProofServ.h.

◆ GetLocalServer()

void TProofServ::GetLocalServer ( TString dsrv)
static

Extract LOCALDATASERVER info in 'dsrv'.

Definition at line 6949 of file TProofServ.cxx.

◆ GetLogLevel()

Int_t TProofServ::GetLogLevel ( ) const
inline

Definition at line 256 of file TProofServ.h.

◆ GetMemHWM()

Float_t TProofServ::GetMemHWM ( )
static

MemHWM getter.

Definition at line 6934 of file TProofServ.cxx.

◆ GetMemStop()

Float_t TProofServ::GetMemStop ( )
static

MemStop getter.

Definition at line 6941 of file TProofServ.cxx.

◆ GetMsgSizeHWM()

Long64_t TProofServ::GetMsgSizeHWM ( ) const
inline

Definition at line 274 of file TProofServ.h.

◆ GetNextPacket()

TDSetElement * TProofServ::GetNextPacket ( Long64_t  totalEntries = -1)

Get next range of entries to be processed on this server.

Definition at line 1141 of file TProofServ.cxx.

◆ GetOptions()

void TProofServ::GetOptions ( Int_t argc,
char **  argv 
)
overridevirtual

Get and handle command line options.

Fixed format: "proofserv"|"proofslave" <confdir>

Reimplemented from TApplication.

Definition at line 1280 of file TProofServ.cxx.

◆ GetOrdinal()

const char * TProofServ::GetOrdinal ( ) const
inline

Definition at line 253 of file TProofServ.h.

◆ GetPackMgr()

TPackMgr * TProofServ::GetPackMgr ( ) const
inline

Definition at line 249 of file TProofServ.h.

◆ GetPrefix()

const char * TProofServ::GetPrefix ( ) const
inline

Definition at line 276 of file TProofServ.h.

◆ GetPriority()

Int_t TProofServ::GetPriority ( )
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 5939 of file TProofServ.cxx.

◆ GetProof()

TProof * TProofServ::GetProof ( ) const
inline

Definition at line 237 of file TProofServ.h.

◆ GetProtocol()

Int_t TProofServ::GetProtocol ( ) const
inline

Definition at line 252 of file TProofServ.h.

◆ GetQuerySeqNum()

Int_t TProofServ::GetQuerySeqNum ( ) const
inline

Definition at line 260 of file TProofServ.h.

◆ GetRealTime()

Float_t TProofServ::GetRealTime ( ) const
inline

Definition at line 258 of file TProofServ.h.

◆ GetResMemMax()

Long_t TProofServ::GetResMemMax ( )
static

ResMemMax getter.

Definition at line 6927 of file TProofServ.cxx.

◆ GetService()

const char * TProofServ::GetService ( ) const
inline

Definition at line 238 of file TProofServ.h.

◆ GetSessionDir()

const char * TProofServ::GetSessionDir ( ) const
inline

Definition at line 247 of file TProofServ.h.

◆ GetSessionStatus()

Int_t TProofServ::GetSessionStatus ( )
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 6786 of file TProofServ.cxx.

◆ GetSessionTag()

const char * TProofServ::GetSessionTag ( ) const
inline

Definition at line 245 of file TProofServ.h.

◆ GetSocket()

TSocket * TProofServ::GetSocket ( ) const
inline

Definition at line 257 of file TProofServ.h.

◆ GetTopSessionTag()

const char * TProofServ::GetTopSessionTag ( ) const
inline

Definition at line 246 of file TProofServ.h.

◆ GetTotSessions()

Int_t TProofServ::GetTotSessions ( ) const
inline

Definition at line 262 of file TProofServ.h.

◆ GetUser()

const char * TProofServ::GetUser ( ) const
inline

Definition at line 241 of file TProofServ.h.

◆ GetVirtMemMax()

Long_t TProofServ::GetVirtMemMax ( )
static

VirtMemMax getter.

Definition at line 6920 of file TProofServ.cxx.

◆ GetWorkDir()

const char * TProofServ::GetWorkDir ( ) const
inline

Definition at line 243 of file TProofServ.h.

◆ GetWorkers()

TProofServ::EQueryAction TProofServ::GetWorkers ( TList workers,
Int_t prioritychange,
Bool_t  resume = kFALSE 
)
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 5692 of file TProofServ.cxx.

◆ HandleArchive()

void TProofServ::HandleArchive ( TMessage mess,
TString slb = 0 
)
protectedvirtual

Handle archive request.

Definition at line 3597 of file TProofServ.cxx.

◆ HandleCache()

Int_t TProofServ::HandleCache ( TMessage mess,
TString slb = 0 
)
protectedvirtual

Handle here all cache and package requests.

Definition at line 5280 of file TProofServ.cxx.

◆ HandleCheckFile()

void TProofServ::HandleCheckFile ( TMessage mess,
TString slb = 0 
)
protectedvirtual

Handle file checking request.

Definition at line 5129 of file TProofServ.cxx.

◆ HandleDataSets()

Int_t TProofServ::HandleDataSets ( TMessage mess,
TString slb = 0 
)
protectedvirtual

Handle here requests about datasets.

Definition at line 6087 of file TProofServ.cxx.

◆ HandleException()

void TProofServ::HandleException ( Int_t  sig)
overridevirtual

Exception handler: we do not try to recover here, just exit.

Reimplemented from TApplication.

Definition at line 6070 of file TProofServ.cxx.

◆ HandleFork()

void TProofServ::HandleFork ( TMessage mess)
protectedvirtual

Cloning itself via fork. Not implemented.

Reimplemented in TProofServLite.

Definition at line 6654 of file TProofServ.cxx.

◆ HandleLibIncPath()

Int_t TProofServ::HandleLibIncPath ( TMessage mess)
protectedvirtual

Handle lib, inc search paths modification request.

Definition at line 4999 of file TProofServ.cxx.

◆ HandleProcess()

void TProofServ::HandleProcess ( TMessage mess,
TString slb = 0 
)
protectedvirtual

Handle processing request.

Definition at line 3756 of file TProofServ.cxx.

◆ HandleQueryList()

void TProofServ::HandleQueryList ( TMessage mess)
protectedvirtual

Handle request for list of queries.

Definition at line 4795 of file TProofServ.cxx.

◆ HandleRemove()

void TProofServ::HandleRemove ( TMessage mess,
TString slb = 0 
)
protectedvirtual

Handle remove request.

Definition at line 4858 of file TProofServ.cxx.

◆ HandleRetrieve()

void TProofServ::HandleRetrieve ( TMessage mess,
TString slb = 0 
)
protectedvirtual

Handle retrieve request.

Definition at line 4922 of file TProofServ.cxx.

◆ HandleSigPipe()

void TProofServ::HandleSigPipe ( )
virtual

Called when the client is not alive anymore (i.e.

when kKeepAlive has failed).

Reimplemented in TProofServLite, and TXProofServ.

Definition at line 2468 of file TProofServ.cxx.

◆ HandleSocketInput() [1/2]

void TProofServ::HandleSocketInput ( )
virtual

Handle input coming from the client or from the master server.

Definition at line 1319 of file TProofServ.cxx.

◆ HandleSocketInput() [2/2]

Int_t TProofServ::HandleSocketInput ( TMessage mess,
Bool_t  all 
)
virtual

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 1467 of file TProofServ.cxx.

◆ HandleSubmerger()

void TProofServ::HandleSubmerger ( TMessage mess)
protectedvirtual

Handle a message of type kPROOF_SUBMERGER.

Definition at line 6432 of file TProofServ.cxx.

◆ HandleTermination()

virtual void TProofServ::HandleTermination ( )
inlinevirtual

Reimplemented in TProofServLite, and TXProofServ.

Definition at line 290 of file TProofServ.h.

◆ HandleUrgentData()

void TProofServ::HandleUrgentData ( )
virtual

Handle Out-Of-Band data sent by the master or client.

Reimplemented in TXProofServ.

Definition at line 2333 of file TProofServ.cxx.

◆ HandleWorkerLists()

Int_t TProofServ::HandleWorkerLists ( TMessage mess)
protectedvirtual

Handle here all requests to modify worker lists.

Definition at line 5591 of file TProofServ.cxx.

◆ Interrupt()

void TProofServ::Interrupt ( )
inline

Definition at line 291 of file TProofServ.h.

◆ IsA()

TClass * TProofServ::IsA ( ) const
inlineoverridevirtual
Returns
TClass describing current object

Reimplemented from TApplication.

Reimplemented in TProofServLite, and TXProofServ.

Definition at line 344 of file TProofServ.h.

◆ IsActive()

Bool_t TProofServ::IsActive ( )
static

Static function that returns kTRUE in case we are a PROOF server.

Definition at line 3473 of file TProofServ.cxx.

◆ IsEndMaster()

Bool_t TProofServ::IsEndMaster ( ) const
inline

Definition at line 292 of file TProofServ.h.

◆ IsIdle()

Bool_t TProofServ::IsIdle ( )
protected

Return the idle status.

Definition at line 6818 of file TProofServ.cxx.

◆ IsMaster()

Bool_t TProofServ::IsMaster ( ) const
inline

Definition at line 293 of file TProofServ.h.

◆ IsParallel()

Bool_t TProofServ::IsParallel ( ) const

True if in parallel mode.

Definition at line 2494 of file TProofServ.cxx.

◆ IsTopMaster()

Bool_t TProofServ::IsTopMaster ( ) const
inline

Definition at line 295 of file TProofServ.h.

◆ IsWaiting()

Bool_t TProofServ::IsWaiting ( )
private

Return kTRUE if the session is waiting for the OK to start processing.

Definition at line 6836 of file TProofServ.cxx.

◆ LogToMaster()

void TProofServ::LogToMaster ( Bool_t  on = kTRUE)
inline

Definition at line 322 of file TProofServ.h.

◆ MakePlayer()

void TProofServ::MakePlayer ( )
protectedvirtual

Make player instance.

Definition at line 5883 of file TProofServ.cxx.

◆ MakeQueryResult()

TProofQueryResult * TProofServ::MakeQueryResult ( Long64_t  nentries,
const char *  opt,
TList inl,
Long64_t  first,
TDSet dset,
const char *  selec,
TObject elist 
)
private

Create a TProofQueryResult instance for this query.

Definition at line 3530 of file TProofServ.cxx.

◆ NextQuery()

TProofQueryResult * TProofServ::NextQuery ( )
private

Get the next query from the waiting list.

The query is removed from the list.

Definition at line 6867 of file TProofServ.cxx.

◆ OldAuthSetup()

Int_t TProofServ::OldAuthSetup ( TString conf)
private

Setup authentication related stuff for old versions.

Provided for backward compatibility.

Definition at line 3492 of file TProofServ.cxx.

◆ Print()

void TProofServ::Print ( Option_t option = "") const
overridevirtual

Print status of slave server.

Reimplemented from TObject.

Definition at line 2506 of file TProofServ.cxx.

◆ ProcessNext()

void TProofServ::ProcessNext ( TString slb = 0)
protectedvirtual

process the next query from the queue of submitted jobs.

to be called on the top master only.

Definition at line 4416 of file TProofServ.cxx.

◆ QueueQuery()

Int_t TProofServ::QueueQuery ( TProofQueryResult pq)
private

Add a query to the waiting list Returns the number of queries in the list.

Definition at line 6856 of file TProofServ.cxx.

◆ ReceiveFile()

Int_t TProofServ::ReceiveFile ( const char *  file,
Bool_t  bin,
Long64_t  size 
)

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 2578 of file TProofServ.cxx.

◆ RedirectOutput()

void TProofServ::RedirectOutput ( const char *  dir = 0,
const char *  mode = "w" 
)
private

Redirect stdout to a log file.

This log file will be flushed to the client or master after each command.

Definition at line 2518 of file TProofServ.cxx.

◆ RegisterDataSets()

Int_t TProofServ::RegisterDataSets ( TList in,
TList out,
TDataSetManager dsm,
TString e 
)
static

Register TFileCollections in 'out' as datasets according to the rules in 'in'.

Definition at line 4697 of file TProofServ.cxx.

◆ ReleaseWorker()

virtual void TProofServ::ReleaseWorker ( const char *  )
inlinevirtual

Reimplemented in TXProofServ.

Definition at line 305 of file TProofServ.h.

◆ Reset()

void TProofServ::Reset ( const char *  dir)

Reset PROOF environment to be ready for execution of next command.

Definition at line 2548 of file TProofServ.cxx.

◆ ResolveKeywords()

void TProofServ::ResolveKeywords ( TString fname,
const char *  path = 0 
)
static

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 6702 of file TProofServ.cxx.

◆ RestartComputeTime()

void TProofServ::RestartComputeTime ( )

Reset the compute time.

Definition at line 1126 of file TProofServ.cxx.

◆ Run()

void TProofServ::Run ( Bool_t  retrn = kFALSE)
overridevirtual

Main server eventloop.

Reimplemented from TApplication.

Definition at line 2650 of file TProofServ.cxx.

◆ SendAsynMessage()

void TProofServ::SendAsynMessage ( const char *  msg,
Bool_t  lf = kTRUE 
)

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 '\n'/'\r' depending on 'lf' being kTRUE (default) or kFALSE. Returns the return value from TSocket::Send(TMessage &) .

Definition at line 5989 of file TProofServ.cxx.

◆ SendLogFile()

void TProofServ::SendLogFile ( Int_t  status = 0,
Int_t  start = -1,
Int_t  end = -1 
)
virtual

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 2665 of file TProofServ.cxx.

◆ SendParallel()

void TProofServ::SendParallel ( Bool_t  async = kFALSE)

Send number of parallel nodes to master or client.

Definition at line 2780 of file TProofServ.cxx.

◆ SendResults()

Int_t TProofServ::SendResults ( TSocket sock,
TList outlist = 0,
TQueryResult pq = 0 
)
private

Sends all objects from the given list to the specified socket.

Definition at line 4244 of file TProofServ.cxx.

◆ SendStatistics()

void TProofServ::SendStatistics ( )

Send statistics of slave server to master or client.

Definition at line 2760 of file TProofServ.cxx.

◆ SetErrorHandlerFile()

FILE * TProofServ::SetErrorHandlerFile ( FILE *  ferr)
static

Set the file stream where to log (default stderr).

If ferr == 0 the default is restored. Returns current setting.

Definition at line 5744 of file TProofServ.cxx.

◆ SetIdle()

void TProofServ::SetIdle ( Bool_t  st = kTRUE)
private

Change the idle status.

Definition at line 6827 of file TProofServ.cxx.

◆ SetLastEntry()

void TProofServ::SetLastEntry ( Long64_t  lastentry)
static

Set the last entry before exception.

Definition at line 6912 of file TProofServ.cxx.

◆ SetLastMsg()

void TProofServ::SetLastMsg ( const char *  lastmsg)
static

Set the message to be sent back in case of exceptions.

Definition at line 6904 of file TProofServ.cxx.

◆ SetQueryRunning()

void TProofServ::SetQueryRunning ( TProofQueryResult pq)
private

Set query in running state.

Definition at line 3564 of file TProofServ.cxx.

◆ Setup()

Int_t TProofServ::Setup ( )
protectedvirtual

Print the ProofServ logo on standard output.

Return 0 on success, -1 on failure

Reimplemented in TProofServLite, and TXProofServ.

Definition at line 2803 of file TProofServ.cxx.

◆ SetupCommon()

Int_t TProofServ::SetupCommon ( )
protected

Common part (between TProofServ and TXProofServ) of the setup phase.

Return 0 on success, -1 on error

Definition at line 2953 of file TProofServ.cxx.

◆ Streamer()

void TProofServ::Streamer ( TBuffer R__b)
overridevirtual

Stream an object of class TObject.

Reimplemented from TApplication.

Reimplemented in TProofServLite, and TXProofServ.

◆ StreamerNVirtual()

void TProofServ::StreamerNVirtual ( TBuffer ClassDef_StreamerNVirtual_b)
inline

Definition at line 344 of file TProofServ.h.

◆ Terminate()

void TProofServ::Terminate ( Int_t  status)
overridevirtual

Terminate the proof server.

Reimplemented from TApplication.

Reimplemented in TProofServLite, and TXProofServ.

Definition at line 3369 of file TProofServ.cxx.

◆ This()

TProofServ * TProofServ::This ( )
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 3483 of file TProofServ.cxx.

◆ TruncateLogFile()

void TProofServ::TruncateLogFile ( )

Truncate the log file to the 80% of the required max size if this is set.

Definition at line 6023 of file TProofServ.cxx.

◆ UnlinkDataDir()

Bool_t TProofServ::UnlinkDataDir ( const char *  path)
protected

Scan recursively the datadir and unlink it if empty Return kTRUE if it can be unlinked, kFALSE otherwise.

Definition at line 3437 of file TProofServ.cxx.

◆ UnloadPackage()

Int_t TProofServ::UnloadPackage ( const char *  package)
private

◆ UnloadPackages()

Int_t TProofServ::UnloadPackages ( )
private

◆ UpdateSessionStatus()

Int_t TProofServ::UpdateSessionStatus ( Int_t  xst = -1)

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 6799 of file TProofServ.cxx.

◆ WaitingQueries()

Int_t TProofServ::WaitingQueries ( )
private

Return the number of waiting queries.

Definition at line 6846 of file TProofServ.cxx.

Friends And Related Symbol Documentation

◆ TProofServLite

friend class TProofServLite
friend

Definition at line 68 of file TProofServ.h.

◆ TXProofServ

friend class TXProofServ
friend

Definition at line 69 of file TProofServ.h.

Member Data Documentation

◆ fActSessions

Int_t TProofServ::fActSessions
private

Definition at line 121 of file TProofServ.h.

◆ fAdminPath

TString TProofServ::fAdminPath
private

Definition at line 92 of file TProofServ.h.

◆ fArchivePath

TString TProofServ::fArchivePath
private

Definition at line 96 of file TProofServ.h.

◆ fCacheDir

TString TProofServ::fCacheDir
private

Definition at line 87 of file TProofServ.h.

◆ fCacheLock

TProofLockPath* TProofServ::fCacheLock
private

Definition at line 94 of file TProofServ.h.

◆ fCompressMsg

Int_t TProofServ::fCompressMsg
private

Definition at line 142 of file TProofServ.h.

◆ fCompute

TStopwatch TProofServ::fCompute
private

Definition at line 116 of file TProofServ.h.

◆ fConfDir

TString TProofServ::fConfDir
private

Definition at line 79 of file TProofServ.h.

◆ fConfFile

TString TProofServ::fConfFile
private

Definition at line 80 of file TProofServ.h.

◆ fCpuTime

Float_t TProofServ::fCpuTime
private

Definition at line 114 of file TProofServ.h.

◆ fDataDir

TString TProofServ::fDataDir
private

Definition at line 90 of file TProofServ.h.

◆ fDataDirOpts

TString TProofServ::fDataDirOpts
private

Definition at line 91 of file TProofServ.h.

◆ fDataSetDir

TString TProofServ::fDataSetDir
private

Definition at line 89 of file TProofServ.h.

◆ fDataSetManager

TDataSetManager* TProofServ::fDataSetManager
private

Definition at line 144 of file TProofServ.h.

◆ fDataSetStgRepo

TDataSetManagerFile* TProofServ::fDataSetStgRepo
private

Definition at line 145 of file TProofServ.h.

◆ fEffSessions

Float_t TProofServ::fEffSessions
private

Definition at line 122 of file TProofServ.h.

◆ fEndMaster

Bool_t TProofServ::fEndMaster
private

Definition at line 110 of file TProofServ.h.

◆ fgErrorHandlerFile

FILE * TProofServ::fgErrorHandlerFile = 0
staticprivate

Definition at line 168 of file TProofServ.h.

◆ fgLastEntry

Long64_t TProofServ::fgLastEntry = -1
staticprotected

Definition at line 229 of file TProofServ.h.

◆ fgLastMsg

TString TProofServ::fgLastMsg
staticprotected

Definition at line 228 of file TProofServ.h.

◆ fgLogToSysLog

Int_t TProofServ::fgLogToSysLog = 0
staticprivate

Definition at line 172 of file TProofServ.h.

◆ fgMemHWM

Float_t TProofServ::fgMemHWM = 0.80
staticprivate

Definition at line 162 of file TProofServ.h.

◆ fgMemStop

Float_t TProofServ::fgMemStop = 0.95
staticprivate

Definition at line 163 of file TProofServ.h.

◆ fgRecursive

Int_t TProofServ::fgRecursive = 0
staticprivate

Definition at line 169 of file TProofServ.h.

◆ fgResMemMax

Long_t TProofServ::fgResMemMax = -1
staticprivate

Definition at line 160 of file TProofServ.h.

◆ fGroup

TString TProofServ::fGroup
private

Definition at line 78 of file TProofServ.h.

◆ fGroupId

Int_t TProofServ::fGroupId
private

Definition at line 105 of file TProofServ.h.

◆ fGroupPriority

Int_t TProofServ::fGroupPriority
private

Definition at line 109 of file TProofServ.h.

◆ fGroupSize

Int_t TProofServ::fGroupSize
private

Definition at line 106 of file TProofServ.h.

◆ fgSysLogEntity

TString TProofServ::fgSysLogEntity
staticprivate

Definition at line 174 of file TProofServ.h.

◆ fgSysLogService

TString TProofServ::fgSysLogService
staticprivate

Definition at line 173 of file TProofServ.h.

◆ fgVirtMemMax

Long_t TProofServ::fgVirtMemMax = -1
staticprivate

Definition at line 159 of file TProofServ.h.

◆ fHWMBoxSize

Long64_t TProofServ::fHWMBoxSize
private

Definition at line 156 of file TProofServ.h.

◆ fIdle

Bool_t TProofServ::fIdle
private

Definition at line 129 of file TProofServ.h.

◆ fIdleTOTimer

TIdleTOTimer* TProofServ::fIdleTOTimer
private

Definition at line 140 of file TProofServ.h.

◆ fImage

TString TProofServ::fImage
private

Definition at line 82 of file TProofServ.h.

◆ fInputHandler

TFileHandler* TProofServ::fInputHandler
private

Definition at line 124 of file TProofServ.h.

◆ fInterrupt

Bool_t TProofServ::fInterrupt
private

Definition at line 112 of file TProofServ.h.

◆ fLatency

TStopwatch TProofServ::fLatency
private

Definition at line 115 of file TProofServ.h.

◆ fLogFile

FILE* TProofServ::fLogFile
private

Definition at line 100 of file TProofServ.h.

◆ fLogFileDes

Int_t TProofServ::fLogFileDes
private

Definition at line 101 of file TProofServ.h.

◆ fLogFileMaxSize

Long64_t TProofServ::fLogFileMaxSize
private

Definition at line 102 of file TProofServ.h.

◆ fLogLevel

Int_t TProofServ::fLogLevel
private

Definition at line 107 of file TProofServ.h.

◆ fMasterServ

Bool_t TProofServ::fMasterServ
private

Definition at line 111 of file TProofServ.h.

◆ fMaxBoxSize

Long64_t TProofServ::fMaxBoxSize
private

Definition at line 155 of file TProofServ.h.

◆ fMaxQueries

Int_t TProofServ::fMaxQueries
private

Definition at line 154 of file TProofServ.h.

◆ fMergedWorkers

Int_t TProofServ::fMergedWorkers
private

Definition at line 151 of file TProofServ.h.

◆ fMergingMonitor

TMonitor* TProofServ::fMergingMonitor
private

Definition at line 150 of file TProofServ.h.

◆ fMergingSocket

TServerSocket* TProofServ::fMergingSocket
private

Definition at line 149 of file TProofServ.h.

◆ fMsgSizeHWM

Long64_t TProofServ::fMsgSizeHWM
private

Definition at line 166 of file TProofServ.h.

◆ fNcmd

Int_t TProofServ::fNcmd
private

Definition at line 108 of file TProofServ.h.

◆ fOrdinal

TString TProofServ::fOrdinal
private

Definition at line 104 of file TProofServ.h.

◆ fOutputFile

TString TProofServ::fOutputFile
private

Definition at line 93 of file TProofServ.h.

◆ fPackMgr

TPackMgr* TProofServ::fPackMgr
private

Definition at line 86 of file TProofServ.h.

◆ fPlayer

TVirtualProofPlayer* TProofServ::fPlayer
private

Definition at line 99 of file TProofServ.h.

◆ fPrefix

TString TProofServ::fPrefix
private

Definition at line 134 of file TProofServ.h.

◆ fProof

TProof* TProofServ::fProof
private

Definition at line 98 of file TProofServ.h.

◆ fProtocol

Int_t TProofServ::fProtocol
private

Definition at line 103 of file TProofServ.h.

◆ fQMgr

TQueryResultManager* TProofServ::fQMgr
private

Definition at line 126 of file TProofServ.h.

◆ fQMtx

std::recursive_mutex TProofServ::fQMtx
private

Definition at line 130 of file TProofServ.h.

◆ fQueryDir

TString TProofServ::fQueryDir
private

Definition at line 88 of file TProofServ.h.

◆ fQueryLock

TProofLockPath* TProofServ::fQueryLock
private

Definition at line 95 of file TProofServ.h.

◆ fQuerySeqNum

Int_t TProofServ::fQuerySeqNum
private

Definition at line 118 of file TProofServ.h.

◆ fQueuedMsg

TList* TProofServ::fQueuedMsg
private

Definition at line 132 of file TProofServ.h.

◆ fRealTime

Float_t TProofServ::fRealTime
private

Definition at line 113 of file TProofServ.h.

◆ fRealTimeLog

Bool_t TProofServ::fRealTimeLog
private

Definition at line 136 of file TProofServ.h.

◆ fReaperTimer

TReaperTimer* TProofServ::fReaperTimer
private

Definition at line 139 of file TProofServ.h.

◆ fSaveOutput

TStopwatch TProofServ::fSaveOutput
private

Definition at line 117 of file TProofServ.h.

◆ fSendLogToMaster

Bool_t TProofServ::fSendLogToMaster
private

Definition at line 147 of file TProofServ.h.

◆ fService

TString TProofServ::fService
private

Definition at line 76 of file TProofServ.h.

◆ fSessionDir

TString TProofServ::fSessionDir
private

Definition at line 85 of file TProofServ.h.

◆ fSessionTag

TString TProofServ::fSessionTag
private

Definition at line 83 of file TProofServ.h.

◆ fShutdownTimer

TShutdownTimer* TProofServ::fShutdownTimer
private

Definition at line 138 of file TProofServ.h.

◆ fSocket

TSocket* TProofServ::fSocket
private

Definition at line 97 of file TProofServ.h.

◆ fTopSessionTag

TString TProofServ::fTopSessionTag
private

Definition at line 84 of file TProofServ.h.

◆ fTotSessions

Int_t TProofServ::fTotSessions
private

Definition at line 120 of file TProofServ.h.

◆ fUser

TString TProofServ::fUser
private

Definition at line 77 of file TProofServ.h.

◆ fWaitingQueries

TList* TProofServ::fWaitingQueries
private

Definition at line 128 of file TProofServ.h.

◆ fWorkDir

TString TProofServ::fWorkDir
private

Definition at line 81 of file TProofServ.h.

  • proof/proof/inc/TProofServ.h
  • proof/proof/src/TProofServ.cxx