Hi Philippe, the newest I have available is 30505. With this, the same problem: kangaroo:inter 91> root -l combined.root root [0] Attaching file combined.root... root [1] combined->ls() TFile** combined.root TFile* combined.root KEY: TChain main_scan;1 KEY: TChain calib_scan;1 root [2] main_scan->ls() ../inter/inter_file_date20021220_time202236.root tree:main_scan entries=1234567890 ../inter/inter_file_date20021220_time234757.root tree:main_scan entries=1234567890 ../inter/inter_file_date20021221_time31202.root tree:main_scan entries=1234567890 ../inter/inter_file_date20021221_time63637.root tree:main_scan entries=1234567890 root [3] .q kangaroo:inter 92> ls -altr inter_file_date2002122*[0-9].root full.root -rw-rw-r-- 1 mayankj eb 48175034 May 9 00:43 inter_file_date20021220_time202236.root -rw-rw-r-- 1 mayankj eb 41354484 May 9 01:48 inter_file_date20021220_time234757.root -rw-rw-r-- 1 mayankj eb 45693757 May 9 02:53 inter_file_date20021221_time31202.root -rw-rw-r-- 1 mayankj eb 49808619 May 9 03:58 inter_file_date20021221_time63637.root -rw-r--r-- 1 hadig eb 392138752 Jul 31 15:44 full.root using the following program: komodo:inter 58> cat copy_tree.C #include <TROOT.h> #include <TFile.h> #include <TTree.h> #include "main_scan.C" #include "calib_scan.C" main() { TROOT root("a","a"); TFile *oldfile = new TFile("combined.root"); TTree *oldtreemain = (TTree*)oldfile->Get("main_scan"); TTree *oldtreecalib = (TTree*)oldfile->Get("calib_scan"); main_scan *bufmain = new main_scan (oldtreemain); calib_scan *bufcalib = new calib_scan(oldtreecalib); oldtreemain ->SetBranchStatus("*",1); oldtreecalib->SetBranchStatus("*",1); TFile *newfile = new TFile("full.root","RECREATE"); TTree *newtreemain = oldtreemain ->CloneTree(); //TTree *newtreemain = oldtreemain ->CloneTree(0); //TTree *newtreecalib = oldtreecalib->CloneTree(0); //newtreemain ->CopyEntries(oldtreemain ); //newtreecalib->CopyEntries(oldtreecalib); newfile->Write(); newfile->Close(); oldfile->Close(); } The commented version works, this one I killed when the output file full.root got more than twice as big as it should. I hope that we can get 30507 here at SLAC soon, so that I can test it. Ciao Thomas > Hi Thomas, > > > I also noticed that the number of entries in an > > oldtree->ls() > > seems to be wrong for the second (and all following) files: > > The number of entries 1234567890 indicates that the real number of entries > are not yet been loaded in memory. This should not be a problem. > > > I did find some bug fixes mentioned in the release notes but I don't think > > that any of those mentioned this problem specifically. > > Nonetheless, please re-try with 3.05/07, the consequence of the bugs that > were fixed are usually 'random' behavior. > > Cheers, > Philippe. > > -----Original Message----- > From: owner-roottalk@pcroot.cern.ch > [mailto:owner-roottalk@pcroot.cern.ch]On Behalf Of Thomas Hadig > Sent: Thursday, July 31, 2003 3:59 PM > To: roottalk@pcroot.cern.ch > Subject: [ROOT] copying chains > > > Hi all, > > I just tried to copy a tree from a chain of files into a single file. > I used the code > TTree *newtree = oldtree->CloneTree(); > in > http://root.cern.ch/root/html/examples/copytree.C.html > with ROOT Version 3.05/02 on Linux (RedHat 7.3). > > Using one file or a chain with one file seems to work fine but > for a chain of more than one file, the writing never ends. > > Using the method in > http://root.cern.ch/root/html/examples/copytree2.C.html > with > TTree *newtree = oldtree->CloneTree(0); > newtree->CopyEntries(oldtree); > seems to work for all cases. > > I also noticed that the number of entries in an > oldtree->ls() > seems to be wrong for the second (and all following) files: > inter_file_date20030728_time120505.root tree:main_scan entries=571 > inter_file_date20030728_time174104.root tree:main_scan entries=1234567890 > inter_file_date20030728_time192411.root tree:main_scan entries=1234567890 > .... > > If CloneTree uses this number, I am no longer astonished that the > copying never ends .... > > I did find some bug fixes mentioned in the release notes but I don't think > that any of those mentioned this problem specifically. > > Ciao > Thomas > > ---------------------------------------------------------------------------- > Thomas Hadig MS 62, 2575 Sand Hill Road, Menlo Park CA 94025, USA > hadig@stanford.edu Tel.: +1 650 926 2810 > http://www.slac.stanford.edu/~hadig/ > ---------------------------------------------------------------------------- > In a world without walls and fences, who needs windows and gates ? > ---------------------------------------------------------------------------- Ciao Thomas ---------------------------------------------------------------------------- Thomas Hadig MS 62, 2575 Sand Hill Road, Menlo Park CA 94025, USA hadig@stanford.edu Tel.: +1 650 926 2810 http://www.slac.stanford.edu/~hadig/ ---------------------------------------------------------------------------- In a world without walls and fences, who needs windows and gates ? ----------------------------------------------------------------------------
This archive was generated by hypermail 2b29 : Thu Jan 01 2004 - 17:50:14 MET