Dean Rasheed escribió:

> +/*
> + * If a schema was explicitly specified, test if it exists.  If it does not,
> + * report the schema as missing rather than the child object.
> + */
> +static bool
> +schema_does_not_exist_skipping(List *objname,
> +                                                        const char **msg,
> +                                                        char **name)
> +{
> +     RangeVar        *rel;
> +
> +     rel = makeRangeVarFromNameList(objname);
> +
> +     if (rel->schemaname != NULL &&
> +             !OidIsValid(LookupNamespaceNoError(rel->schemaname)))
> +     {
> +             *msg = gettext_noop("schema \"%s\" does not exist, skipping");
> +             *name = rel->schemaname;
> +
> +             return true;
> +     }
> +
> +     return false;
> +}

In success cases, are we leaking a lot of memory?  In the error case I
guess it doesn't matter that the RangeVar is getting leaked (we're
aborting anyway), but if we're called and everything turns out to work,
are things cleaned up timely?

-- 
Álvaro Herrera                http://www.2ndQuadrant.com/
PostgreSQL Development, 24x7 Support, Training & Services


-- 
Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-hackers

Reply via email to