@@ -5851,6 +5851,7 @@ getForeignDataWrappers(int *numForeignDataWrappers)
5851
5851
int i ;
5852
5852
PQExpBuffer query = createPQExpBuffer ();
5853
5853
FdwInfo * fdwinfo ;
5854
+ int i_tableoid ;
5854
5855
int i_oid ;
5855
5856
int i_fdwname ;
5856
5857
int i_rolname ;
@@ -5868,7 +5869,7 @@ getForeignDataWrappers(int *numForeignDataWrappers)
5868
5869
/* Make sure we are in proper schema */
5869
5870
selectSourceSchema ("pg_catalog" );
5870
5871
5871
- appendPQExpBuffer (query , "SELECT oid, fdwname, "
5872
+ appendPQExpBuffer (query , "SELECT tableoid, oid, fdwname, "
5872
5873
"(%s fdwowner) AS rolname, fdwvalidator::pg_catalog.regproc, fdwacl,"
5873
5874
"array_to_string(ARRAY("
5874
5875
" SELECT option_name || ' ' || quote_literal(option_value) "
@@ -5884,6 +5885,7 @@ getForeignDataWrappers(int *numForeignDataWrappers)
5884
5885
5885
5886
fdwinfo = (FdwInfo * ) malloc (ntups * sizeof (FdwInfo ));
5886
5887
5888
+ i_tableoid = PQfnumber (res , "tableoid" );
5887
5889
i_oid = PQfnumber (res , "oid" );
5888
5890
i_fdwname = PQfnumber (res , "fdwname" );
5889
5891
i_rolname = PQfnumber (res , "rolname" );
@@ -5894,6 +5896,7 @@ getForeignDataWrappers(int *numForeignDataWrappers)
5894
5896
for (i = 0 ; i < ntups ; i ++ )
5895
5897
{
5896
5898
fdwinfo [i ].dobj .objType = DO_FDW ;
5899
+ fdwinfo [i ].dobj .catId .tableoid = atooid (PQgetvalue (res , i , i_tableoid ));
5897
5900
fdwinfo [i ].dobj .catId .oid = atooid (PQgetvalue (res , i , i_oid ));
5898
5901
AssignDumpId (& fdwinfo [i ].dobj );
5899
5902
fdwinfo [i ].dobj .name = strdup (PQgetvalue (res , i , i_fdwname ));
@@ -5930,6 +5933,7 @@ getForeignServers(int *numForeignServers)
5930
5933
int i ;
5931
5934
PQExpBuffer query = createPQExpBuffer ();
5932
5935
ForeignServerInfo * srvinfo ;
5936
+ int i_tableoid ;
5933
5937
int i_oid ;
5934
5938
int i_srvname ;
5935
5939
int i_rolname ;
@@ -5949,7 +5953,7 @@ getForeignServers(int *numForeignServers)
5949
5953
/* Make sure we are in proper schema */
5950
5954
selectSourceSchema ("pg_catalog" );
5951
5955
5952
- appendPQExpBuffer (query , "SELECT oid, srvname, "
5956
+ appendPQExpBuffer (query , "SELECT tableoid, oid, srvname, "
5953
5957
"(%s srvowner) AS rolname, "
5954
5958
"srvfdw, srvtype, srvversion, srvacl,"
5955
5959
"array_to_string(ARRAY("
@@ -5966,6 +5970,7 @@ getForeignServers(int *numForeignServers)
5966
5970
5967
5971
srvinfo = (ForeignServerInfo * ) malloc (ntups * sizeof (ForeignServerInfo ));
5968
5972
5973
+ i_tableoid = PQfnumber (res , "tableoid" );
5969
5974
i_oid = PQfnumber (res , "oid" );
5970
5975
i_srvname = PQfnumber (res , "srvname" );
5971
5976
i_rolname = PQfnumber (res , "rolname" );
@@ -5978,6 +5983,7 @@ getForeignServers(int *numForeignServers)
5978
5983
for (i = 0 ; i < ntups ; i ++ )
5979
5984
{
5980
5985
srvinfo [i ].dobj .objType = DO_FOREIGN_SERVER ;
5986
+ srvinfo [i ].dobj .catId .tableoid = atooid (PQgetvalue (res , i , i_tableoid ));
5981
5987
srvinfo [i ].dobj .catId .oid = atooid (PQgetvalue (res , i , i_oid ));
5982
5988
AssignDumpId (& srvinfo [i ].dobj );
5983
5989
srvinfo [i ].dobj .name = strdup (PQgetvalue (res , i , i_srvname ));
0 commit comments