1
0
mirror of https://github.com/postgres/postgres.git synced 2025-08-15 14:02:29 +03:00

Make DROP IF EXISTS more consistently not fail

Some cases were still reporting errors and aborting, instead of a NOTICE
that the object was being skipped.  This makes it more difficult to
cleanly handle pg_dump --clean, so change that to instead skip missing
objects properly.

Per bug #7873 reported by Dave Rolsky; apparently this affects a large
number of users.

Authors: Pavel Stehule and Dean Rasheed.  Some tweaks by Álvaro Herrera
This commit is contained in:
Alvaro Herrera
2014-01-23 14:40:29 -03:00
parent 9f80f4835a
commit b152c6cd0d
17 changed files with 523 additions and 145 deletions

View File

@@ -86,7 +86,7 @@ compute_return_type(TypeName *returnType, Oid languageOid,
Type typtup;
AclResult aclresult;
typtup = LookupTypeName(NULL, returnType, NULL);
typtup = LookupTypeName(NULL, returnType, NULL, false);
if (typtup)
{
@@ -224,7 +224,7 @@ interpret_function_parameter_list(List *parameters,
Type typtup;
AclResult aclresult;
typtup = LookupTypeName(NULL, t, NULL);
typtup = LookupTypeName(NULL, t, NULL, false);
if (typtup)
{
if (!((Form_pg_type) GETSTRUCT(typtup))->typisdefined)