in reply to Re: DBM problem
in thread DBM problem
If you're concerned about disc space, though, I'm going to assume that the files are very large, ergo, unlikely to fit in memory... you'd likely want to do something like:
dbmopen %ORIG, "original", 0666 or die; dbmopen %NOVA, "new", 0666 or die; # -- race condition start for my $key (keys %ORIG) { $NOVA{$key} = $ORIG{$key}; } dbmclose %ORIG; dbmclose %NOVA; unlink "original" link "new", "original" # race condition end unlink "new";
So long as no-one else needs to get at your DBM while you're "shrinking" it, the above will work.
|
|---|
| Replies are listed 'Best First'. | |
|---|---|
|
Re: Rea: DBM problem
by japhy (Canon) on Feb 15, 2001 at 21:14 UTC | |
by baku (Scribe) on Feb 15, 2001 at 21:17 UTC | |
|
Re: Rea: DBM problem
by merlyn (Sage) on Feb 15, 2001 at 22:53 UTC |