Обсуждение: BUG #14088: pg_restore, --schema, causes TOC entries from even executing.
BUG #14088: pg_restore, --schema, causes TOC entries from even executing.
От
psi-jack@linux-help.org
Дата:
The following bug has been logged on the website: Bug reference: 14088 Logged by: Eric Renfro Email address: psi-jack@linux-help.org PostgreSQL version: 9.4.5 Operating system: CentOS 6 Description: I found a bug when trying to backup, stripping BDR schemas from databases to restore to a non-BDR database, and this is a pretty serious bug. When using pg_restore -l --schema=public with pg_restore -L from that data, the -l does not contain information needed for the --create flag to work. For example, DATABASE TOC entries are missing from the -l output. Likewise, when using pg_restore --schema=public --create, again, key TOC entries related to creation fail to exist because --schema is being used. This resulted in all create items not restoring with the --create flag used.
Re: BUG #14088: pg_restore, --schema, causes TOC entries from even executing.
От
"David G. Johnston"
Дата:
On Fri, Apr 15, 2016 at 12:12 PM, <psi-jack@linux-help.org> wrote: > The following bug has been logged on the website: > > Bug reference: 14088 > Logged by: Eric Renfro > Email address: psi-jack@linux-help.org > PostgreSQL version: 9.4.5 > Operating system: CentOS 6 > Description: > > I found a bug when trying to backup, stripping BDR schemas from databases > to > restore to a non-BDR database, and this is a pretty serious bug. > > When using pg_restore -l --schema=3Dpublic with pg_restore -L from that d= ata, > the -l does not contain information needed for the --create flag to work. > For example, DATABASE TOC entries are missing from the -l output. > > Likewise, when using pg_restore --schema=3Dpublic --create, again, key TO= C > entries related to creation fail to exist because --schema is being used. > > This resulted in all create items not restoring with the --create flag > used. > =E2=80=8BMy first impression is that this is working as designed. The --cr= eate flag has limitations and you seem to have discovered one of them. If you are going to play with subset restoration I'd suggest (and it might be required) that the target database already exist. You might want to consider placing the --schema=3Dpublic on the pg_restore = -L command instead of pg_restore -l You say "for example" above; but given that the only thing --create does is create a database your example seems like it covers the entirety of the complaint. Am I missing something here? David J. =E2=80=8B