From 9abbd307904ccb254237c6f0fd3631616b326b3d Mon Sep 17 00:00:00 2001 From: Aditya Toshniwal Date: Wed, 22 Feb 2023 14:06:44 +0530 Subject: [PATCH] Fix an issue where sequence owner is remove on sequence edit. #5810 --- .../databases/schemas/sequences/static/js/sequence.ui.js | 7 +++++++ .../sequences/templates/sequences/sql/default/update.sql | 2 +- web/pgadmin/browser/static/js/node.js | 8 ++++---- web/pgadmin/static/js/SchemaView/index.jsx | 2 +- 4 files changed, 13 insertions(+), 6 deletions(-) diff --git a/web/pgadmin/browser/server_groups/servers/databases/schemas/sequences/static/js/sequence.ui.js b/web/pgadmin/browser/server_groups/servers/databases/schemas/sequences/static/js/sequence.ui.js index 5bbd9a261..530977649 100644 --- a/web/pgadmin/browser/server_groups/servers/databases/schemas/sequences/static/js/sequence.ui.js +++ b/web/pgadmin/browser/server_groups/servers/databases/schemas/sequences/static/js/sequence.ui.js @@ -51,6 +51,13 @@ export class OwnedBySchema extends BaseUISchema { optionsReloadBasis: state.owned_table, }; }, + depChange: (state)=>{ + if(!state.owned_table) { + return { + owned_column: null, + }; + } + } } ]; } diff --git a/web/pgadmin/browser/server_groups/servers/databases/schemas/sequences/templates/sequences/sql/default/update.sql b/web/pgadmin/browser/server_groups/servers/databases/schemas/sequences/templates/sequences/sql/default/update.sql index 81f6574dd..dd797fd4e 100644 --- a/web/pgadmin/browser/server_groups/servers/databases/schemas/sequences/templates/sequences/sql/default/update.sql +++ b/web/pgadmin/browser/server_groups/servers/databases/schemas/sequences/templates/sequences/sql/default/update.sql @@ -11,7 +11,7 @@ ALTER SEQUENCE IF EXISTS {{ conn|qtIdent(o_data.schema, data.name) }} OWNER TO {{ conn|qtIdent(data.seqowner) }}; {% endif %} -{% if (data.owned_table == None or data.owned_table is not defined) and (o_data.owned_table is defined and o_data.owned_table != None) and (data.owned_column == None or data.owned_column is not defined) %} +{% if (data.owned_table == None) and (data.owned_column == None) %} ALTER SEQUENCE IF EXISTS {{ conn|qtIdent(o_data.schema, data.name) }} OWNED BY NONE; {% elif (data.owned_table is defined or data.owned_column is defined) and (data.owned_table != o_data.owned_table or data.owned_column != o_data.owned_column) %} diff --git a/web/pgadmin/browser/static/js/node.js b/web/pgadmin/browser/static/js/node.js index c1537e558..9929427e8 100644 --- a/web/pgadmin/browser/static/js/node.js +++ b/web/pgadmin/browser/static/js/node.js @@ -711,12 +711,12 @@ define('pgadmin.browser.node', [ pgBrowser.removeTreeNode(i, selectNextNode); } return true; - }).catch(function(xhr) { - let errmsg = xhr.responseText; + }).catch(function(error) { + let errmsg = error.request?.responseText; /* Error from the server */ - if (xhr.status == 417 || xhr.status == 410 || xhr.status == 500) { + if (error.request?.status == 417 || error.request?.status == 410 || error.request?.status == 500) { try { - let data = JSON.parse(xhr.responseText); + let data = error.response.data; errmsg = data.info || data.errormsg; } catch (e) { console.warn(e.stack || e); diff --git a/web/pgadmin/static/js/SchemaView/index.jsx b/web/pgadmin/static/js/SchemaView/index.jsx index 06fc59220..adb01fc23 100644 --- a/web/pgadmin/static/js/SchemaView/index.jsx +++ b/web/pgadmin/static/js/SchemaView/index.jsx @@ -77,7 +77,7 @@ function getForQueryParams(data) { let retData = {...data}; Object.keys(retData).forEach((key)=>{ let value = retData[key]; - if(_.isObject(value)) { + if(_.isObject(value) || _.isNull(value)) { retData[key] = JSON.stringify(value); } });