public inbox for [email protected]  
help / color / mirror / Atom feed
From: Grzegorz Szpetkowski <[email protected]>
To: [email protected]
Subject: Default compression level for custom format in pg_dump ?
Date: Mon, 18 Apr 2011 02:26:02 +0200
Message-ID: <[email protected]> (raw)

Hi,

I can't find in documentation what is implicit default compression
level for pg_dump format. There
(http://www.postgresql.org/docs/9.0/static/app-pgdump.html) is only:

"This format is also compressed by default."

"For the custom archive format, this specifies compression of
individual table-data segments, and the default is to compress at a
moderate level."

 After some some reaserching I found it actually depends on zlib
library behaviour. In other words pg_dump is "zlib aware" and actually
it is 6 and it's constant value:

pg_dump someDB -Fc -f dump
pg_dump someDB -Fc -Z-1 dump (I know that -1 is not "legal", but it works)
pg_dump someDB -Fc -Z6 -f dump

In pg_dump.c there is (main function):

int compressLevel = -1;
...
else if (pg_strcasecmp(format, "c") == 0 || pg_strcasecmp(format,
"custom") == 0)
   g_fout = CreateArchive(filename, archCustom, compressLevel, archModeWrite);

Then "it goes to" zlib library. According to http://www.zlib.net/manual.html:

"The compression level must be Z_DEFAULT_COMPRESSION, or between 0 and
9: 1 gives best speed, 9 gives best compression, 0 gives no
compression at all (the input data is simply copied a block at a
time). Z_DEFAULT_COMPRESSION requests a default compromise between
speed and compression (currently equivalent to level 6)."

#define Z_DEFAULT_COMPRESSION  (-1) (zlib.h)

What do you think about adding some clarification in PostgreSQL doc ?

Regads,
Grzegorz Szpetkowski



view thread (2+ messages)  latest in thread

reply

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Reply to all the recipients using the --to and --cc options:
  reply via email

  To: [email protected]
  Cc: [email protected]
  Subject: Re: Default compression level for custom format in pg_dump ?
  In-Reply-To: <[email protected]>

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

This inbox is served by agora; see mirroring instructions
for how to clone and mirror all data and code used for this inbox