Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[R-Forge #2296] Copy-on-:= at column level, DT[,list(...)] shallow copy and add cols to shallow(DT, cols) #617

Open
arunsrinivasan opened this issue Jun 8, 2014 · 1 comment
Milestone

Comments

@arunsrinivasan
Copy link
Member

@arunsrinivasan arunsrinivasan commented Jun 8, 2014

Submitted by: Matt Dowle; Assigned to: Nobody; R-Forge link

Export shallow().

DT2 = shallow(DT)

would add reference counter attribute. (Both DT2[1,a:=5L] AND DT[1,a:=5L] would need to copy a. Maybe the ExternalPointer destructor could decrement as well, so a rm(DT2) would automatically take DT back to being the sole copy.

Then with this in place,

DT[, cols, with=FALSE]  
# and 
DT[, list(col1,col2,...)]

could do shallow copies, too. See TO DO in source.

In the meantime, allow shallow() to accept a subset of columns and then use it in duplicated.R to save the copies of the by columns there. Upped priority for this part (easier).

@arunsrinivasan arunsrinivasan added the High label Aug 5, 2014
@arunsrinivasan arunsrinivasan added this to the v1.9.6 milestone Sep 24, 2014
@arunsrinivasan
Copy link
Member Author

@arunsrinivasan arunsrinivasan commented Sep 24, 2014

@mattdowle, the idea we recently discussed is already here (and written here in an even better fashion). Would be great to have this for next release! Also in my wish list for shallow() to accept a set of columns.. We could've shallow() and shallowv() like usual.

@arunsrinivasan arunsrinivasan modified the milestones: v1.9.6, v1.9.8 Oct 10, 2014
arunsrinivasan added a commit that referenced this issue Nov 1, 2014
@eantonya eantonya self-assigned this Aug 4, 2015
@arunsrinivasan arunsrinivasan modified the milestones: v2.0.0, v1.9.8 Apr 10, 2016
@pakom pakom mentioned this issue Nov 30, 2016
12 of 33 tasks complete
@mattdowle mattdowle removed this from the Candidate milestone May 10, 2018
@mattdowle mattdowle added this to the 1.13.0 milestone Sep 18, 2019
@mattdowle mattdowle modified the milestones: 1.12.7, 1.12.9 Dec 8, 2019
@jangorecki jangorecki removed the High label Jun 8, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Linked pull requests

Successfully merging a pull request may close this issue.

None yet
4 participants
You can’t perform that action at this time.