From: Ashutosh Bapat
> In order to normalize parse trees, we need to at
> least replace various OIDs in parse-tree with something that the
> foreign server will understand correctly like table name on the
> foreign table pointed to by local foreign table OR (schema
qualified)
> function names and so on.
Yes, that's the drawback of each node in the cluster having different
OIDs for the same object. That applies to XL, too. In XL, the data
node returns the data type names of the columns in the result set to
the coordinator. Then the coordinator seemed to parse each data type
name with base_yyparse() to convert the name to its OID on the
coordinator. That's why base_yyparse() appeared at the top in the
perf profile. That repeated typename-to-OID conversion would be
reduced by caching the conversion result, like the logical replication
of PostgreSQL does. But managing the catalog at one place and using
the same OID values seems to concise to me as a concept.
Regards
MauMau