Proof on Demand test not working

We are currently trying to set-up Proof on Demand on our cluster. We have cvmfs setup and have been able to get PoD setup by using localSetupPoD. We can also get a Proof cluster started by using pod-server-start and pod-submit -r condor -n [number of jobs]. We can see the jobs in our condor pool. The issue is when we try to do the test suggested below:

root> TProofBench pb(“pod://”)
root> pb.RunCPU()

We are able to do the first line but the second line returns this error:

Info in TProofBenchRunCPU::Run: Uploading ‘$ROOTSYS/etc/proof/proofbench/ProofBenchCPUSel.par’ …
Error in TProof::UploadPackage: PAR file ‘ProofBenchCPUSel.par’ not found; paths tried: /cvmfs/atlas.cern.ch/repo/ATLASLocalRootBase/x86_64/root/5.34.22-x86_64-slc6-gcc48-opt/etc/proof/proofbench/ProofBenchCPUSel.par, /atlas/u/lhavener/.proof/packages/ProofBenchCPUSel.par
Error in TProofBenchRunCPU::Run: problems uploading ‘$ROOTSYS/etc/proof/proofbench/ProofBenchCPUSel.par’ - cannot continue
(Int_t)0

We also noticed that the par file indicated in the error doesn’t exist anywhere.

I am wondering if anyone has come across this error before or know of another test we can do to check that PoD is working. Any help would be greatly appreciated!

Hi,

I was not able to reproduce the problem with my own builds, but looking at the release builds I think I have understood where the problem comes from. It has to do with the way - starting from 5.34-22 - the release are packaged. Because of one conditional check not needed, the proofbench module, which contains the missing PAR file, does not get included.
I’ll fix it asap in the relevant repositories and branches.
I should be also able to provide a workaround which I will post here asap.

Thanks for reporting.

G. Ganis

Hello,

Here isa workaround for the problem.
Download the attached tar file pbenchpas.tgz, containing the missing PAR files. Unpack it in the working directory:

$ tar xzvf pbenchsels.tgz

Now upload and enable manually the two packages before running the test:

root[] TProofBench pb("pod://")
root[] gProof->UploadPackage("ProofBenchCPUSel.par")
root[] gProof->EnablePackage("ProofBenchCPUSel")
root[] gProof->UploadPackage("ProofBenchDataSel.par")
root[] gProof->EnablePackage("ProofBenchDataSel")
root[] pb.RunCPU()

This should work.
Let me know.
I have a general solution for the problem but I still need some testing and it is likely to go in after the Xmas break.

G. Ganis
pbenchsels.tgz (21.8 KB)