Re: [ROOT] TChain and StartViewer

From: Rene Brun (Rene.Brun@cern.ch)
Date: Wed Apr 09 2003 - 09:40:34 MEST


Hi Lee,

You should start from the CVS version, not from the tar file of 3.05/03

Rene Brun

"LEE, KERRY T. (JSC-SR) (UHCL)" wrote:
> 
> Philippe,
> 
> thanks for the quick reply.
> 
> This work around
>         f.LoadTree(0);
> works if I only have one file in the TChain,
> 
> root [0]   gSystem.Load("/home/kerrylee/marie/code/object/data/time.sl");
> root [1]   gSystem.Load("/home/kerrylee/marie/code/object/data/data.sl");
> root [2] TChain f("DataTree")
> root [3] f.Add("/home/kerrylee/marie/data/rootfiles/2003_03.root")
> (Int_t)1
> root [4] f.LoadTree(0)
> (Int_t)0
> root [5] f.StartViewer()
> 
>  but when I add the second I get a segv.
> 
> root [6] f.Add("/home/kerrylee/marie/data/rootfiles/2003_04.root");
> root [7] f.StartViewer();
> tv__tree = (TTree *) gROOT->FindObject("DataTree");
> tv__tree_list->Add(tv__tree);
> 
>  *** Break *** segmentation violation
>  Generating stack trace...
> 
> Before the workaround I got a segv no matter if I had one file or two added
> to the TChain.
> Is this just because the work around only fixes the TreeViewer for a single
> file?  Does the CVS version have the fix for multiple files?
> 
> Thanks
> Kerry
> 
> -----Original Message-----
> From: Philippe Canal
> To: LEE, KERRY T. (JSC-SR) (UHCL); roottalk@pcroot.cern.ch
> Sent: 4/8/2003 3:39 PM
> Subject: RE: [ROOT] TChain and StartViewer
> 
> Hi Kerry,
> 
> Thanks for reporting this problem.  It is fixed in the CVS repository
> (and
> hence in the next release).
> 
> A work around is to call:
>         f.LoadTree(0);
> after adding the first file but before calling StartViewer.
> 
> Cheers,
> Philippe.
> 
> -----Original Message-----
> From: owner-roottalk@pcroot.cern.ch
> [mailto:owner-roottalk@pcroot.cern.ch]On Behalf Of LEE, KERRY T.
> (JSC-SR) (UHCL)
> Sent: Tuesday, April 08, 2003 3:04 PM
> To: 'roottalk@pcroot.cern.ch'
> Subject: [ROOT] TChain and StartViewer
> 
> Hi,
> 
> I am using ROOT 3.05.03 on RH7.1 compiled from source.
> 
> In this new version I get a segv when I do the following
> 
> root [0]
> gSystem.Load("/home/kerrylee/marie/code/object/data/time.sl");
> root [1]
> gSystem.Load("/home/kerrylee/marie/code/object/data/data.sl");
> root [2] TChain f("DataTree")
> root [3] f.Add("/home/kerrylee/marie/data/rootfiles/2003_03.root")
> (Int_t)1
> root [4] f.Add("/home/kerrylee/marie/data/rootfiles/2003_04.root")
> (Int_t)1
> root [5] f.StartViewer()
> tv__tree = (TTree *) gROOT->FindObject("DataTree");
> tv__tree_list->Add(tv__tree);
> 
>  *** Break *** segmentation violation
>  Generating stack trace...
>  0x401bcbbf in TUnixSystem::StackTrace(void) + 0x25b from
> /home/products/root/3.05.03/root/lib/libCore.so
>  0x401bb712 in TUnixSystem::DispatchSignals(ESignals) + 0xb2 from
> /home/products/root/3.05.03/root/lib/libCore.so
>  0x401ba8bb in TWebFile::GetSize(void) const + 0x9b from
> /home/products/root/3.05.03/root/lib/libCore.so
>  0x401be491 in TUnixSystem::GetSockOpt(int, int, int *) + 0x339 from
> /home/products/root/3.05.03/root/lib/libCore.so
>  0x40ca0935 in sigaction at
> /usr/src/bs/BUILD/glibc-2.2.2/linuxthreads/signals.c:97 from
> /lib/i686/libpthread.so.0
>  0x40d40648 in killpg at
> /usr/src/bs/BUILD/glibc-2.2.2/signal/../sysdeps/posix/killpg.c:34 from
> /lib/i686/libc.so.6
>  0x41494e13 in TTreePlayer::UpdateFormulaLeaves(void) + 0x1f from
> /home/products/root/3.05.03/root/lib/libTreePlayer.so
>  0x40b42caa in TChain::LoadTree(int) + 0x89e from
> /home/products/root/3.05.03/root/lib/libTree.so
>  0x40b4214e in TChain::GetListOfBranches(void) + 0x22 from
> /home/products/root/3.05.03/root/lib/libTree.so
>  0x414d9b33 in TTreeViewer::MapTree(TTree *, TGListTreeItem *, bool) +
> 0x2f
> from /home/products/root/3.05.03/root/lib/libTreeViewer.so
>  0x414d0397 in TTreeViewer::SetTreeName(char const *) + 0x393 from
> /home/products/root/3.05.03/root/lib/libTreeViewer.so
>  0x414cfe06 in TTreeViewer::TTreeViewer(TTree const *) + 0x18a from
> /home/products/root/3.05.03/root/lib/libTreeViewer.so
>  0x414e4fde in G__cpp_dllrevG__TreeViewer + 0x3aa from
> /home/products/root/3.05.03/root/lib/libTreeViewer.so
>  0x405fedff in G__CallFunc::ExecInt(void *) + 0x6f from
> /home/products/root/3.05.03/root/lib/libCint.so
>  0x40186252 in TMethodCall::Execute(void *, long &) + 0x6a from
> /home/products/root/3.05.03/root/lib/libCore.so
>  0x40133820 in TPluginHandler::ExecPlugin(int,...) + 0x420 from
> /home/products/root/3.05.03/root/lib/libCore.so
>  0x414942ef in TTreePlayer::StartViewer(int, int) + 0x8f from
> /home/products/root/3.05.03/root/lib/libTreePlayer.so
>  0x40b55be7 in TTree::StartViewer(void) + 0x4b from
> /home/products/root/3.05.03/root/lib/libTree.so
>  0x40b6e6d1 in G__cpp_dllrevG__Tree + 0x7ef5 from
> /home/products/root/3.05.03/root/lib/libTree.so
>  0x40588351 in G__call_cppfunc + 0x281 from
> /home/products/root/3.05.03/root/lib/libCint.so
>  0x405778b1 in G__interpret_func + 0x895 from
> /home/products/root/3.05.03/root/lib/libCint.so
>  0x4055d6c5 in G__getfunction + 0x1449 from
> /home/products/root/3.05.03/root/lib/libCint.so
>  0x405ec2ab in G__getstructmem + 0x7c3 from
> /home/products/root/3.05.03/root/lib/libCint.so
>  0x405e5076 in G__getvariable + 0x642 from
> /home/products/root/3.05.03/root/lib/libCint.so
>  0x40555535 in G__getitem + 0x4dd from
> /home/products/root/3.05.03/root/lib/libCint.so
>  0x40553ce9 in G__getexpr + 0x8d91 from
> /home/products/root/3.05.03/root/lib/libCint.so
>  0x4059f56b in G__exec_function + 0x123 from
> /home/products/root/3.05.03/root/lib/libCint.so
>  0x405a6c54 in G__exec_statement + 0x2efc from
> /home/products/root/3.05.03/root/lib/libCint.so
>  0x4053b40b in G__exec_tempfile_core + 0x2f3 from
> /home/products/root/3.05.03/root/lib/libCint.so
>  0x4053b5ba in G__exec_tempfile_fp + 0x22 from
> /home/products/root/3.05.03/root/lib/libCint.so
>  0x405af52b in G__process_cmd + 0x4f03 from
> /home/products/root/3.05.03/root/lib/libCint.so
>  0x4017652a in TCint::ProcessLine(char const *, TInterpreter::EErrorCode
> *)
> + 0x9a from /home/products/root/3.05.03/root/lib/libCore.so
>  0x40108ab7 in TApplication::ProcessLine(char const *, bool, int *) +
> 0x56b
> from /home/products/root/3.05.03/root/lib/libCore.so
>  0x40c66467 in TRint::HandleTermInput(void) + 0x127 from
> /home/products/root/3.05.03/root/lib/libRint.so
>  0x40c65790 in TTermInputHandler::Notify(void) + 0x28 from
> /home/products/root/3.05.03/root/lib/libRint.so
>  0x40c758a3 in TTermInputHandler::ReadNotify(void) at
> /usr/src/bs/BUILD/glibc-2.2.2/stdlib/atexit.c:33 from
> /home/products/root/3.05.03/root/lib/libRint.so
>  0x401bbb07 in TUnixSystem::CheckDescriptors(void) + 0x113 from
> /home/products/root/3.05.03/root/lib/libCore.so
>  0x401bb21a in TUnixSystem::DispatchOneEvent(bool) + 0x112 from
> /home/products/root/3.05.03/root/lib/libCore.so
>  0x4014eaad in TSystem::InnerLoop(void) + 0x1d from
> /home/products/root/3.05.03/root/lib/libCore.so
>  0x4014ea42 in TSystem::Run(void) + 0x7e from
> /home/products/root/3.05.03/root/lib/libCore.so
>  0x40109649 in TApplication::Run(bool) + 0x31 from
> /home/products/root/3.05.03/root/lib/libCore.so
>  0x40c65fa6 in TRint::Run(bool) + 0x2ba from
> /home/products/root/3.05.03/root/lib/libRint.so
>  0x08048802 in main + 0x52 from
> /home/products/root/3.05.03/root/bin/root.exe
>  0x40d2f177 in __libc_start_main at
> /usr/src/bs/BUILD/glibc-2.2.2/csu/../sysdeps/generic/libc-start.c:129
> from
> /lib/i686/libc.so.6
>  0x080486d1 in _start + 0x21 from
> /home/products/root/3.05.03/root/bin/root.exe
> Root >
> 
> I rebuilt the dictionaries for my class object contained in a
> superbranch of
> DataTree.  This same script has worked with previous versions.
> 
> Thanks
> Kerry Lee



This archive was generated by hypermail 2b29 : Thu Jan 01 2004 - 17:50:10 MET