5.26.00e_python2.6: TBuffer errors and RFIO


I am trying to read a TTree from a file which is on CASTOR. This file can be read if the file is copied to the local disk and then read, but not directly read from CASTOR. The ROOT setup used on lxplus is:

When ROOT reads the file from CASTOR it reports

There are many CheckByteCount errors all referring to vector<vector >. Is there a work around?

Thanks and best regards,



You probably need to create, load and generate a dictionary for vector<vector >.
See root.cern.ch/drupal/faq#n676


Hi Philippe,

The fix was much simpler,

 // Force the loading of the ROOT vector<vector<float> > dictionary
 // This needed to get around a bug,
 //  https://root-forum.cern.ch/t/checkbytecount-issue/10997/1
 gROOT->ProcessLine("#include <vector>");

was included before reading from the TTree.



If you meet such problem again:

  1. for “std::vector<std::vector >” see [url]Storing 2D vector [--> vector<vector<...> >] into a TTree
  2. for “std::vector<std::vectorstd::string >” see [url]Problem in getting the vector < vector <string> > branch