@@ -5851,6 +5851,7 @@ getForeignDataWrappers(int *numForeignDataWrappers)
58515851 int i ;
58525852 PQExpBuffer query = createPQExpBuffer ();
58535853 FdwInfo * fdwinfo ;
5854+ int i_tableoid ;
58545855 int i_oid ;
58555856 int i_fdwname ;
58565857 int i_rolname ;
@@ -5868,7 +5869,7 @@ getForeignDataWrappers(int *numForeignDataWrappers)
58685869 /* Make sure we are in proper schema */
58695870 selectSourceSchema ("pg_catalog" );
58705871
5871- appendPQExpBuffer (query , "SELECT oid, fdwname, "
5872+ appendPQExpBuffer (query , "SELECT tableoid, oid, fdwname, "
58725873 "(%s fdwowner) AS rolname, fdwvalidator::pg_catalog.regproc, fdwacl,"
58735874 "array_to_string(ARRAY("
58745875 " SELECT option_name || ' ' || quote_literal(option_value) "
@@ -5884,6 +5885,7 @@ getForeignDataWrappers(int *numForeignDataWrappers)
58845885
58855886 fdwinfo = (FdwInfo * ) malloc (ntups * sizeof (FdwInfo ));
58865887
5888+ i_tableoid = PQfnumber (res , "tableoid" );
58875889 i_oid = PQfnumber (res , "oid" );
58885890 i_fdwname = PQfnumber (res , "fdwname" );
58895891 i_rolname = PQfnumber (res , "rolname" );
@@ -5894,6 +5896,7 @@ getForeignDataWrappers(int *numForeignDataWrappers)
58945896 for (i = 0 ; i < ntups ; i ++ )
58955897 {
58965898 fdwinfo [i ].dobj .objType = DO_FDW ;
5899+ fdwinfo [i ].dobj .catId .tableoid = atooid (PQgetvalue (res , i , i_tableoid ));
58975900 fdwinfo [i ].dobj .catId .oid = atooid (PQgetvalue (res , i , i_oid ));
58985901 AssignDumpId (& fdwinfo [i ].dobj );
58995902 fdwinfo [i ].dobj .name = strdup (PQgetvalue (res , i , i_fdwname ));
@@ -5930,6 +5933,7 @@ getForeignServers(int *numForeignServers)
59305933 int i ;
59315934 PQExpBuffer query = createPQExpBuffer ();
59325935 ForeignServerInfo * srvinfo ;
5936+ int i_tableoid ;
59335937 int i_oid ;
59345938 int i_srvname ;
59355939 int i_rolname ;
@@ -5949,7 +5953,7 @@ getForeignServers(int *numForeignServers)
59495953 /* Make sure we are in proper schema */
59505954 selectSourceSchema ("pg_catalog" );
59515955
5952- appendPQExpBuffer (query , "SELECT oid, srvname, "
5956+ appendPQExpBuffer (query , "SELECT tableoid, oid, srvname, "
59535957 "(%s srvowner) AS rolname, "
59545958 "srvfdw, srvtype, srvversion, srvacl,"
59555959 "array_to_string(ARRAY("
@@ -5966,6 +5970,7 @@ getForeignServers(int *numForeignServers)
59665970
59675971 srvinfo = (ForeignServerInfo * ) malloc (ntups * sizeof (ForeignServerInfo ));
59685972
5973+ i_tableoid = PQfnumber (res , "tableoid" );
59695974 i_oid = PQfnumber (res , "oid" );
59705975 i_srvname = PQfnumber (res , "srvname" );
59715976 i_rolname = PQfnumber (res , "rolname" );
@@ -5978,6 +5983,7 @@ getForeignServers(int *numForeignServers)
59785983 for (i = 0 ; i < ntups ; i ++ )
59795984 {
59805985 srvinfo [i ].dobj .objType = DO_FOREIGN_SERVER ;
5986+ srvinfo [i ].dobj .catId .tableoid = atooid (PQgetvalue (res , i , i_tableoid ));
59815987 srvinfo [i ].dobj .catId .oid = atooid (PQgetvalue (res , i , i_oid ));
59825988 AssignDumpId (& srvinfo [i ].dobj );
59835989 srvinfo [i ].dobj .name = strdup (PQgetvalue (res , i , i_srvname ));
0 commit comments