Uploaded image for project: 'ROOT'
  1. ROOT
  2. ROOT-9948

[TTreeProcessorMT] Wrong tree name deduction when reading from EOS

    XMLWordPrintable

    Details

    • Type: Bug
    • Status: Closed (View Workflow)
    • Priority: High
    • Resolution: Fixed
    • Affects Version/s: 6.16/00, 6.18/00
    • Fix Version/s: 6.18/00
    • Component/s: None
    • Labels:
      None
    • Environment:

      any

      Description

      First reported on the forum here.
      Possibly v6.14 also affected.
      Input file attached for convenience, although I don't think the file contents make a difference: the issue seems to be in how RDF and/or TTreeProcessorMT resolve the name of a TTree passed to the RDataFrame constructor.

      Minimal reproducer:

      #include <ROOT/RDataFrame.hxx>
      #include <TFile.h>
      #include <TTree.h>
      #include <memory>
       
      int main()
      {
              auto f = std::unique_ptr<TFile>(TFile::Open("root://eosuser.cern.ch//eos/user/e/eguiraud/ForSharing.root"));
              auto t = (TTree*)f->Get("DecayTree");
              ROOT::EnableImplicitMT();
              auto df1 = ROOT::RDataFrame(*t);
              auto h1 = df1.Histo1D("Sc1_M");
              h1->GetMean();
       
              return 0;
      }
      

      Passing tree name and filename instead of a TTree reference to RDataFrame's constructor works correctly and is a viable workaround.

        Attachments

          Issue Links

            Activity

              People

              • Assignee:
                dpiparo Danilo Piparo
                Reporter:
                eguiraud Enrico Guiraud
              • Votes:
                0 Vote for this issue
                Watchers:
                4 Start watching this issue

                Dates

                • Created:
                  Updated:
                  Resolved:
                  Actual Start:
                  Actual End: