Thanks Jian. On Wed, 12 Feb 2025 at 12:45, jian he <jian.universal...@gmail.com> wrote: > > On Wed, Feb 12, 2025 at 1:17 AM Mahendra Singh Thalor > <mahi6...@gmail.com> wrote: > > > > > > > > There are some tests per https://commitfest.postgresql.org/52/5495, I > > > will check it later. > > hi. > the cfbot failure is related to function _tocEntryRequired > > if (strcmp(te->desc, "DATABASE") == 0 || > strcmp(te->desc, "DATABASE PROPERTIES") == 0) > { > - if (ropt->createDB) > + if (ropt->createDB || AH->format != archNull) > return REQ_SCHEMA; > else > return 0; > > for restoring multiple databases: > in v16 implementation: pg_restore even if you do not specify --create, > it actually did what pg_restore --create option does. > > if there are multiple databases in the archive: > to make the pg_restore --file output is usable, the output file need > have \connect and CREATE DATABASE > command. that is exactly what --create option would do. > pg_restore --file behavior need align with pg_restore --dbname. > therefore pg_restore restoring multiple databases will use --create option. > > > we can either error out (pg_fatal) saying > restoring multiple databases requires the pg_restore --create option. > Or we can add a pg_log_info saying > pg_restore --create option will be set to true while restoring > multiple databases.
In my earlier version, I was giving an error if --create option was not specified. I think it will be good and more preferable if we give an error without the --create option if dump was taken from pg_dumpall. Even though there is a single database in the dump of pg_dumpall, it is possible that a particular database hasn't been created. Ex: -d postgres and we have db1 dump in file. In this case, we have only one database dump but this database has not been created. If the user wants to restore a single database, then the user should use a single database dump file. Forcefully adding --create option is not a good idea, instead we will give an error to the user and let him correct the inputs. Apart from the above handling, I fixed all the pending review comments in this patch and made some more changes. Here, I am attaching an updated patch for review and testing. -- Thanks and Regards Mahendra Singh Thalor EnterpriseDB: http://www.enterprisedb.com
v17_pg_dumpall-with-non-text_format-13th_feb.patch
Description: Binary data