details:   https://code.openbravo.com/erp/devel/pi/rev/19bd63f27cc6
changeset: 35755:19bd63f27cc6
user:      Asier Lostalé <asier.lostale <at> openbravo.com>
date:      Mon May 13 12:47:39 2019 +0200
summary:   fixed bug 40842: install.source fails with PostgreSQL 12

  It was failing on prescript creation as it makes use of two columns that have
  been removed in PostgreSQL 12 (pg_attrdef.adsrc, pg_constraint.consrc).

  They have been replaced by pg_get_expr and pg_get_constraintdef functions 
which
  are present in all supported PG versions.

details:   https://code.openbravo.com/erp/devel/pi/rev/cc303c2e2e09
changeset: 35756:cc303c2e2e09
user:      Asier Lostalé <asier.lostale <at> openbravo.com>
date:      Mon May 13 12:48:05 2019 +0200
summary:   fixed bug 40843: update.database fails with PostgreSQL 12

  It failed because we made use of pg_attrdef.adsrc which was deprecated for a
  long time and has been removed in 12.

  Replaced its use by pg_get_expr which is present in all PG supported versions.

diffstat:

 src-db/database/lib/dbsourcemanager.jar        |  Bin 
 src-db/database/model/prescript-PostgreSql.sql |    6 +++---
 2 files changed, 3 insertions(+), 3 deletions(-)

diffs (32 lines):

diff -r 9c2b642b9342 -r cc303c2e2e09 src-db/database/lib/dbsourcemanager.jar
Binary file src-db/database/lib/dbsourcemanager.jar has changed
diff -r 9c2b642b9342 -r cc303c2e2e09 
src-db/database/model/prescript-PostgreSql.sql
--- a/src-db/database/model/prescript-PostgreSql.sql    Mon May 13 09:10:41 
2019 +0200
+++ b/src-db/database/model/prescript-PostgreSql.sql    Mon May 13 12:48:05 
2019 +0200
@@ -1070,7 +1070,7 @@
             WHEN 'P'::text THEN upper(pg_constraint.conname::text)
             WHEN 'U'::text THEN upper(pg_constraint.conname::text)
             ELSE ''::text
-        END AS index_name, dba_getstandard_search_text(pg_constraint.consrc) 
AS search_condition, 'ENABLED'::text AS STATUS
+        END AS index_name, 
dba_getstandard_search_text(pg_get_constraintdef(pg_constraint.oid)) AS 
search_condition, 'ENABLED'::text AS STATUS
    FROM pg_constraint
    JOIN pg_class ON pg_class.oid = pg_constraint.conrelid
    LEFT JOIN pg_class fk_table ON fk_table.oid = pg_constraint.confrelid
@@ -1171,7 +1171,7 @@
             ELSE 0
         END AS data_scale,
         CASE pg_attribute.atthasdef
-            WHEN true THEN ( SELECT pg_attrdef.adsrc
+            WHEN true THEN ( SELECT pg_get_expr(adbin, adrelid)
                FROM pg_attrdef
               WHERE pg_attrdef.adrelid = pg_class.oid AND pg_attrdef.adnum = 
pg_attribute.attnum)
             ELSE NULL::text
@@ -1435,7 +1435,7 @@
               END),'.')|| (not pg_attribute.attnotnull)::TEXT||
               COALESCE(
               (CASE pg_attribute.atthasdef
-                  WHEN true THEN ( SELECT pg_attrdef.adsrc FROM pg_attrdef 
WHERE pg_attrdef.adrelid = pg_class.oid AND pg_attrdef.adnum = 
pg_attribute.attnum)
+                  WHEN true THEN ( SELECT pg_get_expr(adbin, adrelid) FROM 
pg_attrdef WHERE pg_attrdef.adrelid = pg_class.oid AND pg_attrdef.adnum = 
pg_attribute.attnum)
                   ELSE NULL::text
               END),'.')) as cl
               FROM pg_class, pg_namespace, pg_attribute, pg_type


_______________________________________________
Openbravo-commits mailing list
Openbravo-commits@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/openbravo-commits

Reply via email to