File size with a CloneTree

it will properly delete all its cycle but it will not free any ‘dependent’ data record unless it is a TDirectoryFile.

BTW. You seem to suggest that the TDirectoryFile::Purge1 will also leave “orphaned” data records (in some cases only?).

It should not in the normal case. In the case of a TTree the dependent data record of the ‘removed old cycle’ are also dependent of the newest cycle. [The user can make this untrue if they re-use the concept of cycle for something else than ‘backing up’ the TTree meta-data]

SomeTFile->Delete(“SomeTFolder*;*”) properly (recursively) delete all its cycles, objects that it keeps and “free” all the corresponding data records or not?

If i recall correctly, TFolder are stored in a single data record.

Last but not least, does the “rootrm” utility properly “free” data records?

It does not. (It currently use ‘just’ TFile::Delete).

In any case, could you please add clear notes in the TFile::Delete1 method description:

Indeed this is needed.