From c773ec6b1526824be172fbf2d7ce2cc05d810f34 Mon Sep 17 00:00:00 2001
From: Peter Eisentraut <peter_e@gmx.net>
Date: Mon, 8 Jun 2009 21:32:33 +0000
Subject: [PATCH] Fix map_sql_table_to_xmlschema() with dropped attributes.

also backpatched to 8.3
---
 src/backend/utils/adt/xml.c | 6 +++++-
 1 file changed, 5 insertions(+), 1 deletion(-)

diff --git a/src/backend/utils/adt/xml.c b/src/backend/utils/adt/xml.c
index e6814e9c93c..57e9595af8d 100644
--- a/src/backend/utils/adt/xml.c
+++ b/src/backend/utils/adt/xml.c
@@ -7,7 +7,7 @@
  * Portions Copyright (c) 1996-2009, PostgreSQL Global Development Group
  * Portions Copyright (c) 1994, Regents of the University of California
  *
- * $PostgreSQL: pgsql/src/backend/utils/adt/xml.c,v 1.88 2009/05/13 20:27:17 tgl Exp $
+ * $PostgreSQL: pgsql/src/backend/utils/adt/xml.c,v 1.89 2009/06/08 21:32:33 petere Exp $
  *
  *-------------------------------------------------------------------------
  */
@@ -2627,12 +2627,16 @@ map_sql_table_to_xmlschema(TupleDesc tupdesc, Oid relid, bool nulls,
 					 rowtypename);
 
 	for (i = 0; i < tupdesc->natts; i++)
+	{
+		if (tupdesc->attrs[i]->attisdropped)
+			continue;
 		appendStringInfo(&result,
 			   "    <xsd:element name=\"%s\" type=\"%s\"%s></xsd:element>\n",
 		  map_sql_identifier_to_xml_name(NameStr(tupdesc->attrs[i]->attname),
 										 true, false),
 				   map_sql_type_to_xml_name(tupdesc->attrs[i]->atttypid, -1),
 						 nulls ? " nillable=\"true\"" : " minOccurs=\"0\"");
+	}
 
 	appendStringInfoString(&result,
 						   "  </xsd:sequence>\n"
-- 
GitLab