Restore fails if using multiple threads and database is dumpedthrough pipe
От | Joni Ruuskanen |
---|---|
Тема | Restore fails if using multiple threads and database is dumpedthrough pipe |
Дата | |
Msg-id | d940b5c3b4bb00714662c0dd82d4a7841eae3586.camel@likeit.fi обсуждение исходный текст |
Ответы |
Re: Restore fails if using multiple threads and database is dumped through pipe
|
Список | pgsql-admin |
Hi, After upgrading from Postgresql 11 to 12 I noticed pg_restore fails if -j / jobs parameter is specified and database is dumpedthrough pipe. This doesn't happen if dump is saved through redirect (for example: > file.dmp) or file parameter (-f). Is this intended behaviour? Some examples: Dump to file: pg_dump -Fc -f dumptest-file.dmp dumptest Restore: pg_restore -j4 -d dumptest -O -Fc --role=tomcat dumptest-file.dmp No errors Dump to file via stdout: pg_dump -Fc dumptest > dumptest-stdout.dmp Restore: pg_restore -j4 -d dumptest -O -Fc --role=tomcat dumptest-stdout.dmp No errors Dump to file via pipe: pg_dump -Fc dumptest | tee dumptest-pipe.dmp >/dev/null Restore: pg_restore -j4 -d dumptest -O -Fc --role=tomcat dumptest-pipe.dmp pg_restore: error: could not find block ID 5648 in archive -- possibly due to out-of-order restore request, which cannotbe handled due to lack of data offsets in archive pg_restore: error: a worker process died unexpectedly Piped dump is successfully restored if using only 1 thread/job. Regards, Joni Ruuskanen
В списке pgsql-admin по дате отправления: