Hi Derek,
quite ugly. Anything strange in the server or client side log?
Fabrizio
Derek Feichtinger wrote:
> Posted by: Derek Feichtinger <dfeich>
> Related to: [ROOT bugs #16484] Errors filling tree on a xrootd file
> URL: <http://savannah.cern.ch/bugs/?func=detailitem&item_id=16484>
>
>
> Hi,
>
> I see errors when filling a tree in a file that is openend via xrootd. The
> problem gets worse, the more entries I try to fill.
>
> (N.B. It's not that I consider it an efficient way to work, filling a remote
> tree, but I was toying around with a few tests for our xrootd installation)
>
> I attached a sample file with which I can reproduce the error.
>
> .L xrootdFillTree.C+
> xrootdFillTree(5000)
> [No error]
> xrootdFillTree(10000)
> Error in <TTree::Fill>: Failed filling branch:t1.px, nbytes=-1
> Error in <TTree::Fill>: Failed filling branch:t1.py, nbytes=-1
> Error in <TTree::Fill>: Failed filling branch:t1.pz, nbytes=-1
>
> xrootdFillTree(20000)
> [2*above errors]
>
> xrootdFillTree(30000)
> [3*above errors]
>
> ROOT version: 5.11.02 (using xrootd-20060414-1334_dbg of the distribution)
> arch:
> Intel(R) XEON(TM) CPU 2.20GHz
> and also Dual Core AMD Opteron(tm) Processor 280
>
> Thanks,
> Derek
>
>
> Submitted by: dfeich
> Originator Email:
> Bug / Feature: Bug report
> Category: Input/Output
> Priority: 5 - Normal
> Severity: 3 - Normal
> Status:
> Assigned to:
> Open/Closed: Open
> Release: 5.11.02
> Operating System: GNU/Linux
>
>
> _______________________________________________
> Message sent via/by LCG Savannah
> http://savannah.cern.ch/
>
>
> ------------------------------------------------------------------------
>
> #include "TString.h"
> #include "TFile.h"
> #include "TTree.h"
> #include "TRandom.h"
>
> void
> xrootdFillTree(int entries)
> {
> // using a remote tree via xrootd leads to errors for entries > ~5000 in my case
> TString filename="root://merlin01//tmp/feichtinger/xrootd/ns/xrootdFillTree.root";
>
> // using a local file works fine
> //filename="localtest.root";
>
> TFile *f = TFile::Open(filename,"recreate");
> if(!f) {
> fprintf(stderr,"failed to recreate file %s\n",filename.Data());
> return;
> }
>
> TTree *t1 = new TTree("t1","TreeTest");
>
> Float_t px,py,pz;
> t1->Branch("px",&px,"px/F");
> t1->Branch("py",&py,"py/F");
> t1->Branch("pz",&pz,"pz/F");
>
> Float_t pmean=1.0;
> for(int i=0;i<entries;i++) {
> px=gRandom->Gaus(0,pmean);
> py=gRandom->Gaus(0,pmean);
> pz=gRandom->Gaus(0,pmean);
>
> t1->Fill();
> }
>
> t1->Write();
> //delete(t1);
> f->Close();
>
> return;
> }
|