public inbox for [email protected]  
help / color / mirror / Atom feed
From: Nikhil Mohite <[email protected]>
To: pgadmin-hackers <[email protected]>
Subject: [pgAdmin][RM-6925]: [SQL] Syntax Error display if select "Custom auto-vacuum" option and not set Autovaccuum option as Yes or No
Date: Thu, 11 Nov 2021 09:50:53 +0530
Message-ID: <CAOBg0AM42aFD=L1_-qBSo-tMBYcaX9qaWpwoDyE8hzqbya5N=g@mail.gmail.com> (raw)

Hi Hackers,

Please find the attached patch for RM-6925:
<https://redmine.postgresql.org/issues/6925;  [SQL] Syntax Error display if
select "Custom auto-vacuum" option and not set Autovaccuum option as Yes or
No.


-- 
*Thanks & Regards,*
*Nikhil Mohite*
*Senior Software Engineer.*
*EDB Postgres* <https://www.enterprisedb.com/;
*Mob.No: +91-7798364578.*


Attachments:

  [application/octet-stream] RM-6925.patch (2.5K, 3-RM-6925.patch)
  download | inline diff:
diff --git a/web/pgadmin/browser/server_groups/servers/databases/schemas/tables/templates/tables/sql/12_plus/create.sql b/web/pgadmin/browser/server_groups/servers/databases/schemas/tables/templates/tables/sql/12_plus/create.sql
index 39ecfe04..c43de881 100644
--- a/web/pgadmin/browser/server_groups/servers/databases/schemas/tables/templates/tables/sql/12_plus/create.sql
+++ b/web/pgadmin/browser/server_groups/servers/databases/schemas/tables/templates/tables/sql/12_plus/create.sql
@@ -17,7 +17,7 @@
 {% set empty_bracket = "\n(\n)"%}
 {% endif %}
 {% set with_clause = false%}
-{% if data.fillfactor or data.parallel_workers or data.toast_tuple_target or data.autovacuum_custom or data.autovacuum_enabled in ('t', 'f') or data.toast_autovacuum or data.toast_autovacuum_enabled in ('t', 'f') %}
+{% if data.fillfactor or data.parallel_workers or data.toast_tuple_target or (data.autovacuum_custom and data.add_vacuum_settings_in_sql) or data.autovacuum_enabled in ('t', 'f') or (data.toast_autovacuum and data.add_vacuum_settings_in_sql) or data.toast_autovacuum_enabled in ('t', 'f') %}
 {% set with_clause = true%}
 {% endif %}
 CREATE {% if data.relpersistence %}UNLOGGED {% endif %}TABLE{% if add_not_exists_clause %} IF NOT EXISTS{% endif %} {{conn|qtIdent(data.schema, data.name)}}{{empty_bracket}}
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 aca27fd0..549febd3 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
@@ -2096,8 +2096,16 @@ class BaseTableView(PGChildNodeView, BasePartitionTable, VacuumSettings):
         if data is None:
             if vacuum_key in old_data:
                 for opt in old_data[vacuum_key]:
-                    if 'value' in opt and opt['value'] is None:
+                    if 'add_vacuum_settings_in_sql' not in old_data:
+                        old_data['add_vacuum_settings_in_sql'] = False
+
+                    if ('value' in opt and opt['value'] is None) or ('value' in opt and opt['value'] == ''):
                         opt.pop('value')
+
+                    if 'value' in opt and 'add_vacuum_settings_in_sql' in old_data and not old_data['add_vacuum_settings_in_sql']:
+                        old_data['add_vacuum_settings_in_sql'] = True
+
+
         # Iterate vacuum table
         elif vacuum_key in data and 'changed' in data[vacuum_key] \
                 and vacuum_key in old_data:


view thread (2+ messages)  latest in thread

reply

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Reply to all the recipients using the --to and --cc options:
  reply via email

  To: [email protected]
  Cc: [email protected]
  Subject: Re: [pgAdmin][RM-6925]: [SQL] Syntax Error display if select "Custom auto-vacuum" option and not set Autovaccuum option as Yes or No
  In-Reply-To: <CAOBg0AM42aFD=L1_-qBSo-tMBYcaX9qaWpwoDyE8hzqbya5N=g@mail.gmail.com>

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

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