On Tue, Jan 27, 2026 at 9:11 PM Mahendra Singh Thalor <mahi6run@gmail.com> wrote:
On Fri, 23 Jan 2026 at 19:07, tushar <tushar.ahuja@enterprisedb.com> wrote: > > > > 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,
Hi, Here I am attaching an updated patch for the review and testing. Thanks Jian for the reporting rebase issue.
Thanks Mahendra, getting a regression error during the restore process after applying this patch.
pg_restore: error: could not execute query: ERROR: non-standard string literals are not supported Command was: SET standard_conforming_strings = off; pg_restore: warning: errors ignored on restore: 1