ROOT » PROOF » PROOFPLAYER » TProofMonSenderSQL

class TProofMonSenderSQL: public TProofMonSender


TProofMonSenderSQL

TProofMonSender implementation for SQL writers.


Function Members (Methods)

public:
virtual~TProofMonSenderSQL()
voidTObject::AbstractMethod(const char* method) const
virtual voidTObject::AppendPad(Option_t* option = "")
virtual voidTObject::Browse(TBrowser* b)
static TClass*Class()
virtual const char*TObject::ClassName() const
virtual voidTNamed::Clear(Option_t* option = "")
virtual TObject*TNamed::Clone(const char* newname = "") const
virtual Int_tTNamed::Compare(const TObject* obj) const
virtual voidTNamed::Copy(TObject& named) const
virtual voidTObject::Delete(Option_t* option = "")MENU
virtual Int_tTObject::DistancetoPrimitive(Int_t px, Int_t py)
virtual voidTObject::Draw(Option_t* option = "")
virtual voidTObject::DrawClass() constMENU
virtual TObject*TObject::DrawClone(Option_t* option = "") constMENU
virtual voidTObject::Dump() constMENU
virtual voidTObject::Error(const char* method, const char* msgfmt) const
virtual voidTObject::Execute(const char* method, const char* params, Int_t* error = 0)
virtual voidTObject::Execute(TMethod* method, TObjArray* params, Int_t* error = 0)
virtual voidTObject::ExecuteEvent(Int_t event, Int_t px, Int_t py)
virtual voidTObject::Fatal(const char* method, const char* msgfmt) const
virtual voidTNamed::FillBuffer(char*& buffer)
virtual TObject*TObject::FindObject(const char* name) const
virtual TObject*TObject::FindObject(const TObject* obj) const
virtual Option_t*TObject::GetDrawOption() const
static Long_tTObject::GetDtorOnly()
virtual const char*TObject::GetIconName() const
virtual const char*TNamed::GetName() const
virtual char*TObject::GetObjectInfo(Int_t px, Int_t py) const
static Bool_tTObject::GetObjectStat()
virtual Option_t*TObject::GetOption() const
virtual const char*TNamed::GetTitle() const
virtual UInt_tTObject::GetUniqueID() const
virtual Bool_tTObject::HandleTimer(TTimer* timer)
virtual ULong_tTNamed::Hash() const
virtual voidTObject::Info(const char* method, const char* msgfmt) const
virtual Bool_tTObject::InheritsFrom(const char* classname) const
virtual Bool_tTObject::InheritsFrom(const TClass* cl) const
virtual voidTObject::Inspect() constMENU
voidTObject::InvertBit(UInt_t f)
virtual TClass*IsA() const
virtual Bool_tTObject::IsEqual(const TObject* obj) const
virtual Bool_tTObject::IsFolder() const
Bool_tTObject::IsOnHeap() const
virtual Bool_tTNamed::IsSortable() const
Bool_tTProofMonSender::IsValid() const
Bool_tTObject::IsZombie() const
virtual voidTNamed::ls(Option_t* option = "") const
voidTObject::MayNotUse(const char* method) const
virtual Bool_tTObject::Notify()
voidTObject::Obsolete(const char* method, const char* asOfVers, const char* removedFromVers) const
voidTObject::operator delete(void* ptr)
voidTObject::operator delete(void* ptr, void* vp)
voidTObject::operator delete[](void* ptr)
voidTObject::operator delete[](void* ptr, void* vp)
void*TObject::operator new(size_t sz)
void*TObject::operator new(size_t sz, void* vp)
void*TObject::operator new[](size_t sz)
void*TObject::operator new[](size_t sz, void* vp)
TProofMonSenderSQL&operator=(const TProofMonSenderSQL&)
virtual voidTObject::Paint(Option_t* option = "")
virtual voidTObject::Pop()
virtual voidTNamed::Print(Option_t* option = "") const
virtual Int_tTObject::Read(const char* name)
virtual voidTObject::RecursiveRemove(TObject* obj)
voidTObject::ResetBit(UInt_t f)
virtual voidTObject::SaveAs(const char* filename = "", Option_t* option = "") constMENU
virtual voidTObject::SavePrimitive(ostream& out, Option_t* option = "")
virtual Int_tSendDataSetInfo(TDSet*, TList*, const char*, const char*)
virtual Int_tSendFileInfo(TDSet*, TList*, const char*, const char*)
virtual Int_tSendSummary(TList*, const char*)
voidTObject::SetBit(UInt_t f)
voidTObject::SetBit(UInt_t f, Bool_t set)
virtual voidTObject::SetDrawOption(Option_t* option = "")MENU
static voidTObject::SetDtorOnly(void* obj)
virtual voidTNamed::SetName(const char* name)MENU
virtual voidTNamed::SetNameTitle(const char* name, const char* title)
static voidTObject::SetObjectStat(Bool_t stat)
Int_tTProofMonSender::SetSendOptions(const char*)
virtual voidTNamed::SetTitle(const char* title = "")MENU
virtual voidTObject::SetUniqueID(UInt_t uid)
virtual voidShowMembers(TMemberInspector& insp) const
virtual Int_tTNamed::Sizeof() const
virtual voidStreamer(TBuffer&)
voidStreamerNVirtual(TBuffer& ClassDef_StreamerNVirtual_b)
virtual voidTObject::SysError(const char* method, const char* msgfmt) const
Bool_tTObject::TestBit(UInt_t f) const
Int_tTObject::TestBits(UInt_t f) const
TProofMonSenderSQL(const TProofMonSenderSQL&)
TProofMonSenderSQL(const char* serv, const char* user, const char* pass, const char* table = "proof.proofquerylog", const char* dstab = 0, const char* filestab = 0)
virtual voidTObject::UseCurrentStyle()
virtual voidTObject::Warning(const char* method, const char* msgfmt) const
virtual Int_tTObject::Write(const char* name = 0, Int_t option = 0, Int_t bufsize = 0)
virtual Int_tTObject::Write(const char* name = 0, Int_t option = 0, Int_t bufsize = 0) const
protected:
virtual voidTObject::DoError(int level, const char* location, const char* fmt, va_list va) const
voidTObject::MakeZombie()

