27 #ifndef ROOT_TProofMgr
30 #ifndef ROOT_TProofDebug
39 #ifndef ROOT_MessageTypes
48 #ifndef ROOT_TSysEvtHandler
54 #ifndef ROOT_TProofOutputList
57 #ifndef ROOT_TStopwatch
64 namespace std { using ::map; }
67 #define CANNOTUSE(x) Info(x,"Not manager: cannot use this method")
164 const char*
const kCP =
"/bin/cp -fp";
165 const char*
const kRM =
"/bin/rm -rf";
166 const char*
const kLS =
"/bin/ls -l";
167 const char*
const kUNTAR =
"%s -c %s/%s | (cd %s; tar xf -)";
168 const char*
const kUNTAR2 =
"%s -c %s | (cd %s; tar xf -)";
169 const char*
const kUNTAR3 =
"%s -c %s | (tar xf -)";
172 const char*
const kCP =
"copy";
173 const char*
const kRM =
"delete";
174 const char*
const kLS =
"dir";
175 const char*
const kUNTAR =
"...";
176 const char*
const kUNTAR2 =
"...";
177 const char*
const kUNTAR3 =
"...";
178 const char*
const kGUNZIP =
"gunzip";
200 fTotal(tot), fProcessed(proc), fBytesRead(bytes),
201 fInitTime(initt), fProcTime(proct), fEvtRateI(evts), fMBRateI(mbs),
202 fActWorkers(actw), fTotSessions(tsess), fEffSessions(esess) { }
248 const char *
msd =
"",
const char *datadir =
"") :
249 fOrdinal(ordinal), fHostName(host), fMsd(
msd), fDataDir(datadir),
250 fPerfIndex(perfidx), fSysInfo(), fStatus(
kNotActive) { }
290 fMerger(t), fPort(port), fMergedObjects(0), fWorkersToMerge(forHowManyWorkers),
291 fMergedWorkers(0), fWorkers(0), fIsActive(
kTRUE) { }
328 fExp.
Form(
"%c (%d workers still sending) ", fgCr[fIdx], fNWrks);
329 changed = (fLastNWrks != fNWrks || fLastNWrks == -1) ?
kTRUE :
kFALSE;
331 return fExp.
Data(); }
650 void NotifyLogMsg(
const char *msg,
const char *sfx =
"\n");
742 Int_t Init(
const char *masterurl,
const char *conffile,
743 const char *confdir,
Int_t loglevel,
744 const char *alias = 0);
785 const char *rfile = 0,
TSlave *sl = 0);
808 TProof(
const char *masterurl,
const char *conffile = kPROOF_ConfFile,
809 const char *confdir = kPROOF_ConfDir,
Int_t loglevel = 0,
810 const char *alias = 0,
TProofMgr *mgr = 0);
850 const char *selection =
"",
854 const char *selection =
"",
858 Int_t Archive(
const char *queryref,
const char *url = 0);
883 virtual void ClearCache(
const char *file = 0);
911 virtual TMap *
GetDataSets(
const char *uri =
"",
const char* optStr =
"");
912 virtual void ShowDataSets(
const char *uri =
"",
const char* optStr =
"");
918 void ShowDataSet(
const char *dataset =
"",
const char* opt =
"filter:SsCc");
1048 void ShowLog(
const char *queryref);
1068 virtual void SetAlias(
const char *alias=
"");
1088 static TProof *
Open(
const char *url = 0,
const char *conffile = 0,
1089 const char *confdir = 0,
Int_t loglevel = 0);
1090 static void LogViewer(
const char *url = 0,
Int_t sessionidx = 0);
TList * GetListOfBadSlaves() const
void AddInputData(TObject *obj, Bool_t push=kFALSE)
Add data objects that might be needed during the processing of the selector (see Process()).
Int_t GetNumberOfUniqueSlaves() const
Return number of unique slaves, i.e.
std::map< TString, MD5Mod_t > FileMap_t
Int_t HandleInputMessage(TSlave *wrk, TMessage *m, Bool_t deactonfail=kFALSE)
Analyze the received message.
virtual void ShowData()
List contents of the data directory in the sandbox.
void AddFeedback(const char *name)
Add object to feedback list.
static void SystemCmd(const char *cmd, Int_t fdout)
Exec system command 'cmd'. If fdout > -1, append the output to fdout.
void(* PrintProgress_t)(Long64_t tot, Long64_t proc, Float_t proctime, Long64_t bytes)
void RecvLogFile(TSocket *s, Int_t size)
Receive the log file of the slave with socket s.
void Interrupt(EUrgent type, ESlaves list=kActive)
Send interrupt to master or slave servers.
void Progress(Long64_t total, Long64_t processed)
Get query progress information.
const Long64_t kPROOF_DynWrkPollInt_s
virtual void SetAlias(const char *alias="")
Set an alias for this session.
TProofInterruptHandler & operator=(const TProofInterruptHandler &)
const char * GetMsd() const
Int_t UnloadPackages()
Unload all packages.
const char *const kGUNZIP
void ActivateAsyncInput()
Activate the a-sync input handler.
TMergerInfo & operator=(const TMergerInfo &)
void AskParallel()
Ask the for the number of parallel slaves.
virtual TFileCollection * GetStagingStatusDataSet(const char *dataset)
Obtains a TFileCollection showing the staging status of the specified dataset.
static Bool_t GetFileInCmd(const char *cmd, TString &fn)
Static method to extract the filename (if any) form a CINT command.
Int_t ClearPackages()
Remove all packages.
TMonitor * fAllUniqueMonitor
void MarkBad(TSlave *wrk, const char *reason=0)
Add a bad slave server to the bad slave list and remove it from the active list and from the two moni...
void Activate(TList *slaves=0)
Activate slave server list.
void RemoveChain(TChain *chain)
Remove chain from data set.
const char * GetDataDir() const
virtual Bool_t ExistsDataSet(const char *dataset)
Returns kTRUE if 'dataset' exists, kFALSE otherwise.
virtual ~TProof()
Clean up PROOF environment.
void PrepareInputDataFile(TString &dataFile)
Prepare the file with the input data objects to be sent the master; the objects are taken from the de...
Int_t EnablePackage(const char *package, Bool_t notOnClient=kFALSE, TList *workers=0)
Enable specified package.
void ClearData(UInt_t what=kUnregistered, const char *dsname=0)
Remove files for the data directory.
void SetPerfTree(const char *pf="perftree.root", Bool_t withWrks=kFALSE)
Enable/Disable saving of the performance tree.
virtual Bool_t RegisterDataSet(const char *name, TFileCollection *dataset, const char *optStr="")
Register the 'dataSet' on the cluster under the current user, group and the given 'dataSetName'...
virtual Long64_t DrawSelect(TDSet *dset, const char *varexp, const char *selection="", Option_t *option="", Long64_t nentries=-1, Long64_t firstentry=0)
Execute the specified drawing action on a data set (TDSet).
void SetRealTimeLog(Bool_t on=kTRUE)
Switch ON/OFF the real-time logging facility.
const char Int_t const char TProof Int_t const char const char * msd
Int_t Compare(const TObject *obj) const
Compare abstract method.
virtual TVirtualProofPlayer * MakePlayer(const char *player=0, TSocket *s=0)
Construct a TProofPlayer object.
Int_t GetRemoteProtocol() const
virtual void Print(Option_t *option="") const
Print status of PROOF cluster.
void SetMonitor(TMonitor *mon=0, Bool_t on=kTRUE)
Activate (on == TRUE) or deactivate (on == FALSE) all sockets monitored by 'mon'. ...
void InterruptCurrentMonitor()
If in active in a monitor set ready state.
virtual Bool_t StartSlaves(Bool_t attach=kFALSE)
Start up PROOF slaves.
virtual void ShowDataSetCache(const char *dataset=0)
Display the content of the dataset cache, if any (matching 'dataset', if defined).
void ShowParameters(const char *wildcard="PROOF_*") const
Show the input list parameters specified by the wildcard.
This class represents a WWW compatible URL.
void SetupWorkersEnv(TList *wrks, Bool_t increasingpool=kFALSE)
Set up packages, loaded macros, include and lib paths ...
void SetPlayer(TVirtualProofPlayer *player)
Set a new PROOF player.
TList * GetOutputNames()
FIXME: to be written.
void TerminateWorker(TSlave *wrk)
Ask an active worker 'wrk' to terminate, i.e. to shutdown.
virtual void FindUniqueSlaves()
Add to the fUniqueSlave list the active slaves that have a unique (user) file system image...
Int_t FindNextFreeMerger()
Return a merger, which is both active and still accepts some workers to be assigned to it...
void SetParameter(const char *par, const char *value)
Set input list parameter.
const char *const kPROOF_WorkDir
static const TList * GetEnvVars()
Get environemnt variables.
virtual TFileCollection * GetDataSet(const char *dataset, const char *optStr="")
Get a list of TFileInfo objects describing the files of the specified dataset.
ERunStatus GetRunStatus() const
TList * GetOutputList()
Get list with all object created during processing (see Process()).
Int_t DisablePackage(const char *package)
Remove a specific package.
Int_t Broadcast(Int_t kind, TList *slaves)
This is the ROOT implementation of the Qt object communication mechanism (see also http://www...
This class implements a mutex interface.
TFileCollection * GetMissingFiles(TQueryResult *qr=0)
Get a TFileCollection with the files missing in the query described by 'qr' or the last query if qr i...
Int_t BuildPackage(const char *package, EBuildPackageOpt opt=kBuildAll, Int_t chkveropt=kCheckROOT, TList *workers=0)
Build specified package.
TSlave * FindSlave(TSocket *s) const
Find slave that has TSocket s. Returns 0 in case slave is not found.
const char * GetConfFile() const
Class supporting a collection of lines with C++ code.
const char * GetOrdinal() const
const char * GetSessionTag() const
void SetDSet(TDSet *dset)
Bool_t IsFolder() const
Returns kTRUE in case object contains browsable objects (like containers or lists of other objects)...
virtual void SaveWorkerInfo()
Save information about the worker set in the file .workers in the working dir.
void RemoveFeedback(const char *name)
Remove object from feedback list.
void SetProgressDialog(Bool_t on=kTRUE)
Enable/Disable the graphic progress dialog.
TVirtualMutex * fCloseMutex
void LogMessage(const char *msg, Bool_t all)
Log a message into the appropriate window by emitting a signal.
void SetQueryMode(EQueryMode mode)
Change query running mode to the one specified by 'mode'.
Int_t Broadcast(const TMessage &mess, TList *slaves)
Broadcast a message to all slaves in the specified list.
Int_t GetNumberOfBadSlaves() const
Return number of bad slaves.
void ShowLog(Int_t qry=-1)
Display on screen the content of the temporary log file.
const char *const kPROOF_PackageLockFile
void SetMaxDrawQueries(Int_t max)
Set max number of draw queries whose results are saved.
TProofInterruptHandler(const TProofInterruptHandler &)
static TPluginHandler * fgLogViewer
Int_t ModifyWorkerLists(const char *ord, Bool_t add, Bool_t save)
Modify the worker active/inactive list by making the worker identified by the ordinal number 'ord' ac...
Bool_t IsEqual(const TObject *obj) const
Used to compare slaveinfos by ordinal.
void PutLog(TQueryResult *qr)
Display log of query pq into the log window frame.
Int_t GetWorkersToMerge()
void CloseProgressDialog()
Close progress dialog.
Int_t GetNumberOfQueries()
Number of queries processed by this session.
void operator=(const TProof &)
Int_t AddIncludePath(const char *incpath, Bool_t onClient=kFALSE, TList *wrks=0, Bool_t doCollect=kTRUE)
Add 'incpath' to the inc path search.
Long64_t GetBytesRead() const
virtual void ClearCache(const char *file=0)
Remove file from all file caches.
void DisableGoAsyn()
Signal to disable related switches.
Int_t SendObject(const TObject *obj, ESlaves list=kActive)
Send object to master or slave servers.
Int_t SendCurrentState(ESlaves list=kActive)
Transfer the current state of the master to the active slave servers.
Int_t BroadcastRaw(const void *buffer, Int_t length, TList *slaves)
Broadcast a raw buffer of specified length to all slaves in the specified list.
const char *const kPROOF_PackDownloadDir
TVirtualProofPlayer * fPlayer
const char * GetGroup() const
static TProofMgr * Mgr(const char *url)
Get instance of the effective manager for 'url' Return 0 on failure.
Int_t RemoveIncludePath(const char *incpath, Bool_t onClient=kFALSE)
Remove 'incpath' from the inc path search.
Int_t SavePerfTree(const char *pf=0, const char *qref=0)
Save performance information from TPerfStats to file 'pf'.
Bool_t fFinalizationRunning
void NotifyLogMsg(const char *msg, const char *sfx="\n")
Notify locally 'msg' to the appropriate units (file, stdout, window) If defined, 'sfx' is added after...
const char * Data() const
TSignalHandler * fIntHandler
void AddMergedObjects(Int_t objects)
static struct mg_connection * fc(struct mg_context *ctx)
TPluginHandler * fProgressDialog
Int_t fLastAssignedMerger
Bool_t fSendGroupView
list returned by kPROOF_GETSLAVEINFO
virtual Bool_t CancelStagingDataSet(const char *dataset)
Cancels a dataset staging request.
const char * Export(Bool_t &changed)
void StopProcess(Bool_t abort, Int_t timeout=-1)
Send STOPPROCESS message to master and workers.
#define ClassDef(name, id)
void UpdateDialog()
Final update of the progress dialog.
TList * fEnabledPackagesOnClient
THashList * fGlobalPackageDirList
THashList implements a hybrid collection class consisting of a hash table and a list to store TObject...
TSlave * CreateSlave(const char *url, const char *ord, Int_t perf, const char *image, const char *workdir)
Create a new TSlave of type TSlave::kSlave.
This code implements the MD5 message-digest algorithm.
The TNamed class is the base class for all named ROOT classes.
void SetLogLevel(Int_t level, UInt_t mask=TProofDebug::kAll)
Set server logging level.
Int_t DownloadPackage(const char *par, const char *dstdir=0)
Download a PROOF archive (PAR file) from the master package repository.
EQueryMode GetQueryMode(Option_t *mode=0) const
Find out the query mode based on the current setting and 'mode'.
void DeActivateAsyncInput()
De-activate a-sync input handler.
const char *const kPROOF_QueryDir
virtual void ShowCache(Bool_t all=kFALSE)
List contents of file cache.
const char *const kPROOF_WorkerIdleTO
Int_t BuildPackageOnClient(const char *package, Int_t opt=0, TString *path=0, Int_t chkveropt=kCheckROOT)
Build specified package on the client.
ClassDef(TProofProgressInfo, 1)
void SetInputDataFile(const char *datafile)
Set the file to be used to optimally distribute the input data objects.
TProofInterruptHandler(TProof *p)
void ShowDataSet(const char *dataset="", const char *opt="filter:SsCc")
display meta-info for given dataset usi
TVirtualProofPlayer * GetPlayer() const
const char * GetMaster() const
Int_t LoadPackageOnClient(const char *package, TList *loadopts=0)
Load specified package in the client.
TProofLockPath * fPackageLock
Int_t Collect(const TSlave *sl, Long_t timeout=-1, Int_t endtype=-1, Bool_t deactonfail=kFALSE)
Collect responses from slave sl.
static void LogViewer(const char *url=0, Int_t sessionidx=0)
Start the log viewer window usign the plugin manager.
void ResetMergePrg()
Reset the merge progress notificator.
virtual TMap * GetDataSets(const char *uri="", const char *optStr="")
Lists all datasets that match given uri.
Int_t GoMoreParallel(Int_t nWorkersToAdd)
Add nWorkersToAdd workers to current list of workers.
Int_t Init(const char *masterurl, const char *conffile, const char *confdir, Int_t loglevel, const char *alias=0)
Start the PROOF environment.
virtual void ShowDataSets(const char *uri="", const char *optStr="")
Shows datasets in locations that match the uri.
virtual Int_t PollForNewWorkers()
Asks the PROOF Serv for new workers in Dynamic Startup mode and activates them.
void ShowFeedback() const
Show items in feedback list.
TSlave * CreateSubmaster(const char *url, const char *ord, const char *image, const char *msd, Int_t nwk=1)
Create a new TSlave of type TSlave::kMaster.
void ClearDataProgress(Int_t r, Int_t t)
Progress bar for clear data.
const char * GetUser() const
TQueryResult * GetQueryResult(const char *ref=0)
Return pointer to the full TQueryResult instance owned by the player and referenced by 'ref'...
static TProof * Open(const char *url=0, const char *conffile=0, const char *confdir=0, Int_t loglevel=0)
Start a PROOF session on a specific cluster.
Bool_t IsParallel() const
Int_t UploadDataSet(const char *, TList *, const char *=0, Int_t=0, TList *=0)
*** This function is deprecated and will disappear in future versions *** *** It is just a wrapper ar...
TList * GetListOfInactiveSlaves() const
A container class for query results.
TList * GetQueryResults()
Return pointer to the list of query results in the player.
Int_t ActivateWorker(const char *ord, Bool_t save=kTRUE)
Make sure that the worker identified by the ordinal number 'ord' is in the active list...
PrintProgress_t fPrintProgress
Bool_t IsSortable() const
TList * GetListOfSlaveInfos()
Returns list of TSlaveInfo's. In case of error return 0.
const char *const kPROOF_DataDir
static TList * fgProofEnvList
virtual const char * GetMssUrl(Bool_t=kFALSE)
void HandleLibIncPath(const char *what, Bool_t add, const char *dirs)
Handle lib, inc search paths modification request.
virtual TList * GetListOfQueries(Option_t *opt="")
Ask the master for the list of queries.
void SetManager(TProofMgr *mgr)
Set manager and schedule its destruction after this for clean operations.
TObject * GetParameter(const char *par) const
Get specified parameter.
void ParseConfigField(const char *config)
The config file field may contain special instructions which need to be parsed at the beginning...
TProof()
Protected constructor to be used by classes deriving from TProof (they have to call Init themselves a...
Int_t UploadPackageOnClient(const char *package, EUploadPackageOpt opt, TMD5 *md5)
Upload a package on the client in ~/.proof/packages.
void SetDataPoolUrl(const char *url)
Int_t CleanupSession(const char *sessiontag)
Send cleanup request for the session specified by tag.
virtual void SetMssUrl(const char *mss)
void AddChain(TChain *chain)
Add chain to data set.
TMonitor * fUniqueMonitor
void SetMergedWorker()
Increase number of already merged workers by 1.
const char *const kPROOF_ConfFile
Int_t RestoreActiveList()
Restore saved list of active workers.
Int_t UnloadPackageOnClient(const char *package)
Unload a specific package on the client.
void cd(Int_t id=-1)
Set session with 'id' the default one.
const char *const kPROOF_QueryLockFile
Int_t Remove(Int_t query, Bool_t all=kFALSE)
Send remove request for the qry-th query in fQueries.
Int_t UploadPackage(const char *par, EUploadPackageOpt opt=kUntar, TList *workers=0)
Upload a PROOF archive (PAR file).
Int_t GetNumberOfActiveSlaves() const
Return number of active slaves, i.e.
const char Int_t const char TProof Int_t const char * workdir
Int_t Archive(Int_t query, const char *url)
Send archive request for the qry-th query in fQueries.
Using a TBrowser one can browse all ROOT objects.
void InitMembers()
Default initializations.
static void Reset(const char *url, Bool_t hard=kFALSE)
Wrapper around TProofMgr::Reset(...).
void DeleteDrawFeedback(TDrawFeedback *f)
Delete draw feedback object.
const char *const kPROOF_TerminateWorker
void QueryResultReady(const char *ref)
Notify availability of a query result.
void SendDataSetStatus(const char *msg, UInt_t n, UInt_t tot, Bool_t st)
Send or notify data set status.
void Touch()
Ping PROOF slaves. Returns the number of slaves that responded.
Int_t DisablePackages()
Remove all packages.
Double_t length(const TVector2 &v)
virtual Bool_t RequestStagingDataSet(const char *dataset)
Allows users to request staging of a particular dataset.
void SetPrintProgress(PrintProgress_t pp)
Int_t GetQueryReference(Int_t qry, TString &ref)
Get reference for the qry-th query in fQueries (as displayed by ShowQueries).
const char *const kPROOF_DataSetDir
void ShowDataSetQuota(Option_t *opt=0)
shows the quota and usage of all groups if opt contains "U" shows also distribution of usage on user-...
TList * GetListOfSlaves() const
TMonitor * fCurrentMonitor
Int_t BroadcastObject(const TObject *obj, Int_t kind, TList *slaves)
Broadcast an object to all slaves in the specified list.
const char * GetDataPoolUrl() const
Int_t GetLogLevel() const
void ShowPackages(Bool_t all=kFALSE, Bool_t redirlog=kFALSE)
List contents of package directory.
const char *const kPROOF_ConfDir
void SaveActiveList()
Save current list of active workers.
TPluginHandler * GetProgressDialog() const
Collection abstract base class.
void SetActive(Bool_t=kTRUE)
TList * GetLoadedMacros() const
SysInfo_t GetSysInfo() const
virtual void ClearDataSetCache(const char *dataset=0)
Clear the content of the dataset cache, if any (matching 'dataset', if defined).
void GetMaxQueries()
Get max number of queries whose full results are kept in the remote sandbox.
virtual Int_t VerifyDataSet(const char *dataset, const char *optStr="")
Verify if all files in the specified dataset are available.
void Form(const char *fmt,...)
Formats a string using a printf style format descriptor.
const char *const kPROOF_CacheLockFile
TObject * GetOutput(const char *name)
Get specified object that has been produced during the processing (see Process()).
Bool_t IsDataReady(Long64_t &totalbytes, Long64_t &bytesready)
See if the data is ready to be analyzed.
const char * GetWorkDir() const
virtual Int_t Echo(const TObject *obj)
Sends an object to master and workers and expect them to send back a message with the output of its T...
A TEventList object is a list of selected events (entries) in a TTree.
const char *const kUNTAR2
virtual const char * GetName() const
Returns name of object.
static void AddEnvVar(const char *name, const char *value)
Add an variable to the list of environment variables passed to proofserv on the master and slaves...
static void ResetEnvVars()
Clear the list of environment variables passed to proofserv on the master and slaves.
Bool_t CheckFile(const char *file, TSlave *sl, Long_t modtime, Int_t cpopt=(kCp|kCpBin))
Check if a file needs to be send to the slave.
virtual Long64_t Process(TDSet *dset, const char *selector, Option_t *option="", Long64_t nentries=-1, Long64_t firstentry=0)
Process a data set (TDSet) using the specified selector (.C) file or Tselector object Entry- or event...
Bool_t fProgressDialogStarted
const Int_t kPROOF_Protocol
Int_t SendGroupView()
Send to all active slaves servers the current slave group size and their unique id.
TMergerInfo(TSlave *t, Int_t port, Int_t forHowManyWorkers)
Int_t Exec(const char *cmd, ESlaves list, Bool_t plusMaster)
Send command to be executed on the PROOF master and/or slaves.
void SetStatus(ESlaveStatus stat)
Int_t RemoveWorkers(TList *wrks)
Used for shuting down the workres after a query is finished.
Int_t SendFile(const char *file, Int_t opt=(kBinary|kForward|kCp|kCpBin), const char *rfile=0, TSlave *sl=0)
Send a file to master or slave servers.
void RedirectWorker(TSocket *s, TSlave *sl, Int_t output_size)
Redirect output of worker sl to some merger.
void PrintProgress(Long64_t total, Long64_t processed, Float_t procTime=-1., Long64_t bytesread=-1)
Print a progress bar on stderr. Used in batch mode.
void ReleaseMonitor(TMonitor *mon)
Release the used monitor to be used, making sure to delete newly created monitors.
void DataSetStatus(const char *msg, Bool_t status, Int_t done, Int_t total)
Send dataset preparation status.
Int_t DisablePackageOnClient(const char *package)
Remove a specific package 'pack' from the client.
void AddInput(TObject *obj)
Add objects that might be needed during the processing of the selector (see Process()).
TSlaveInfo(const char *ordinal="", const char *host="", Int_t perfidx=0, const char *msd="", const char *datadir="")
virtual void ValidateDSet(TDSet *dset)
Validate a TDSet.
TList * GetFeedbackList() const
Return feedback list.
const char * GetUrl(Bool_t withDeflt=kFALSE) const
Return full URL.
TMacro * GetLastLog()
Fill a TMacro with the log lines since the last reading (fLogFileR) Return (TMacro *)0 if no line was...
Int_t VerifyDataSetParallel(const char *uri, const char *optStr)
Internal function for parallel dataset verification used TProof::VerifyDataSet and TProofLite::Verify...
Int_t RemoveDynamicPath(const char *libpath, Bool_t onClient=kFALSE)
Remove 'libpath' from the lib path search.
void GoAsynchronous()
Send GOASYNC message to the master.
void ClearInputData(TObject *obj=0)
Remove obj form the input data list; if obj is null (default), clear the input data info...
static unsigned int total
Int_t SendCommand(const char *cmd, ESlaves list=kActive)
Send command to be executed on the PROOF master and/or slaves.
Int_t AssertPath(const char *path, Bool_t writable)
Make sure that 'path' exists; if 'writable' is kTRUE, make also sure that the path is writable...
void Print(Option_t *option="") const
Print slave info.
Int_t LoadPackage(const char *package, Bool_t notOnClient=kFALSE, TList *loadopts=0, TList *workers=0)
Load specified package.
Float_t GetRealTime() const
TList * GetInputList()
Get input list.
Int_t HandleOutputOptions(TString &opt, TString &target, Int_t action)
Extract from opt information about output handling settings.
Bool_t AreAllWorkersAssigned()
Return if the determined number of workers has been already assigned to this merger.
R__EXTERN TProof * gProof
void SendLogToWindow(Bool_t mode)
TList * GetListOfUniqueSlaves() const
void Close(Option_t *option="")
Close all open slave servers.
TList * GetListOfActiveSlaves() const
void SetFeedback(TString &opt, TString &optfb, Int_t action)
Extract from opt in optfb information about wanted feedback settings.
const char *const kPROOF_InputDataFile
TDrawFeedback * CreateDrawFeedback()
Draw feedback creation proxy.
void SetSysInfo(SysInfo_t si)
Setter for fSysInfo.
void DeleteParameters(const char *wildcard)
Delete the input list parameters specified by a wildcard (e.g.
Int_t SetParallelSilent(Int_t nodes, Bool_t random=kFALSE)
Tell PROOF how many slaves to use in parallel.
Int_t GoParallel(Int_t nodes, Bool_t accept=kFALSE, Bool_t random=kFALSE)
Go in parallel mode with at most "nodes" slaves.
static void * SlaveStartupThread(void *arg)
static Int_t GetInputData(TList *input, const char *cachedir, TString &emsg)
Get the input data from the file defined in the input list.
Bool_t UseDynamicStartup() const
void ClearInput()
Clear input object list.
Int_t GetNumberOfDrawQueries()
void Feedback(TList *objs)
Get list of feedback objects.
TList * fNonUniqueMasters
TMap implements an associative array of (key,value) pairs using a THashTable for efficient retrieval ...
virtual void SendInputDataFile()
Send the input data objects to the master; the objects are taken from the dedicated list and / or the...
TList * fEnabledPackagesOnCluster
void Detach(Option_t *opt="")
Detach this instance to its proofserv.
const char *const kPROOF_MissingFiles
void SetRunStatus(ERunStatus rst)
virtual TTree * GetTreeHeader(TDSet *tdset)
Creates a tree header (a tree with nonexisting files) object for the DataSet.
void ShowMissingFiles(TQueryResult *qr=0)
Show information about missing files during query described by 'qr' or the last query if qr is null (...
Int_t GetSandbox(TString &sb, Bool_t assert=kFALSE, const char *rc=0)
Set the sandbox path from ' Proof.Sandbox' or the alternative var 'rc'.
void ShowQueries(Option_t *opt="")
Ask the master for the list of queries.
Int_t AddWorkers(TList *wrks)
Works on the master node only.
Bool_t AreAllWorkersMerged()
Return if merger has already merged all workers, i.e. if it has finished its merging job...
Long64_t Finalize(Int_t query=-1, Bool_t force=kFALSE)
Finalize the qry-th query in fQueries.
static Vc_ALWAYS_INLINE int_v max(const int_v &x, const int_v &y)
const char * GetName() const
Returns name of object.
TString Getenv(const char *env, const char *ord="0")
Get value of environment variable 'env' on node 'ord'.
Int_t UnloadPackage(const char *package)
Unload specified package.
Mother of all ROOT objects.
Float_t GetCpuTime() const
typedef void((*Func_t)())
void CleanGDirectory(TList *ol)
Remove links to objects in list 'ol' from gDirectory.
Int_t GetNumberOfSlaves() const
Return number of slaves as described in the config file.
void ResetProgressDialogStatus()
TList * GetListOfEnabledPackages()
Get from the master the list of names of the packages enabled.
TString fActiveSlavesSaved
Bool_t SendingLogToWindow() const
TMergerInfo(const TMergerInfo &)
void ShowEnabledPackages(Bool_t all=kFALSE)
List which packages are enabled.
Int_t GetRC(const char *RCenv, Int_t &env, const char *ord="0")
Get into 'env' the value of integer RC env variable 'rcenv' on node 'ord'.
Int_t UploadDataSetFromFile(const char *, const char *, const char *=0, Int_t=0, TList *=0)
*** This function is deprecated and will disappear in future versions *** *** It is just a wrapper ar...
static TList * GetDataSetSrvMaps(const TString &srvmaps)
const char * GetConfDir() const
Class that contains a list of TFileInfo's and accumulated meta data information about its entries...
TMap * GetDataSetQuota(const char *optStr="")
returns a map of the quotas of all groups
Int_t GetActiveMergersCount()
Get the active mergers count.
TProofOutputList fOutputList
Int_t Ping()
Ping PROOF. Returns 1 if master server responded.
Int_t GetSessionID() const
A chain is a collection of files containg TTree objects.
void AskStatistics()
Ask the for the statistics of the slaves.
const char *const kUNTAR3
Int_t GetNumberOfInactiveSlaves() const
Return number of inactive slaves, i.e.
static Int_t SaveInputData(TQueryResult *qr, const char *cachedir, TString &emsg)
Save input data file from 'cachedir' into the sandbox or create a the file with input data objects...
void ClearFeedback()
Clear feedback list.
Int_t SetParallel(Int_t nodes=-1, Bool_t random=kFALSE)
Tell PROOF how many slaves to use in parallel.
void AddWorker(TSlave *sl)
Add new worker to the list of workers to be merged by this merger.
ClassImp(TSlaveInfo) Int_t TSlaveInfo const TSlaveInfo * si
Used to sort slaveinfos by ordinal.
Int_t GetClientProtocol() const
Int_t AddDynamicPath(const char *libpath, Bool_t onClient=kFALSE, TList *wrks=0, Bool_t doCollect=kTRUE)
Add 'libpath' to the lib path search.
TList * GetListOfPackages()
Get from the master the list of names of the packages available.
TList * fAvailablePackages
A TTree object has a header with a name and a title.
void SetDrawFeedbackOption(TDrawFeedback *f, Option_t *opt)
Set draw feedback option.
Int_t SendInitialState()
Transfer the initial (i.e.
Int_t Retrieve(Int_t query, const char *path=0)
Send retrieve request for the qry-th query in fQueries.
TProofMgr::EServType fServType
TList * GetEnabledPackages() const
TList * fTerminatedSlaveInfos
Int_t BroadcastGroupPriority(const char *grp, Int_t priority, ESlaves list=kAllUnique)
Broadcast the group priority to all workers in the specified list.
void GetStatistics(Bool_t verbose=kFALSE)
Get statistics about CPU time, real time and bytes read.
const char * GetImage() const
TList * FindDataSets(const char *searchString, const char *optStr="")
Find datasets, returns in a TList all found datasets.
Bool_t Prompt(const char *p)
Prompt the question 'p' requiring an answer y,Y,n,N Return kTRUE is the answer was y or Y...
virtual void ShowStagingStatusDataSet(const char *dataset, const char *optStr="filter:SsCc")
Like GetStagingStatusDataSet, but displays results immediately.
virtual Int_t RemoveDataSet(const char *dataset, const char *optStr="")
Remove the specified dataset from the PROOF cluster.
void AskForOutput(TSlave *sl)
Master asks for output from worker sl.
virtual Int_t Load(const char *macro, Bool_t notOnClient=kFALSE, Bool_t uniqueOnly=kTRUE, TList *wrks=0)
Load the specified macro on master, workers and, if notOnClient is kFALSE, on the client...
virtual Int_t SetDataSetTreeName(const char *dataset, const char *treename)
Set/Change the name of the default tree.
A TSelector object is used by the TTree::Draw, TTree::Scan, TTree::Process to navigate in a TTree and...
void GetLog(Int_t start=-1, Int_t end=-1)
Ask for remote logs in the range [start, end].
void ResetProgressDialog(const char *sel, Int_t sz, Long64_t fst, Long64_t ent)
Reset progress dialog.
Int_t ClearPackage(const char *package)
Remove a specific package.
Int_t SendPrint(Option_t *option="")
Send print command to master server.
void StartupMessage(const char *msg, Bool_t status, Int_t done, Int_t total)
Send startup message.
Int_t DeactivateWorker(const char *ord, Bool_t save=kTRUE)
Remove the worker identified by the ordinal number 'ord' from the the active list.
TProofProgressInfo(Long64_t tot=0, Long64_t proc=0, Long64_t bytes=0, Float_t initt=-1., Float_t proct=-1., Float_t evts=-1., Float_t mbs=-1., Int_t actw=0, Int_t tsess=0, Float_t esess=0.)
static int64_t push(FILE *fp, SOCKET sock, SSL *ssl, const char *buf, int64_t len)
Int_t GetParallel() const
Returns number of slaves active in parallel mode.
static void DelEnvVar(const char *name)
Remove an variable from the list of environment variables passed to proofserv on the master and slave...
TMonitor * fActiveMonitor
const char * GetUser() const
Bool_t Notify()
Notify when signal occurs.
void Browse(TBrowser *b)
Build the PROOF's structure in the browser.
virtual ~TProofProgressInfo()
friend class TPacketizerDev
Int_t CollectInputFrom(TSocket *s, Int_t endtype=-1, Bool_t deactonfail=kFALSE)
Collect and analyze available input from socket s.
Long64_t fLastPollWorkers_s
Bool_t IsEndMaster() const
Int_t BroadcastFile(const char *file, Int_t opt, const char *rfile, TList *wrks)
Broadcast file to all workers in the specified list.
Int_t Broadcast(Int_t kind, ESlaves list=kActive)
static Int_t SendInputData(TQueryResult *qr, TProof *p, TString &emsg)
Send the input data file to the workers.
void HandleSubmerger(TMessage *mess, TSlave *sl)
Process a message of type kPROOF_SUBMERGER.
const char Int_t const char * image
const char *const kPROOF_CacheDir
void SetOrdinal(const char *ord)
const char *const kPROOF_PackDir
static Int_t AssertDataSet(TDSet *dset, TList *input, TDataSetManager *mgr, TString &emsg)
Make sure that dataset is in the form to be processed.
Bool_t CreateMerger(TSlave *sl, Int_t port)
Create a new merger.