From a6a8e303dcf9eb73cf64bb983ae801ec7e52cdba Mon Sep 17 00:00:00 2001
From: "Stephen R. van den Berg" <srb@cuci.nl>
Date: Sun, 14 Feb 2010 15:10:46 +0100
Subject: [PATCH] Clear dangling cache entry for CREATE statements.

Rev: CHANGES:1.204
Rev: lib/modules/Sql.pmod/pgsql.pike:1.73
---
 CHANGES                         | 3 +++
 lib/modules/Sql.pmod/pgsql.pike | 2 +-
 2 files changed, 4 insertions(+), 1 deletion(-)

diff --git a/CHANGES b/CHANGES
index 7f873fe992..87a7905cb0 100644
--- a/CHANGES
+++ b/CHANGES
@@ -18,6 +18,9 @@ o String.normalize_space
 Bug fixes
 ---------
 
+o Fixed dangling cache reference in prepared statements when using CREATE
+  statements via Sql.pgsql.
+
 o Improved widestring support for Parser.Tabular.
 
 o Fixed segfault in combine_path_nt on windows when the first char
diff --git a/lib/modules/Sql.pmod/pgsql.pike b/lib/modules/Sql.pmod/pgsql.pike
index 92a2b5f25e..deb5d0315d 100644
--- a/lib/modules/Sql.pmod/pgsql.pike
+++ b/lib/modules/Sql.pmod/pgsql.pike
@@ -1687,7 +1687,7 @@ object big_query(string q,void|mapping(string|int:mixed) bindings,
 	}
       }
       if(forcecache!=1 && createprefix->match(q))      // Flush cache on CREATE
-	invalidatecache=1;
+	invalidatecache=1,tp=UNDEFINED;
       else
 	prepareds[q]=tp=([]);
     }
-- 
GitLab