Data Members

public:
static TObject::(anonymous)TObject::kBitMask
static TObject::EStatusBitsTObject::kCanDelete
static TObject::EStatusBitsTObject::kCannotPick
static TObject::EStatusBitsTObject::kHasUUID
static TObject::EStatusBitsTObject::kInvalidObject
static TObject::(anonymous)TObject::kIsOnHeap
static TObject::EStatusBitsTObject::kIsReferenced
static TObject::EStatusBitsTObject::kMustCleanup
static TObject::EStatusBitsTObject::kNoContextMenu
static TObject::(anonymous)TObject::kNotDeleted
static TObject::EStatusBitsTObject::kObjInCanvas
static TObject::(anonymous)TObject::kOverwrite
static TObject::(anonymous)TObject::kSingleKey
static TObject::(anonymous)TObject::kWriteDelete
static TObject::(anonymous)TObject::kZombie
protected:
Int_tTProofMonSender::fDataSetInfoVrsVersion of the dataset info 'table'
Int_tTProofMonSender::fFileInfoVrsVersion of the file info 'table'
TStringTNamed::fNameobject identifier
Int_tTProofMonSender::fSummaryVrsVersion of the summary 'table'
TStringTNamed::fTitleobject title
static TProofMonSender::EConfigBitsTProofMonSender::kSendDataSetInfo
static TProofMonSender::EConfigBitsTProofMonSender::kSendFileInfo
static TProofMonSender::EConfigBitsTProofMonSender::kSendSummary
private:
TStringfDSetSendOptsOpts for posting dataset table
TStringfFilesSendOptsOpts for posting files table
TVirtualMonitoringWriter*fWriterWriter instance connect to backend

Class Charts

Inheritance Inherited Members Includes Libraries
Class Charts

Function documentation

TProofMonSenderSQL(const char* serv, const char* user, const char* pass, const char* table = "proof.proofquerylog", const char* dstab = 0, const char* filestab = 0)
 Main constructor
~TProofMonSenderSQL()
 Destructor
