s.reiser@tu-bs.de writes:
> pg_dump shows one or more warnings when used with non-seekable streams:
> "pg_dump: [custom archiver] WARNING: ftell mismatch with expected position
> -- ftell used"
> Examples (on Windows 7 Pro 64 Bit, PG 9.1.7 and 9.1.6, 64 Bit)
> 1) pg_dump --format=custom --schema-only mydatabase | zip -0 TEST.ZIP -
Hm. Apparently, pg_dump's checkSeek() function is succeeding even
though later attempts to seek the file don't work. We had a previous
go-round with issues of this sort,
http://archives.postgresql.org/pgsql-hackers/2010-06/msg01355.php
but apparently Windows is "helpful" enough to let a no-op SEEK_SET
call succeed too. (Gee thanks, Microsoft.)
Anyone know how to test for seekability of a file in a way that
works reliably on Windows?
> With all three generated files pg_restore produces exactly the same script,
> so the backup seems ok - but why the warnings then?
My guess is that it's failing to update the table of contents on
completion, which will cause parallel pg_restore to fail, but it's
harmless for ordinary pg_restore. If we fix checkSeek the warnings
would go away, but you'd still have an archive that's not usable
for parallel restores.
regards, tom lane