May 26, 2018
Utility for looking for perl objects that are not reclaimed
DevelLeak has two functions NoteSV and CheckSV.
NoteSV walks the perl internal table of allocated SVs scalar values - which actually contains arrays and hashes too, and records their addresses in a table. It returns a count of these “things”, and stores a pointer to the table which is obtained from the heap using malloc in its argument.
CheckSV is passed argument which holds a pointer to a table created by NoteSV. It re-walks the perl-internals and calls sv_dump for any “things” which did not exist when NoteSV was called. It returns a count of the number of “things” now allocated.