RDataFrame copy assignment issues

Hi,

I am trying out the new RDataFrame and moving some of my current analysis code to use it.

However, in trying to implement this, I ran into a copy assignment issue. I am attaching a simple example to basically recreate what I am trying to do. And I am copying the error below:


Processing simpleExample.cxx...
In file included from input_line_10:1:
/Users/Haider/ATLAS/sw/H4lCouplingWorkspaces/simpleExample.cxx:12:20: error: object of type 'ROOT::RDF::RInterface<ROOT::Detail::RDF::RLoopManager, void>' cannot be assigned because its copy assignment operator is implicitly deleted
        augDataSet = augDataSet.Define("newCol2", "newCol*2");
                   ^
/Users/Haider/root_v16p14/build/etc/../include/ROOT/RDFInterface.hxx:130:16: note: explicitly defaulted function was implicitly deleted here
   RInterface &operator=(const RInterface &) = default;
               ^
/Users/Haider/root_v16p14/build/etc/../include/ROOT/RDFInterface.hxx:110:35: note: copy assignment operator of 'RInterface<ROOT::Detail::RDF::RLoopManager, void>' is implicitly deleted because field 'fProxiedPtr' has no copy assignment operator
   const std::shared_ptr<Proxied> fProxiedPtr;     ///< Smart pointer to the graph node encapsulated by this RInterface.

So, I was wondering what would be ideal way to accomplish something like this with the new RDataFrame philosophy? I can think of a few ways of working around it, but they all feel like hacks rather than a proper way to do. Probably missing something super basic about new data structure.

I tried to look at examples and there the dataframe is sequentially build upon each other :confused:

Thanks for the help,
Haider

simpleExample.cxx (457 Bytes)

Hi Haider,

what version of ROOT is this one?

Cheers,
D

Hi,

It is 6.14/06

Thanks
Haider

Hi Haider,

this has been solved in release 6.16: https://root.cern/content/release-61600

Cheers,
D

Hi,

Just tired the new release and it works there!

Thanks for the help!
Haider

1 Like

Great! Thanks for trying the latest release!