Int_t SendSummary(TList* , const char* )
 Send 'summary' record for the table 'proofquerylog'.

 There are three versions of this record, corresponding the evolution
 in time of the monitoring requirements.

 The default version 2 corresponds to the table created with the following command:

 CREATE TABLE proofquerylog (
    id int(11) NOT NULL auto_increment,
    proofuser varchar(32) NOT NULL,
    proofgroup varchar(32) default NULL,
    querybegin datetime default NULL,
    queryend datetime default NULL,
    walltime int(11) default NULL,
    cputime float default NULL,
    bytesread bigint(20) default NULL,
    events bigint(20) default NULL,
    totevents bigint(20) default NULL,
    workers int(11) default NULL,
    querytag varchar(64) NOT NULL,
    vmemmxw bigint(20) default NULL,
    rmemmxw bigint(20) default NULL,
    vmemmxm bigint(20) default NULL,
    rmemmxm bigint(20) default NULL,
    numfiles int(11) default NULL,
    missfiles int(11) default NULL,
    status int(11) default NULL,
    rootver varchar(32) NOT NULL,
    PRIMARY KEY (id) );

 Version 1 corresponds to the table created with the following command:
    ('user','begin','end' instead of 'proofuser', 'querybegin', 'queryend';
     no 'status', 'missfiles', 'rootver'; 'dataset' field with name(s) of
     processed dataset(s))

 CREATE TABLE proofquerylog (
    id int(11) NOT NULL auto_increment,
    user varchar(32) NOT NULL,
    proofgroup varchar(32) default NULL,
    begin datetime default NULL,
    end datetime default NULL,
    walltime int(11) default NULL,
    cputime float default NULL,
    bytesread bigint(20) default NULL,
    events bigint(20) default NULL,
    totevents bigint(20) default NULL,
    workers int(11) default NULL,
    querytag varchar(64) NOT NULL,
    vmemmxw bigint(20) default NULL,
    rmemmxw bigint(20) default NULL,
    vmemmxm bigint(20) default NULL,
    rmemmxm bigint(20) default NULL,
    numfiles int(11) default NULL,
    dataset varchar(512) NOT NULL,
    PRIMARY KEY (id) );
Int_t SendDataSetInfo(TDSet* , TList* , const char* , const char* )
 Post information about the processed dataset(s). The information is taken
 from the TDSet object 'dset' and integrated with the missing files
 information in the list 'missing'. The string 'qid' is the uninque
 ID of the query; 'begin' the starting time.

 The record is formatted for the table 'proofquerydsets'.

 There are two versions of this record, with or without the starting time.
 The starting time could be looked up from the summary record, if available.

 The default version 1 corresponds to the table created with the following command:

 CREATE TABLE proofquerydsets (
    id int(11) NOT NULL auto_increment,
    dsn varchar(512) NOT NULL,
    querytag varchar(64) NOT NULL,
    querybegin datetime default NULL,
    numfiles int(11) default NULL,
    missfiles int(11) default NULL,
    PRIMARY KEY  (id),
    KEY ix_querytag (querytag) );

 Version 0 corresponds to the table created with the following command:
    (no 'querybegin')

 CREATE TABLE proofquerydsets (
    id int(11) NOT NULL auto_increment,
    dsn varchar(512) NOT NULL,
    querytag varchar(64) NOT NULL,
    numfiles int(11) default NULL,
    missfiles int(11) default NULL,
    PRIMARY KEY  (id),
    KEY ix_querytag (querytag) );

 The information is posted with a bulk insert.

 Returns 0 on success, -1 on failure.
Int_t SendFileInfo(TDSet* , TList* , const char* , const char* )
 Post information about the requested files. The information is taken
 from the TDSet object 'dset' and integrated with the missing files
 information in the list 'missing'. The string 'qid' is the unique
 ID of the query; 'begin' the starting time.

 The record is formatted for the table 'proofqueryfiles'.

 There are two versions of this record, with or without the starting time.
 The starting time could be looked up from the summary record, if available.

 The default version 1 corresponds to the table created with the following command:

 CREATE TABLE proofqueryfiles (
    id int(11) NOT NULL auto_increment,
    lfn varchar(255) NOT NULL,
    path varchar(2048) NOT NULL,
    querytag varchar(64) NOT NULL,
    querybegin datetime default NULL,
    status enum('Ok','Failed') NOT NULL default 'Ok',
    PRIMARY KEY  (id),
    KEY ix_querytag (querytag) );

 Version 0 corresponds to the table created with the following command:
    (no 'querybegin')

 CREATE TABLE proofqueryfiles (
    id int(11) NOT NULL auto_increment,
    lfn varchar(255) NOT NULL,
    path varchar(2048) NOT NULL,
    querytag varchar(64) NOT NULL,
    status enum('Ok','Failed') NOT NULL default 'Ok',
    PRIMARY KEY  (id),
    KEY ix_querytag (querytag) );

 The information is posted with a bulk insert.

 Returns 0 on success, -1 on failure.
TProofMonSenderSQL(const char* serv, const char* user, const char* pass, const char* table = "proof.proofquerylog", const char* dstab = 0, const char* filestab = 0)