Re: Non-text mode for pg_dumpall

Поиск
Список
Период
Сортировка
От tushar
Тема Re: Non-text mode for pg_dumpall
Дата
Msg-id CAC6VRoY-1WC_O5UDwKzNc18LXLwjuTFb+qMNY3gaF3cCov6M6g@mail.gmail.com
обсуждение исходный текст
Ответ на Re: Non-text mode for pg_dumpall  (tushar <tushar.ahuja@enterprisedb.com>)
Ответы Re: Non-text mode for pg_dumpall
Список pgsql-hackers


On Fri, Jan 23, 2026 at 12:21 PM tushar <tushar.ahuja@enterprisedb.com> wrote:

Thanks Mahendra, a minor  observation -  The pg_restore output shows a double slash in the map.dat path (e.g., abc.tar//map.dat). 
While it doesn't break the restore, we may want to clean up the path joining logic.

[edb@1a1c15437e7c bin]$ ./pg_restore -Ft -C abc.tar/ -d postgres -p 9011  -U  ed -v
pg_restore: found database "template1
" (OID: 1) in file "abc.tar//map.dat"
pg_restore: found database "postgres
" (OID: 5) in file "abc.tar//map.dat"



Please refer to this scenario where - Objects  created under template1 and the postgres database by a specific user are failing during a cross-cluster restore. 
When restoring to a new cluster as a different superuser, pg_restore throws the error: ERROR: role "edb" does not exist. 
It appears the restore is attempting to preserve the original ownership of template1 objects even when the target environment lacks those specific roles.

Steps to reproduce:
initdb ( ./initdb -U edb -D data) , start the server , connect to postgres and  template1 database one by one and  create 
this table ( create table test(n int); ) 
perform pg_dumpall operation ( ./pg_dumpall -Ft -f abc.tar) 
initdb (./initdb -U xyz) , start the server , create a database ( create database abc;) 
perform pg_restore operation ( ./pg_restore -Ft -C abc.tar/ -d postgres -p 9033 -U xyz)
--getting an error,  table 'test' will be created on 'template1' database but failed to create on an another database ( in this case - 'abc' database)

regards,

В списке pgsql-hackers по дате отправления: