recover#
Recover a damaged database. pperl’s files are never left damaged, so recovery finds every key intact; it still makes the backup copy and fills in the statistics asked for.
Synopsis#
my ($backup, %stat);
$db->recover(backup => \$backup, stat => \%stat);
Options#
backup => \$name- copy the file first, toNAME.~N~with the first free numberN, and put that name in$name.stat => \%stat- fill inrecovered_keys(every key),recovered_buckets,failed_keysandfailed_buckets(both 0).err => sub {...},max_failed_keys,max_failed_buckets,max_failures- accepted; with nothing failing they never matter.
What you get back#
Nothing; a failure (the backup copy cannot be made) croaks. An unknown option croaks NAME: unrecognized argument, and an odd number of arguments with a usage message.
Differences from upstream#
gdbm rebuilds a damaged file and reports what it lost; pperl’s file has nothing to rebuild. Covered by t/81-xs-native/GDBM_File/010-phenotype.t.
See also#
needs_recovery- always 0