Hi, Thanks for reporting this problems (CloneTree having problem with TBranchObject with default address). The fix will be uploaded in CVS shortly. Cheers, Philippe. -----Original Message----- From: owner-roottalk@pcroot.cern.ch [mailto:owner-roottalk@pcroot.cern.ch]On Behalf Of Alessio Sarti Sent: Friday, September 24, 2004 8:59 AM To: Rene Brun Cc: Alessio Sarti; roottalk@pcroot.cern.ch Subject: Re: [ROOT] Problems merging ntuples with Version 3.05/07 On Fri, 24 Sep 2004, Rene Brun wrote: > Alessio, > > Instead of: > > TFile h("run340.root"); > data->Show(33); > TFile h2("merged.root"); > data->Show(33); > > do: > > TFile h("run340.root"); > TTree *data1 = (TTree*)h.Get("data"); > data1->Show(33); > > TFile h2("merged.root"); > TTree *data2 = (TTree*)h.Get("data"); If I do what you suggest but with h2.Get("data") I got the same crash as before.... Do you really suggest to use in both cases h.Get("data") or is a copy-paste typo? The merged file still shows problems for me... alessio > data2->Show(33); > > Rene Brun > > Alessio Sarti wrote: > > > > On Fri, 24 Sep 2004, Rene Brun wrote: > > > > > Could you send the shortest possible running script AND DATA SETS > > > reproducing this problem? > > > > I have attached two root files: > > run347.root and run340.root that have no problems with the "Show" method > > and the merge.cc cpp file that should be compiled (I've also attached the > > Makefile I'm using) and that I use in the following way: > > > > merge data all.root run340.root run347.root > > > > to produce the all.root merged file that has problems with the > > data->Show() method. > > > > Let me know if you need more material. > > > > Cheers, > > alessio > > > > > > > > Rene Brun > > > > > > Alessio Sarti wrote: > > > > > > > > Hi all, > > > > after migrating my code to the new root version (thanks to Rene) I still > > > > have problems with the merged file: > > > > > > > > below run360.root is obtained with v 040102 and merged.root merging > > > > run360,361 and 362 root files.... > > > > > > > > root [0] TFile h("run360.root"); > > > > root [1] data->Show(33); > > > > ======> EVENT:33 > > > > evt = 42 > > > > nadc = 1 > > > > ntdc = 1 > > > > ntdc128 = 1 > > > > adcM = 974, > > > > 1519, 1488, 901, 1329, 0, 164, 174 > > > > tdcM = 1761, > > > > 1763, 1777, 1787, 1907, 1826, 1628, 228 > > > > Shit = 0 > > > > > > > > Sch = 0 > > > > > > > > root [2] TFile h2("merged.root"); > > > > root [3] h2.cd(); > > > > root [4] data->Show(33); > > > > > > > > *** Break *** segmentation violation > > > > Generating stack trace... > > > > 0x40e08144 in TLeafObject::ReadBasket(TBuffer&) + 0x1b6 from > > > > /home/Packages/root/lib/libTree.so > > > > 0x40dec8a1 in TBranch::ReadLeaves(TBuffer&) + 0x2f from > > > > /home/Packages/root/lib/libTree.so > > > > 0x40debaf5 in TBranch::GetEntry(long long, int) + 0x24f from > > > > /home/Packages/root/lib/libTree.so > > > > 0x40df7139 in TBranchObject::GetEntry(long long, int) + 0x139 from > > > > /home/Packages/root/lib/libTree.so > > > > 0x40e12cf3 in TTree::GetEntry(long long, int) + 0xa7 from > > > > /home/Packages/root/lib/libTree.so > > > > 0x40e16208 in TTree::Show(long long, int) + 0x34 from > > > > /home/Packages/root/lib/libTree.so > > > > 0x40e325b3 in <unknown> from /home/Packages/root/lib/libTree.so > > > > 0x406e60d6 in G__call_cppfunc + 0x263 from > > > > /home/Packages/root/lib/libCint.so > > > > 0x406d58b6 in G__interpret_func + 0x6ee from > > > > /home/Packages/root/lib/libCint.so > > > > 0x406bd4c1 in G__getfunction + 0x134a from > > > > /home/Packages/root/lib/libCint.so > > > > 0x40741a74 in G__getstructmem + 0x82a from > > > > /home/Packages/root/lib/libCint.so > > > > 0x4073bb8d in G__getvariable + 0x4db from > > > > /home/Packages/root/lib/libCint.so > > > > 0x406b4a4e in G__getitem + 0x5c1 from /home/Packages/root/lib/libCint.so > > > > 0x406b4c44 in G__getitem + 0x7b7 from /home/Packages/root/lib/libCint.so > > > > 0x406b3666 in G__getexpr + 0x783e from /home/Packages/root/lib/libCint.so > > > > 0x406fb1e6 in G__exec_function + 0x1d5 from > > > > /home/Packages/root/lib/libCint.so > > > > 0x40701e33 in G__exec_statement + 0x23eb from > > > > /home/Packages/root/lib/libCint.so > > > > 0x4069c83f in G__exec_tempfile_core + 0x2ce from > > > > /home/Packages/root/lib/libCint.so > > > > 0x4069ca1c in G__exec_tempfile_fp + 0x22 from > > > > /home/Packages/root/lib/libCint.so > > > > 0x4070a0c6 in G__process_cmd + 0x45f7 from > > > > /home/Packages/root/lib/libCint.so > > > > 0x4019dbbd in TCint::ProcessLine(char const*, TInterpreter::EErrorCode*) > > > > + 0xa9 from /home/Packages/root/lib/libCore.so > > > > 0x40106cd6 in TApplication::ProcessLine(char const*, bool, int*) + 0x670 > > > > from /home/Packages/root/lib/libCore.so > > > > 0x41051ee9 in TRint::HandleTermInput() + 0x1dd from > > > > /home/Packages/root/lib/libRint.so > > > > 0x41050d5a in TTermInputHandler::Notify() + 0x24 from > > > > /home/Packages/root/lib/libRint.so > > > > 0x41052818 in TTermInputHandler::ReadNotify() + 0x12 from > > > > /home/Packages/root/lib/libRint.so > > > > 0x402244c9 in TUnixSystem::CheckDescriptors() + 0x143 from > > > > /home/Packages/root/lib/libCore.so > > > > 0x40223aa3 in TUnixSystem::DispatchOneEvent(bool) + 0x161 from > > > > /home/Packages/root/lib/libCore.so > > > > 0x40169190 in TSystem::InnerLoop() + 0x18 from > > > > /home/Packages/root/lib/libCore.so > > > > 0x40169135 in TSystem::Run() + 0x6f from > > > > /home/Packages/root/lib/libCore.so > > > > 0x4010774a in TApplication::Run(bool) + 0x32 from > > > > /home/Packages/root/lib/libCore.so > > > > 0x410519e5 in TRint::Run(bool) + 0x327 from > > > > /home/Packages/root/lib/libRint.so > > > > 0x0804886d in main + 0x71 from /home/Packages/root/bin/root.exe > > > > 0x42015704 in __libc_start_main + 0xe4 from /lib/tls/libc.so.6 > > > > 0x0804876d in _Unwind_Resume + 0x31 from /home/Packages/root/bin/root.exe > > > > Root > > > > > > > > > I've attached the routine for the file merge that I've recompiled without > > > > problems on v 040102.. > > > > > > > > Thanks in advance for any other advice that will come, > > > > alessio > > > > > > > > ______________________________________________________ > > > > Alessio Sarti INFN Frascati > > > > > > > > >>>I'm in Frascati<<< > > > > > > > > Cell +39-06-94038166 > > > > Office +39-06-94032776 > > > > Fax +39-06-94032427 > > > > > > > > "... e a un Dio 'fatti il culo' non credere mai..." > > > > (F. De Andre') > > > > > > > > "He was turning over in his mind an intresting new concept in > > > > Thau-dimensional physics which unified time, space, magnetism, gravity > > > > and, for some reason, broccoli". (T. Pratchett: "Pyramids") > > > > > > > > On Fri, 24 Sep 2004, Rene Brun wrote: > > > > > > > > > Hi Alessio, > > > > > > > > > > Move to a more recent version, eg 4.01/02 > > > > > > > > > > Rene Brun > > > > > > > > > > Alessio Sarti wrote: > > > > > > > > > > > > Hi all, > > > > > > I'm trying to merge some ntuples with Version 3.05/07 and I'm having > > > > > > problems with the produced ntuple. > > > > > > The merging of the trees shows no problem: > > > > > > the macro runs fine and I can open the "merged" file. > > > > > > I can even call the Draw() function on the merged TTree. > > > > > > But when I try to use the Scan() function or the Show or the Loop one I > > > > > > have problems. > > > > > > > > > > > > The merged ntuple contains TVectors (below I show the content of my > > > > > > ntuple...) > > > > > > > > > > > > //Declaration of leaves types > > > > > > Int_t evt; > > > > > > Int_t nadc; > > > > > > Int_t ntdc; > > > > > > Int_t ntdc128; > > > > > > Int_t adcM[8][1]; > > > > > > Int_t tdcM[8][1]; > > > > > > TVector *Shit; > > > > > > TVector *Sch; > > > > > > > > > > > > //List of branches > > > > > > TBranch *b_evt; //! > > > > > > TBranch *b_nadc; //! > > > > > > TBranch *b_ntdc; //! > > > > > > TBranch *b_ntdc128; //! > > > > > > TBranch *b_adcM; //! > > > > > > TBranch *b_tdcM; //! > > > > > > TBranch *b_Shit; //! > > > > > > TBranch *b_Sch; //! > > > > > > > > > > > > Here's my problem.. > > > > > > > > > > > > root [1] ((TTree*)gDirectory->Get("data"))->Scan(); > > > > > > ************************************************************************************************************ > > > > > > * Row * evt * nadc * ntdc * ntdc128 * adcM * > > > > > > tdcM * Shit * Sch * > > > > > > ************************************************************************************************************ > > > > > > > > > > > > *** Break *** segmentation violation > > > > > > Generating stack trace... > > > > > > /usr/bin/c++filt: unknown demangling style `gnu-new-abi' > > > > > > Root > > > > > > > > > > > > > I've used the merging routine to merge other root files and everything > > > > > > works fine: am I doing something wrong or there's a problem merging > > > > > > TVectors? > > > > > > > > > > > > Thanks for any advice or help, > > > > > > alessio > > > > > > > > > > > > ______________________________________________________ > > > > > > Alessio Sarti INFN Frascati > > > > > > > > > > > > >>>I'm in Frascati<<< > > > > > > > > > > > > Cell +39-06-94038166 > > > > > > Office +39-06-94032776 > > > > > > Fax +39-06-94032427 > > > > > > > > > > > > "... e a un Dio 'fatti il culo' non credere mai..." > > > > > > (F. De Andre') > > > > > > > > > > > > "He was turning over in his mind an intresting new concept in > > > > > > Thau-dimensional physics which unified time, space, magnetism, gravity > > > > > > and, for some reason, broccoli". (T. Pratchett: "Pyramids") > > > > > > > > > > > > > -------------------------------------------------------------------------------- > > > > Name: merge.cc > > > > merge.cc Type: Plain Text (TEXT/plain) > > > > Encoding: BASE64 > > > > > > > -------------------------------------------------------------------------------- > > Name: merge.cc > > merge.cc Type: Plain Text (TEXT/plain) > > Encoding: BASE64 > > > > Name: Makefile > > Makefile Type: Plain Text (TEXT/PLAIN) > > Encoding: BASE64 > > > > Name: run347.root.gz > > run347.root.gz Type: unspecified type (APPLICATION/octet-stream) > > Encoding: BASE64 > > > > Name: run340.root.gz > > run340.root.gz Type: unspecified type (APPLICATION/octet-stream) > > Encoding: BASE64 >
This archive was generated by hypermail 2b29 : Sun Jan 02 2005 - 05:50:09 MET