On 05/21/2012 08:25 PM, Joel Jacobson wrote:
On Tue, May 22, 2012 at 3:30 AM, Daniel Farina<dan...@heroku.com> wrote:
Thank you, that's very informative. I'd like to reiterate one
question, though, which is something like:
"How do you feel that the since-committed directory-output/input
support in pg_dump/pg_restore could or should influence your patch, if
at all?"
The directory format fulfills a different purpose. The tables are
split into files, where each file name gets a number. Functions are
not split into files, they are defined in the table of content file,
toc.dat.
Example:
joel@Joel-Jacobsons-MacBook-Pro ~ $ pg_dump -F d -f /Users/joel/test
joel@Joel-Jacobsons-MacBook-Pro ~ $ ls -la test
total 24
drwx------ 5 joel staff 170 May 22 07:16 .
drwx------+ 130 joel staff 4488 May 22 07:16 ..
-rw-r--r-- 1 joel staff 38 May 22 07:16 2116.dat.gz
-rw-r--r-- 1 joel staff 39 May 22 07:16 2117.dat.gz
-rw-r--r-- 1 joel staff 2265 May 22 07:16 toc.dat
This is a good feature for its purpose, but doesn't provide a solution
for the schema version management problem.
It seems like now that there is support for spitting out a bunch of
files in a directory for pg_dump that is now going to be supported for
a long time that a new feature like yours might be more cohesive if it
somehow played with that. I must confess I haven't read the patch in
detail, especially if it has been updated, but back then there was no
multi-file output mode from pg_dump, and now there is one. My naive
understanding is this would be adding a second one as-is, but I wonder
if that is strictly necessary to fulfill the use case.
If one want to reuse the splitting to files-code of the directory
format, maybe the existing option -F d could be tweaked to output in
both a a machine-readable format (current way), and also a
human-friendly tree of files and content (like suggested by my patch).
I wonder what the option would be called then, having two chars
options is not an option I guess, maybe -F t for "tree" instead of
"directory", as the -F d option only dumps to a single directory and
not a tree-structure?
I have a little utility to write out the data in the TOC as separate
files. It works with both a custom format dump, and the toc.dat file
from a directory format or unpacked tar format dump.
It was originally written as a debugging aid, but can be used to some
extent for schema management as well. It's far from complete, but still
might be useful. See <https://github.com/adunstan/DumpToc>
cheers
andrew
--
Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-hackers