Commit Graph

14 Commits

Author SHA1 Message Date
Jared Johnson
113becf8be Get rid of Qpsmtpd::DB::File
DBM is probably the only file format we'll ever support anyhow
2015-01-27 15:55:53 -06:00
Jared Johnson
b6311caae0 Pass multiple keys to del() to speed up prune_db() 2015-01-27 11:50:55 -06:00
Jared Johnson
1320a01f46 Speed up prune_db() with new Qpsmtpd::DB::mget()
This reduces round trips to Redis, speeding up DB pruning,
especially over a network
2015-01-27 10:59:47 -06:00
Jared Johnson
e76b6a9048 Fix consistency problems with DBM store
Destroy the AnyDBM-tied hash after untying

Google's wisdom seems to indicate that leaving the AnyDBM-tied hash around after
untying it was causing data to not flush to the DBM file... or something. At any
rate the regression test added here confirms inconsistency when using multiple
instances which is fixed by destroying the AnyDBM-tied hash after untying.
2015-01-21 16:43:23 -06:00
Matt Simerson
31fb710792 add group write permissions to default DBs 2015-01-04 12:22:51 -08:00
Jared Johnson
6e3e605c66 Avoid test failure when Redis.pm is unavailable 2014-12-30 15:10:32 -06:00
Jared Johnson
80e4629f9d Qpsmtpd::DB::Redis simplifications 2014-12-30 14:53:53 -06:00
Jared Johnson
11646b9a27 Add Qpsmtpd::DB testing and more greylist testing 2014-12-30 14:53:53 -06:00
Jared Johnson
fa2ca922c5 Add Qpsmtpd::DB::Redis 2014-12-30 14:53:53 -06:00
Jared Johnson
ecb6d2c1d5 Update Qpsmtpd::DB to work with multiple stores 2014-12-30 14:53:53 -06:00
Jared Johnson
ef26c61b6d Use Qpsmtpd::DB in karma plugin
And clean up a few things in Qpsmtpd::DB
2014-11-26 16:28:52 -06:00
Jared Johnson
72c9c79f31 Move the rest of DBM operations to Qpsmtpd::DB 2014-11-26 16:06:24 -06:00
Jared Johnson
66ba031240 Get rid of experimental 'use lib' thing 2014-11-26 12:03:03 -06:00
Jared Johnson
1d29db66ff Move some DBM functions to Qpsmptd::DB::File::DBM
Not everything is moved and Qpsmtpd::DB* does not yet have test coverage
2014-11-25 17:52:18 -06:00