RE: Chain Merge Problem: details

From: Philippe Canal <pcanal_at_fnal.gov>
Date: Fri, 10 Nov 2006 14:02:04 -0600


Hi,

The problem have been fixed in the CVS repository (it was linked to the fact contain
more than one leaf in a branch created via the 'leaflist' method);

To work around the problem you need to set the address of the branch explicitly
(to a big enough memory area) before doing the Merge.

Cheers,
Philippe

-----Original Message-----
From: owner-roottalk_at_pcroot.cern.ch [mailto:owner-roottalk_at_pcroot.cern.ch] On Behalf Of er cuji
Sent: Friday, November 10, 2006 11:54 AM To: roottalk_at_pcroot.cern.ch
Subject: [ROOT] Chain Merge Problem: details

Dear Rene,

sorry for the previous (not very precise) mail. I am running ROOT 5.13.02 on OS X 10.4. I have made a macro that I execute with the standard .x command. In a macro I am using the following list of commands

TChain *chain_ncal = new TChain("Eventi"); for(int s=0;s<=run_max;s++)
{   

sprintf(fn_root,"Run_%s/run%s.root",namerun[s],namerun[s]);

   printf("%s\n",fn_root);
   chain_ncal->Add(fn_root);
 }
chain_ncal->Print();

This works properly adding to the chain 7 files 4.4MB large. As soon as I add a line like

chain_ncal->Merge("all.root");

it gives me an error. The gdb output is attached at the end of the mail.
Why? How can I merge the chain into a single file. thx

Francesco

Program received signal EXC_BAD_ACCESS, Could not access memory.
Reason: KERN_PROTECTION_FAILURE at address: 0x00000004 0x0164a548 in TBuffer::operator>> ()
(gdb) bt
#0 0x0164a548 in TBuffer::operator>> ()
#1 0x0254e170 in TBranch::ReadLeaves ()
#2 0x0254f814 in TBranch::GetEntry ()
#3 0x0259a944 in TTree::GetEntry ()
#4 0x02572124 in TChain::Merge ()
#5 0x02612e90 in G__G__Tree_227_0_52 ()
#6 0x003ee42c in G__ExceptionWrapper ()
#7 0x0049e23c in G__call_cppfunc ()
#8 0x00488288 in G__interpret_func ()
#9 0x0047ac34 in G__getfunction ()
#10 0x00519288 in G__getstructmem ()
#11 0x00511380 in G__getvariable ()
#12 0x00456d20 in G__getitem ()
#13 0x00462820 in G__getexpr ()
#14 0x004badbc in G__exec_function ()
#15 0x004c0028 in G__exec_statement ()
#16 0x004c3484 in G__exec_if ()
#17 0x004bfbd4 in G__exec_statement ()
#18 0x0048a090 in G__interpret_func ()
#19 0x0047b2f0 in G__getfunction ()
#20 0x00457144 in G__getitem ()
#21 0x00462820 in G__getexpr ()
#22 0x00463dc4 in G__calc_internal ()
#23 0x004ca1c4 in G__process_cmd ()
#24 0x010e410c in TCint::ProcessLine ()
#25 0x010108ac in TApplication::ProcessFile ()
#26 0x0100dc38 in TApplication::ProcessLine ()
#27 0x000390c0 in TRint::HandleTermInput ()
#28 0x011408f0 in TUnixSystem::CheckDescriptors ()
#29 0x011411bc in TUnixSystem::DispatchOneEvent ()
#30 0x0108f5c4 in TSystem::InnerLoop ()
#31 0x0108f52c in TSystem::Run ()
#32 0x0100cff4 in TApplication::Run ()
#33 0x000395dc in TRint::Run ()
#34 0x00003980 in main ()



Do You Yahoo!?
Poco spazio e tanto spam? Yahoo! Mail ti protegge dallo spam e ti da tanto spazio gratuito per i tuoi file e i messaggi http://mail.yahoo.it Received on Fri Nov 10 2006 - 21:03:02 MET

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