https://issues.apache.org/SpamAssassin/show_bug.cgi?id=6942
--- Comment #34 from Mark Martinec <[email protected]> --- It took about two hours to piecewise convert to a new format, and I'm running it for two days now with the new format. I'll attach my complete current BayesStore/Redis.pm file if someone would like to play with it. It turns out that the tok_get_all is about 10 ms slower on the average (18 ms instead of 8 ms) than using a single MGET to fetch all keys in one go. Other operations are about the same, database size hasn't grown noticeably. The reason for slowness is that the cpan Redis module is quite inefficient when dealing with a hundred or so of small commands, even if they are pipelined. I made some improvements to that module, but it's still not much better for our case. See https://github.com/melo/perl-redis/issues/45 A possible solution is to use lua to implement a multi-key fetching of s/h fields for the supplied set of keys. I'm not fluent in lua, so if someone wants to play with it, please step in. So in summary we are mostly at square one: the new data representation does offer nice and easy atomic updates of counts, but is somewhat slower. -- You are receiving this mail because: You are the assignee for the bug.
