ram: > > On Mon, 2008-09-22 at 13:03 -0400, Wietse Venema wrote: > > ram: > > > My milter is quiet simple. It just does a bsearch on a in-memory array , > > > to find if the recipient has blacklisted / whitelisted the sender and > > > takes action accordingly > > > > > > The array now has approx 200k elements, which should be nothing for > > > 4GBRam box > > > > What measures did you take to avoid errors (race conditions, > > deadlock, etc.) due to concurrent access to this data structure? > > > > The array is constant once the milter is started. To refresh the array I > restart the milter every hour > Do I have to still take care of deadlocks ?
Not is queries are delayed until the array stops changing. However there is a possibility of disruption after the milter is stopped. > Now I think this was due to some network issue. The ethernet links were > on half-duplex for this machine. I have forced a full duplex and now the > problem is apparently disappeared. ( fingers crossed ) Wietse