From 005866dc4cff8d9d01096d7041a0f935d5212136 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Fr=C3=A9d=C3=A9ric=20P=C3=A9ters?= Date: Fri, 4 Mar 2016 15:48:04 +0100 Subject: [PATCH] sql: don't use 'IF NOT EXISTS' when creating materialized view (#9553) (it requires postgresql 9.5) --- wcs/sql.py | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/wcs/sql.py b/wcs/sql.py index 2634e12..1411d89 100644 --- a/wcs/sql.py +++ b/wcs/sql.py @@ -1632,8 +1632,12 @@ class AnyFormData(SqlMixin): def create_materialized_view_if_not_exists(conn, cur): if get_publisher().pg_version < 94000: return - cur.execute('''CREATE MATERIALIZED VIEW IF NOT EXISTS wcs_materialized_all_forms + try: + cur.execute('''CREATE MATERIALIZED VIEW wcs_materialized_all_forms AS SELECT * from wcs_all_forms''') + conn.commit() + except psycopg2.ProgrammingError: + conn.rollback() @guard_postgres def refresh_materialized_views(): -- 2.7.0