in reply to flocking databases
Prepended From conversation with sulfericacid and other posts you'll note that zie is already using a dbm style database - SDBM if I recall correctly. So I'm suggesting this as a work-alike (except better).
When I first started out I was using DB_File::Lock (its documentation has pointers to Tie::DB_Lock and Tie::DB_LockFile). I've since gotten a clue and if I need to do this task then I use BerkeleyDB and use its concurrant locking system. This sort of task is something that is fully in the let-someone-else handle-it-if-you-can category.
Added It occurred to me that an example would be a good idea.
tie %hash, 'BerkeleyDB::Hash', -Filename => 'foo.db', -Flags => DB_CREATE | DB_INIT_CDB | DB_MPOOL;
Easy eh? Note that BerkeleyDB's locking mechanism uses flock so NFS users (probably not sulfericacid) have to use one of the other modules mentioned above.
|
|---|
| Replies are listed 'Best First'. | |
|---|---|
|
Re: Re: flocking databases
by cees (Curate) on Apr 14, 2003 at 05:18 UTC |