Re: problem on hadd

From: Hajime Nanjo <nanjo_at_scphys.kyoto-u.ac.jp>
Date: Thu, 29 Jun 2006 21:00:52 +0900


Dear Rene,

Do you mean ROOT v5.11.06?
I tried that version, but the problem is not fixed. Do I have to use cvs head?

Best regards,
Hajime
>
> This problem had already been fixed in 5.11.
>
> Rene Brun
>
> Hajime Nanjo wrote:
> > Dear ROOT developers,
> >
> > I have a trouble in TTree::Draw() for a root file created wiht hadd,
> > when maximum size of variable length array is different between
> > two input files of hadd.
> > The number of events drawn is less than that actually filled.
> > An error message, "ERROR leaf:a, len=2 and max=1",
> > indicates excess of leaf length beyond the maximum leaf length.
> >
> > When "fast" option in TChain::Merge is deleted at the line 248 in hadd.cxx,
> > the problem is vanished.
> >
> > Please fix this problem.
> > (I use ROOT 5.10/00 in scientific linux 4)
> >
> > Best regards,
> > Hajime
> >
> > A script creating two input files, "sub1.root", sub2.root", is as follows.
> > ////////////////////////////////////////////////////////
> > {
> > int n;
> > double a[100];
> >
> > TFile* tf = new TFile("sub1.root","RECREATE");
> > TTree* tr = new TTree("tr","tr");
> > tr->Branch("n",&n,"n/I");
> > tr->Branch("a",a,"a[n]/D");
> > {
> > n=1;
> > a[0]=1;
> > tr->Fill();
> > }
> > tr->Write();
> > tf->Close();
> >
> >
> > tf = new TFile("sub2.root","RECREATE");
> > tr = new TTree("tr","tr");
> > tr->Branch("n",&n,"n/I");
> > tr->Branch("a",a,"a[n]/D");
> > {
> > n=2;
> > a[0]=1;
> > a[1]=2;
> > tr->Fill();
> > }
> > tr->Write();
> > tf->Close();
> > }
> > ////////////////////////////////////////////////////////
> > A file, "all.root", is created as follows.
> > hadd all.root sub1.root sub2.root
> > ////////////////////////////////////////////////////////
> > TTree::Draw() is called as follows.
> > root [0] TFile* tf = new TFile("all.root")
> > root [1] tr->Print()
> > ******************************************************************************
> > *Tree :tr : tr *
> > *Entries : 2 : Total = 1698 bytes File Size = 668 *
> > * : : Tree compression factor = 1.00 *
> > ******************************************************************************
> > *Br 0 :n : n/I *
> > *Entries : 2 : Total Size= 676 bytes File Size = 70 *
> > *Baskets : 1 : Basket Size= 32000 bytes Compression= 1.00 *
> > *............................................................................*
> > *Br 1 :a : a[n]/D *
> > *Entries : 2 : Total Size= 795 bytes File Size = 86 *
> > *Baskets : 1 : Basket Size= 32000 bytes Compression= 1.00 *
> > *............................................................................*
> > root [2] tr->Draw("a")
> > <TCanvas::MakeDefCanvas>: created default TCanvas with name c1
> > ERROR leaf:a, len=2 and max=1
> > ERROR leaf:a, len=2 and max=1
> > ////////////////////////////////////////////////////////
> > Here I expect 3 events are displayed, but there are only 2 events.
> >
>
Received on Thu Jun 29 2006 - 14:01:01 MEST

This archive was generated by hypermail 2.2.0 : Mon Jan 01 2007 - 16:31:59 MET