In $MEAD_DIR/lib/Essence/IDF.pm, remove this code on lines 39-40: unless (-e "$dbmname.dir") { die "$dbmname : No such dbm\n"; } Immediately following this code on lines 43-45: unless (dbmopen %nidf, $dbmname, 0666) { die "Cannot open DBM $dbmname\n"; } insert this code: unless (scalar(keys(%nidf))) { die "Empty DBM $dbmname"; } So, the entire subroutine "open_nidf" should look like this: sub open_nidf{ my $dbmname = shift || $DEFAULT_DBMNAME; $dbmname = File::Spec->rel2abs($dbmname, $IDFDIR); if ($current_dbmname && $current_dbmname eq $dbmname) { return 1; } unless (dbmopen %nidf, $dbmname, 0666) { die "Cannot open DBM $dbmname"; } unless (scalar(keys(%nidf))) { die "Empty DBM $dbmname"; } $current_dbmname = $dbmname; return 1; }