pg_restore error message during ENOSPC with largeobj
Justin Pryzby <pryzby@telsasoft.com>
From: Justin Pryzby <pryzby@telsasoft.com>
To: pgsql-hackers@postgresql.org
Cc: Peter Eisentraut <peter_e@gmx.net>
Date: 2020-10-18T01:02:32Z
Lists: pgsql-hackers
Attachments
I overflowed my homedir while testing with pg_reload, and got:
|pg_restore: error: could not write to large object (result: 18446744073709551615, expected: 30)
src/bin/pg_dump/pg_backup_archiver.c
f (res != AH->lo_buf_used)
fatal("could not write to large object (result: %lu, expected: %lu)",
(unsigned long) res, (unsigned long) AH->lo_buf_used);
; 18446744073709551615 - 1<<64
-1
I guess casting to long was the best option c. 2002 (commit 6faf8024f) but I
gather the modern way is with %z.
I confirmed this fixes the message.
|pg_restore: error: could not write to large object (result: -1, expected: 16384)
--
Justin
Commits
-
In pg_restore's dump_lo_buf(), work a little harder on error handling.
- 929c69aa1970 14.0 landed
-
Enable large file support.
- 6faf8024faca 7.3.1 cited