1 void run(Int_t runNumber, Int_t nev = 10000, Int_t firstev = 0, const char* rootVersion = 0)
3 gEnv->SetValue("XSec.GSI.DelegProxy","2");
6 TProof::Mgr("aliprod@alicecaf")->SetROOTVersion(rootVersion);
9 TProof::Open("aliprod@alicecaf");
12 if(!strcmp(rootVersion,"ROOT_new") || !strcmp(rootVersion,"ROOT_pro")) {
13 cout << "Loading " << rootVersion << endl;
14 gProof->UploadPackage(Form("/afs/cern.ch/alice/caf/sw/ALICE/PARs/v4-17-Release.rec/%s.par",rootVersion));
15 gProof->EnablePackage(Form("%s.par",rootVersion));
17 gProof->UploadPackage("/afs/cern.ch/alice/caf/sw/ALICE/PARs/v4-17-Release.rec/AF-v4-17-rec.par");
18 gProof->EnablePackage("AF-v4-17-rec.par");
21 gSystem->Load("libMonaLisa.so");
22 TMonaLisaWriter monalisa("pcalishuttle02.cern.ch",
24 SendMonaLisaData(&monalisa,runNumber,"Started",0);
26 // Temporary fix in order to avoid timeouts on the master
27 gProof->SetParameter("PROOF_PacketAsAFraction",20);
30 gROOT->LoadMacro("rec.C");
31 gROOT->ProcessLine(Form("rec(%d,%d,%d);",runNumber,nev,firstev));
33 TProof::Mgr("aliprod@alicecaf")->GetSessionLogs()->Save("*",Form("log/run%d.log",runNumber));
35 // Check the produced dataset
36 TFileCollection *coll = gProof->GetDataSet(Form("run%d",runNumber));
38 Int_t nEvents = coll->GetTotalEntries("/esdTree");
40 cout << "===========================================================================" << endl;
41 cout << nEvents << " events reconstructed and stored in the dataset run" << runNumber << endl;
42 cout << "===========================================================================" << endl;
43 cout << "The dataset is:" << endl;
45 cout << "===========================================================================" << endl;
46 SendMonaLisaData(&monalisa,runNumber,"Done",nEvents);
49 SendMonaLisaData(&monalisa,runNumber,"No_Events",nEvents);
53 SendMonaLisaData(&monalisa,runNumber,"Failure",0);
57 void SendMonaLisaData(TMonaLisaWriter *monalisa, Int_t runNumber, const char* status, Int_t nEvents)
59 TMonaLisaText mlStatus("Status",status);
60 TMonaLisaValue mlEventCount("Event_count",nEvents);
62 mlList.Add(&mlStatus);
63 mlList.Add(&mlEventCount);
65 mlID.Form("%d",runNumber);
66 monalisa->SendParameters(&mlList, mlID.Data());