Fix opclass/opfamily identity strings
The original representation uses "opcname for amname", which is good enough; but if we replace "for" with "using", we can apply the returned identity directly in a DROP command, as in DROP OPERATOR CLASS opcname USING amname This slightly simplifies code using object identities to programatically execute commands on these kinds of objects. Note backwards-incompatible change: The previous representation dates back to 9.3 when object identities were introduced by commit f8348ea3, but we don't want to change the behavior on released branches unnecessarily and so this is not backpatched.
This commit is contained in:
parent
0d906798f6
commit
9c7dd35019
@ -3533,7 +3533,7 @@ getObjectIdentityParts(const ObjectAddress *object,
|
||||
appendStringInfoString(&buffer,
|
||||
quote_qualified_identifier(schema,
|
||||
NameStr(opcForm->opcname)));
|
||||
appendStringInfo(&buffer, " for %s",
|
||||
appendStringInfo(&buffer, " USING %s",
|
||||
quote_identifier(NameStr(amForm->amname)));
|
||||
if (objname)
|
||||
{
|
||||
@ -4070,7 +4070,7 @@ getOpFamilyIdentity(StringInfo buffer, Oid opfid, List **objname, List **objargs
|
||||
amForm = (Form_pg_am) GETSTRUCT(amTup);
|
||||
|
||||
schema = get_namespace_name(opfForm->opfnamespace);
|
||||
appendStringInfo(buffer, "%s for %s",
|
||||
appendStringInfo(buffer, "%s USING %s",
|
||||
quote_qualified_identifier(schema,
|
||||
NameStr(opfForm->opfname)),
|
||||
NameStr(amForm->amname));
|
||||
|
@ -373,11 +373,11 @@ SELECT (pg_identify_object(addr1.classid, addr1.objid, addr1.subobjid)).*,
|
||||
conversion | pg_catalog | ascii_to_mic | pg_catalog.ascii_to_mic | t
|
||||
language | | plpgsql | plpgsql | t
|
||||
schema | | addr_nsp | addr_nsp | t
|
||||
operator class | pg_catalog | int4_ops | pg_catalog.int4_ops for btree | t
|
||||
operator class | pg_catalog | int4_ops | pg_catalog.int4_ops USING btree | t
|
||||
operator | pg_catalog | | pg_catalog.+(integer,integer) | t
|
||||
rule | | | "_RETURN" on addr_nsp.genview | t
|
||||
trigger | | | t on addr_nsp.gentable | t
|
||||
operator family | pg_catalog | integer_ops | pg_catalog.integer_ops for btree | t
|
||||
operator family | pg_catalog | integer_ops | pg_catalog.integer_ops USING btree | t
|
||||
policy | | | genpol on addr_nsp.gentable | t
|
||||
collation | pg_catalog | "default" | pg_catalog."default" | t
|
||||
text search dictionary | addr_nsp | addr_ts_dict | addr_nsp.addr_ts_dict | t
|
||||
|
Loading…
x
Reference in New Issue
Block a user