On Aug 13, 2013, at 10:44 AM, Jeffrey Johnson wrote: > > Meanwhile the simpler fix is to adjust the Bloom filter parameters to > decrease the probability > of a false positive. > > This can be done like so: > > Index: rpmfi.c > =================================================================== > RCS file: /v/rpm/cvs/rpm/lib/rpmfi.c,v > retrieving revision 2.160.4.4 > diff -p -u -w -r2.160.4.4 rpmfi.c > --- rpmfi.c 4 Jun 2012 15:10:11 -0000 2.160.4.4 > +++ rpmfi.c 13 Aug 2013 14:35:13 -0000 > @@ -184,7 +184,7 @@ void * rpmfiFNBF(rpmfi fi) > if (fi != NULL) { > if (fi->_fnbf == NULL) { > char * fn = (char *) alloca(fi->fnlen + 1); > - static double e = 1.0e-4; > + static double e = 1.0e-5; > size_t n = (fi->fc > 10 ? fi->fc : 10); > size_t m = 0; > size_t k = 0; > > That reduces the probability of false positives from one in 10,000 to one in > 100,000 > and SHOULD fix your issue. One might also increase the estimated population > "n" > by 5-10%, but I would change "e" first as the intent is clearer. > > There is also some modest increase in memory used by the Bloom filter. > > See if that fixes your problem please. >
Was the above patch ever tested? I will assume No. 73 de Jeff _______________________________________________ pld-devel-en mailing list pld-devel-en@lists.pld-linux.org http://lists.pld-linux.org/mailman/listinfo/pld-devel-en