On 10/31/2009 12:32 AM, Stan Hoeppner wrote:
All these cidr maps are a great example of separate tables that should
be combined into a single table with a Makefile.

Interesting.  I may take a look into Makefile some time.  I was unaware
of it until today.  Just out of curiosity, how does putting it all in
one file make the resulting single file smaller than the sum of the
individual files' contents?  Does Makefile compress the contents in some
way, such as postmap indexes hash files?  I ask as the only overlapping
data in my CIDR files is the "REJECT" + "custom error" within each CIDR
file.

Each lookup table requires overhead. 30 separate tables requires considerably more overhead than one table. The size of the dataset doesn't change, it's the overhead that gets smaller. The more concurrent smtpd processes running, the more it matters.

It probably doesn't matter in your environment, but posting examples suitable for only a very small environment without labeled as such doesn't help the wider user base.

And postmap doesn't compress files, but the index allows postfix to find a particular key quickly -- lookup time and system overhead for hash: and cdb: is essentially independent of the size of the table, so it makes sense to use a single table as big as necessary. In particular, cdb: scales well up to millions of entries, hash: tables easily to hundreds of thousands.


  -- Noel Jones

Reply via email to