public inbox for [email protected]  
help / color / mirror / Atom feed
[pgAdmin][patch] RM3409 - Retrieving SQL from table throws exception
2+ messages / 2 participants
[nested] [flat]

* [pgAdmin][patch] RM3409 - Retrieving SQL from table throws exception
@ 2018-06-08 18:43 Victoria Henry <[email protected]>
  2018-06-11 15:56 ` Re: [pgAdmin][patch] RM3409 - Retrieving SQL from table throws exception Dave Page <[email protected]>
  0 siblings, 1 reply; 2+ messages in thread

From: Victoria Henry @ 2018-06-08 18:43 UTC (permalink / raw)
  To: pgadmin-hackers

Hi hackers,

Attached is a patch that fixes an exception when trying to view the SQL tab
on a GreenPlum database.

Sincerely,

Joao && Victoria


Attachments:

  [application/octet-stream] RM3409.patch (4.2K, 3-RM3409.patch)
  download | inline diff:
diff --git a/web/pgadmin/browser/server_groups/servers/databases/schemas/tables/templates/trigger/sql/9.1_plus/properties.sql b/web/pgadmin/browser/server_groups/servers/databases/schemas/tables/templates/trigger/sql/9.1_plus/properties.sql
new file mode 100644
index 00000000..2d34accf
--- /dev/null
+++ b/web/pgadmin/browser/server_groups/servers/databases/schemas/tables/templates/trigger/sql/9.1_plus/properties.sql
@@ -0,0 +1,23 @@
+SELECT t.oid,t.tgname AS name, t.xmin, t.*, relname, CASE WHEN relkind = 'r' THEN TRUE ELSE FALSE END AS parentistable,
+    nspname, des.description, l.lanname, p.prosrc, p.proname AS tfunction,
+    COALESCE(substring(pg_get_triggerdef(t.oid), 'WHEN (.*) EXECUTE PROCEDURE'),
+    substring(pg_get_triggerdef(t.oid), 'WHEN (.*)  \\$trigger')) AS whenclause,
+    -- We need to convert tgargs column bytea datatype to array datatype
+    (string_to_array(encode(tgargs, 'escape'), E'\\000')::text[])[1:tgnargs] AS custom_tgargs,
+{% if datlastsysoid %}
+    (CASE WHEN t.oid <= {{ datlastsysoid}}::oid THEN true ElSE false END) AS is_sys_trigger,
+{% endif %}
+    (CASE WHEN tgconstraint != 0::OID THEN true ElSE false END) AS is_constraint_trigger,
+    (CASE WHEN tgenabled = 'O' THEN true ElSE false END) AS is_enable_trigger
+FROM pg_trigger t
+    JOIN pg_class cl ON cl.oid=tgrelid
+    JOIN pg_namespace na ON na.oid=relnamespace
+    LEFT OUTER JOIN pg_description des ON (des.objoid=t.oid AND des.classoid='pg_trigger'::regclass)
+    LEFT OUTER JOIN pg_proc p ON p.oid=t.tgfoid
+    LEFT OUTER JOIN pg_language l ON l.oid=p.prolang
+WHERE NOT tgisinternal
+    AND tgrelid = {{tid}}::OID
+{% if trid %}
+    AND t.oid = {{trid}}::OID
+{% endif %}
+ORDER BY tgname;
diff --git a/web/pgadmin/browser/server_groups/servers/databases/schemas/tables/templates/trigger/sql/default/properties.sql b/web/pgadmin/browser/server_groups/servers/databases/schemas/tables/templates/trigger/sql/default/properties.sql
index 2d34accf..9af81185 100644
--- a/web/pgadmin/browser/server_groups/servers/databases/schemas/tables/templates/trigger/sql/default/properties.sql
+++ b/web/pgadmin/browser/server_groups/servers/databases/schemas/tables/templates/trigger/sql/default/properties.sql
@@ -1,23 +1 @@
-SELECT t.oid,t.tgname AS name, t.xmin, t.*, relname, CASE WHEN relkind = 'r' THEN TRUE ELSE FALSE END AS parentistable,
-    nspname, des.description, l.lanname, p.prosrc, p.proname AS tfunction,
-    COALESCE(substring(pg_get_triggerdef(t.oid), 'WHEN (.*) EXECUTE PROCEDURE'),
-    substring(pg_get_triggerdef(t.oid), 'WHEN (.*)  \\$trigger')) AS whenclause,
-    -- We need to convert tgargs column bytea datatype to array datatype
-    (string_to_array(encode(tgargs, 'escape'), E'\\000')::text[])[1:tgnargs] AS custom_tgargs,
-{% if datlastsysoid %}
-    (CASE WHEN t.oid <= {{ datlastsysoid}}::oid THEN true ElSE false END) AS is_sys_trigger,
-{% endif %}
-    (CASE WHEN tgconstraint != 0::OID THEN true ElSE false END) AS is_constraint_trigger,
-    (CASE WHEN tgenabled = 'O' THEN true ElSE false END) AS is_enable_trigger
-FROM pg_trigger t
-    JOIN pg_class cl ON cl.oid=tgrelid
-    JOIN pg_namespace na ON na.oid=relnamespace
-    LEFT OUTER JOIN pg_description des ON (des.objoid=t.oid AND des.classoid='pg_trigger'::regclass)
-    LEFT OUTER JOIN pg_proc p ON p.oid=t.tgfoid
-    LEFT OUTER JOIN pg_language l ON l.oid=p.prolang
-WHERE NOT tgisinternal
-    AND tgrelid = {{tid}}::OID
-{% if trid %}
-    AND t.oid = {{trid}}::OID
-{% endif %}
-ORDER BY tgname;
+SELECT 1 WHERE 1 = 2;
diff --git a/web/pgadmin/browser/server_groups/servers/databases/schemas/tables/utils.py b/web/pgadmin/browser/server_groups/servers/databases/schemas/tables/utils.py
index 9ef06541..2faabd07 100644
--- a/web/pgadmin/browser/server_groups/servers/databases/schemas/tables/utils.py
+++ b/web/pgadmin/browser/server_groups/servers/databases/schemas/tables/utils.py
@@ -1003,6 +1003,8 @@ class BaseTableView(PGChildNodeView, BasePartitionTable):
             if not status:
                 return internal_server_error(errormsg=res)
 
+            if len(res['rows']) == 0:
+                continue
             data = dict(res['rows'][0])
             # Adding parent into data dict, will be using it while creating sql
             data['schema'] = schema


^ permalink  raw  reply  [nested|flat] 2+ messages in thread

* Re: [pgAdmin][patch] RM3409 - Retrieving SQL from table throws exception
  2018-06-08 18:43 [pgAdmin][patch] RM3409 - Retrieving SQL from table throws exception Victoria Henry <[email protected]>
@ 2018-06-11 15:56 ` Dave Page <[email protected]>
  0 siblings, 0 replies; 2+ messages in thread

From: Dave Page @ 2018-06-11 15:56 UTC (permalink / raw)
  To: Victoria Henry <[email protected]>; +Cc: pgadmin-hackers

Thanks, patch applied.

On Fri, Jun 8, 2018 at 7:43 PM, Victoria Henry <[email protected]> wrote:

> Hi hackers,
>
> Attached is a patch that fixes an exception when trying to view the SQL
> tab on a GreenPlum database.
>
> Sincerely,
>
> Joao && Victoria
>



-- 
Dave Page
Blog: http://pgsnake.blogspot.com
Twitter: @pgsnake

EnterpriseDB UK: http://www.enterprisedb.com
The Enterprise PostgreSQL Company


^ permalink  raw  reply  [nested|flat] 2+ messages in thread


end of thread, other threads:[~2018-06-11 15:56 UTC | newest]

Thread overview: 2+ messages (download: mbox mbox.gz follow: Atom feed)
-- links below jump to the message on this page --
2018-06-08 18:43 [pgAdmin][patch] RM3409 - Retrieving SQL from table throws exception Victoria Henry <[email protected]>
2018-06-11 15:56 ` Dave Page <[email protected]>

This inbox is served by agora; see mirroring instructions
for how to clone and mirror all data and code used for this inbox