This is an automated email from the ASF dual-hosted git repository.

liuhongyu pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/shenyu.git


The following commit(s) were added to refs/heads/master by this push:
     new 269abd3ec8 [type:fix] fix namespace sql error (#5711)
269abd3ec8 is described below

commit 269abd3ec83d3626791928912a5713e19cafb7c4
Author: moremind <hefen...@apache.org>
AuthorDate: Tue Oct 15 22:46:02 2024 +0800

    [type:fix] fix namespace sql error (#5711)
    
    * [type:fix] fix namespace sql error
    
    * [type:fix] fix namespace sql error
    
    * [type:fix] fix namespace sql error
    
    * [type:fix] fix namespace sql error
    
    * [type:fix] fix namespace sql error
    
    * [type:fix] fix namespace sql error
    
    * [type:fix] fix namespace sql error
    
    * [type:fix] fix namespace sql error
    
    * [type:fix] fix namespace sql error
---
 db/init/mysql/schema.sql                           | 22 +++-----
 db/init/ob/schema.sql                              | 23 +++------
 db/init/og/create-table.sql                        | 37 +++++---------
 db/init/oracle/schema.sql                          | 43 ++++++++--------
 db/init/pg/create-table.sql                        | 36 ++++++-------
 db/upgrade/2.6.1-upgrade-2.7.0-mysql.sql           | 59 ++++++++++------------
 db/upgrade/2.6.1-upgrade-2.7.0-og.sql              | 55 ++++++++++----------
 db/upgrade/2.6.1-upgrade-2.7.0-oracle.sql          | 54 ++++++++++----------
 db/upgrade/2.6.1-upgrade-2.7.0-pg.sql              | 56 ++++++++++----------
 .../shenyu/admin/service/SyncDataService.java      |  1 -
 .../FallbackShenyuClientRegisterService.java       |  2 +-
 .../src/main/resources/mappers/app-auth-sqlmap.xml |  7 +++
 .../main/resources/mappers/discovery-sqlmap.xml    |  7 ++-
 .../mappers/discovery-upstream-sqlmap.xml          |  2 +
 .../main/resources/mappers/meta-data-sqlmap.xml    |  2 +
 .../resources/mappers/proxy-selector-sqlmap.xml    | 11 ++--
 .../src/main/resources/mappers/rule-sqlmap.xml     |  1 +
 .../src/main/resources/mappers/selector-sqlmap.xml |  2 +-
 .../src/main/resources/sql-script/h2/schema.sql    | 24 +++------
 .../e2e/testcase/cluster/DividePluginTest.java     |  3 ++
 .../shenyu/e2e/testcase/http/DividePluginTest.java |  3 ++
 .../apache/shenyu/e2e/model/data/BindingData.java  | 22 ++++++++
 .../shenyu/e2e/template/ResourceDataTemplate.java  |  3 ++
 23 files changed, 237 insertions(+), 238 deletions(-)

diff --git a/db/init/mysql/schema.sql b/db/init/mysql/schema.sql
index 0f37731f2f..fde0f776ad 100644
--- a/db/init/mysql/schema.sql
+++ b/db/init/mysql/schema.sql
@@ -98,6 +98,7 @@ CREATE TABLE `app_auth`  (
   `ext_info` varchar(1024) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci 
NULL DEFAULT NULL COMMENT 'extended parameter json',
   `open` tinyint(0) NOT NULL COMMENT 'open auth path or not  (0 close, 1 open) 
',
   `enabled` tinyint(0) NOT NULL COMMENT 'delete or not  (0 close, 1 open) ',
+  `namespace_id` varchar(50) NOT NULL COMMENT 'namespace id',
   `date_created` timestamp(3) NOT NULL DEFAULT CURRENT_TIMESTAMP(3) COMMENT 
'create time',
   `date_updated` timestamp(3) NOT NULL DEFAULT CURRENT_TIMESTAMP(3) ON UPDATE 
CURRENT_TIMESTAMP(3) COMMENT 'update time',
   PRIMARY KEY (`id`) USING BTREE
@@ -238,6 +239,7 @@ CREATE TABLE `meta_data`  (
   `method_name` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci 
NULL DEFAULT NULL COMMENT 'method name',
   `parameter_types` varchar(255) CHARACTER SET utf8mb4 COLLATE 
utf8mb4_unicode_ci NULL DEFAULT NULL COMMENT 'parameter types are provided with 
multiple parameter types separated by commas',
   `rpc_ext` varchar(512) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL 
DEFAULT NULL COMMENT 'rpc extended information, json format',
+  `namespace_id` varchar(50) NOT NULL COMMENT 'namespace id',
   `date_created` timestamp(3) NOT NULL DEFAULT CURRENT_TIMESTAMP(3) COMMENT 
'create time',
   `date_updated` timestamp(3) NOT NULL DEFAULT CURRENT_TIMESTAMP(3) ON UPDATE 
CURRENT_TIMESTAMP(3) COMMENT 'update time',
   `enabled` tinyint(0) NOT NULL DEFAULT 0 COMMENT 'enabled state  (0 close, 1 
open) ',
@@ -1855,6 +1857,7 @@ CREATE TABLE `rule`  (
   `enabled` tinyint(0) NOT NULL COMMENT 'whether to open (0 close, 1 open) ',
   `loged` tinyint(0) NOT NULL COMMENT 'whether to log or not (0 no print, 1 
print) ',
   `match_restful` tinyint(0) NOT NULL COMMENT 'whether to match restful(0 
cache, 1 not cache)',
+  `namespace_id` varchar(50) NOT NULL COMMENT 'namespace id',
   `sort` int(0) NOT NULL COMMENT 'sort',
   `handle` varchar(1024) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL 
DEFAULT NULL COMMENT 'processing logic (here for different plug-ins, there will 
be different fields to identify different processes, all data in JSON format is 
stored)',
   `date_created` timestamp(3) NOT NULL DEFAULT CURRENT_TIMESTAMP(3) COMMENT 
'create time',
@@ -1902,6 +1905,7 @@ CREATE TABLE `selector`  (
   `loged` tinyint(0) NOT NULL COMMENT 'whether to print the log (0 no print, 1 
print) ',
   `continued` tinyint(0) NOT NULL COMMENT 'whether to continue execution',
   `match_restful` tinyint(0) NOT NULL COMMENT 'whether to match restful(0 
cache, 1 not cache)',
+  `namespace_id` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci 
NOT NULL COMMENT 'namespace id',
   `date_created` timestamp(3) NOT NULL DEFAULT CURRENT_TIMESTAMP(3) COMMENT 
'create time',
   `date_updated` timestamp(3) NOT NULL DEFAULT CURRENT_TIMESTAMP(3) ON UPDATE 
CURRENT_TIMESTAMP(3) COMMENT 'update time',
   PRIMARY KEY (`id`) USING BTREE
@@ -2110,6 +2114,7 @@ CREATE TABLE `discovery`
     `name`         varchar(255) CHARACTER SET utf8mb4 COLLATE 
utf8mb4_unicode_ci NOT NULL COMMENT 'the discovery name',
     `level`        varchar(64) CHARACTER SET utf8mb4 COLLATE 
utf8mb4_unicode_ci NOT NULL COMMENT '0 selector,1 plugin  2 global',
     `plugin_name`  varchar(255) CHARACTER SET utf8mb4 COLLATE 
utf8mb4_unicode_ci  COMMENT 'the plugin name',
+    `namespace_id` varchar(50) CHARACTER SET utf8mb4 COLLATE 
utf8mb4_unicode_ci NOT NULL COMMENT 'namespace id',
     `type`         varchar(64) CHARACTER SET utf8mb4 COLLATE 
utf8mb4_unicode_ci NOT NULL COMMENT 'local,zookeeper,etcd,consul,nacos',
     `server_list`  varchar(255) CHARACTER SET utf8mb4 COLLATE 
utf8mb4_unicode_ci  COMMENT 'register server url (,)',
     `props`     text CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci COMMENT 
'the discovery pops (json) ',
@@ -2142,6 +2147,7 @@ CREATE TABLE `discovery_upstream`
 (
     `id`           varchar(128) CHARACTER SET utf8mb4 COLLATE 
utf8mb4_unicode_ci NOT NULL COMMENT 'primary key id',
     `discovery_handler_id` varchar(128) CHARACTER SET utf8mb4 COLLATE 
utf8mb4_unicode_ci NOT NULL COMMENT 'the discovery handler id',
+    `namespace_id` varchar(50) CHARACTER SET utf8mb4 COLLATE 
utf8mb4_unicode_ci NOT NULL COMMENT 'namespace id',
     `protocol`     varchar(64) CHARACTER SET utf8mb4 COLLATE 
utf8mb4_unicode_ci  COMMENT 'for http, https, tcp, ws',
     `url`          varchar(64) CHARACTER SET utf8mb4 COLLATE 
utf8mb4_unicode_ci NOT NULL COMMENT 'ip:port',
     `status`      int(0) NOT NULL COMMENT 'type (0, healthy, 1 unhealthy)',
@@ -2166,6 +2172,7 @@ CREATE TABLE `proxy_selector`
     `type`         varchar(64) CHARACTER SET utf8mb4 COLLATE 
utf8mb4_unicode_ci NOT NULL COMMENT 'proxy type for tcp, upd, ws',
     `forward_port` int(0) NOT NULL COMMENT 'the proxy forward port',
     `props`      text CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci COMMENT 
'the other field (json)',
+    `namespace_id` varchar(50) NOT NULL COMMENT 'namespace id',
     `date_created` timestamp(3) NOT NULL DEFAULT CURRENT_TIMESTAMP(3) COMMENT 
'create time',
     `date_updated` timestamp(3) NOT NULL DEFAULT CURRENT_TIMESTAMP(3) ON 
UPDATE CURRENT_TIMESTAMP(3) COMMENT 'update time',
     PRIMARY KEY (`id`) USING BTREE
@@ -2423,18 +2430,3 @@ CREATE TABLE IF NOT EXISTS `scale_history`
     `date_updated`   timestamp(3)   NOT NULL DEFAULT CURRENT_TIMESTAMP(3) ON 
UPDATE CURRENT_TIMESTAMP(3) COMMENT 'update time',
     PRIMARY KEY (`id`) USING BTREE
     ) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_unicode_ci 
ROW_FORMAT = Dynamic;
-
-
-ALTER TABLE `shenyu`.`selector` ADD COLUMN `namespace_id` varchar(50) NULL 
COMMENT 'namespaceId' AFTER `match_restful`;
-
-ALTER TABLE `shenyu`.`rule` ADD COLUMN `namespace_id` varchar(50) NULL COMMENT 
'namespaceId' AFTER `match_restful`;
-
-ALTER TABLE `shenyu`.`meta_data` ADD COLUMN `namespace_id` varchar(50) NULL 
COMMENT 'namespaceId';
-
-ALTER TABLE `shenyu`.`app_auth` ADD COLUMN `namespace_id` varchar(50) NULL 
COMMENT 'namespaceId' AFTER `enabled`;
-
-ALTER TABLE `shenyu`.`discovery` ADD COLUMN `namespace_id` varchar(50) NULL 
COMMENT 'namespaceId' AFTER `plugin_name`;
-
-ALTER TABLE `shenyu`.`discovery_upstream` ADD COLUMN `namespace_id` 
varchar(50) NULL COMMENT 'namespaceId' AFTER `discovery_handler_id`;
-
-ALTER TABLE `shenyu`.`proxy_selector` ADD COLUMN `namespace_id` varchar(50) 
NULL COMMENT 'namespaceId' AFTER `props`;
\ No newline at end of file
diff --git a/db/init/ob/schema.sql b/db/init/ob/schema.sql
index 73086427e2..4b98bf35d1 100644
--- a/db/init/ob/schema.sql
+++ b/db/init/ob/schema.sql
@@ -98,6 +98,7 @@ CREATE TABLE `app_auth`  (
   `ext_info` varchar(1024) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci 
NULL DEFAULT NULL COMMENT 'extended parameter json',
   `open` tinyint(0) NOT NULL COMMENT 'open auth path or not  (0 close, 1 open) 
',
   `enabled` tinyint(0) NOT NULL COMMENT 'delete or not  (0 close, 1 open) ',
+  `namespace_id` varchar(50) NOT NULL COMMENT 'namespace id',
   `date_created` timestamp(3) NOT NULL DEFAULT CURRENT_TIMESTAMP(3) COMMENT 
'create time',
   `date_updated` timestamp(3) NOT NULL DEFAULT CURRENT_TIMESTAMP(3) ON UPDATE 
CURRENT_TIMESTAMP(3) COMMENT 'update time',
   PRIMARY KEY (`id`) USING BTREE
@@ -238,6 +239,7 @@ CREATE TABLE `meta_data`  (
   `method_name` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci 
NULL DEFAULT NULL COMMENT 'method name',
   `parameter_types` varchar(255) CHARACTER SET utf8mb4 COLLATE 
utf8mb4_unicode_ci NULL DEFAULT NULL COMMENT 'parameter types are provided with 
multiple parameter types separated by commas',
   `rpc_ext` varchar(512) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL 
DEFAULT NULL COMMENT 'rpc extended information, json format',
+  `namespace_id` varchar(50) NOT NULL COMMENT 'namespace id',
   `date_created` timestamp(3) NOT NULL DEFAULT CURRENT_TIMESTAMP(3) COMMENT 
'create time',
   `date_updated` timestamp(3) NOT NULL DEFAULT CURRENT_TIMESTAMP(3) ON UPDATE 
CURRENT_TIMESTAMP(3) COMMENT 'update time',
   `enabled` tinyint(0) NOT NULL DEFAULT 0 COMMENT 'enabled state  (0 close, 1 
open) ',
@@ -1855,6 +1857,7 @@ CREATE TABLE `rule`  (
   `enabled` tinyint(0) NOT NULL COMMENT 'whether to open (0 close, 1 open) ',
   `loged` tinyint(0) NOT NULL COMMENT 'whether to log or not (0 no print, 1 
print) ',
   `match_restful` tinyint(0) NOT NULL COMMENT 'whether to match restful(0 
cache, 1 not cache)',
+  `namespace_id` varchar(50) NOT NULL COMMENT 'namespace id',
   `sort` int(0) NOT NULL COMMENT 'sort',
   `handle` varchar(1024) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NULL 
DEFAULT NULL COMMENT 'processing logic (here for different plug-ins, there will 
be different fields to identify different processes, all data in JSON format is 
stored)',
   `date_created` timestamp(3) NOT NULL DEFAULT CURRENT_TIMESTAMP(3) COMMENT 
'create time',
@@ -1902,6 +1905,7 @@ CREATE TABLE `selector`  (
   `loged` tinyint(0) NOT NULL COMMENT 'whether to print the log (0 no print, 1 
print) ',
   `continued` tinyint(0) NOT NULL COMMENT 'whether to continue execution',
   `match_restful` tinyint(0) NOT NULL COMMENT 'whether to match restful(0 
cache, 1 not cache)',
+  `namespace_id` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci 
NOT NULL COMMENT 'namespace id',
   `date_created` timestamp(3) NOT NULL DEFAULT CURRENT_TIMESTAMP(3) COMMENT 
'create time',
   `date_updated` timestamp(3) NOT NULL DEFAULT CURRENT_TIMESTAMP(3) ON UPDATE 
CURRENT_TIMESTAMP(3) COMMENT 'update time',
   PRIMARY KEY (`id`) USING BTREE
@@ -2110,6 +2114,7 @@ CREATE TABLE `discovery`
     `name`         varchar(255) CHARACTER SET utf8mb4 COLLATE 
utf8mb4_unicode_ci NOT NULL COMMENT 'the discovery name',
     `level`        varchar(64) CHARACTER SET utf8mb4 COLLATE 
utf8mb4_unicode_ci NOT NULL COMMENT '0 selector,1 plugin  2 global',
     `plugin_name`  varchar(255) CHARACTER SET utf8mb4 COLLATE 
utf8mb4_unicode_ci  COMMENT 'the plugin name',
+    `namespace_id` varchar(50) CHARACTER SET utf8mb4 COLLATE 
utf8mb4_unicode_ci NOT NULL COMMENT 'namespace id',
     `type`         varchar(64) CHARACTER SET utf8mb4 COLLATE 
utf8mb4_unicode_ci NOT NULL COMMENT 'local,zookeeper,etcd,consul,nacos',
     `server_list`  varchar(255) CHARACTER SET utf8mb4 COLLATE 
utf8mb4_unicode_ci  COMMENT 'register server url (,)',
     `props`     text CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci COMMENT 
'the discovery pops (json) ',
@@ -2142,6 +2147,7 @@ CREATE TABLE `discovery_upstream`
 (
     `id`           varchar(128) CHARACTER SET utf8mb4 COLLATE 
utf8mb4_unicode_ci NOT NULL COMMENT 'primary key id',
     `discovery_handler_id` varchar(128) CHARACTER SET utf8mb4 COLLATE 
utf8mb4_unicode_ci NOT NULL COMMENT 'the discovery handler id',
+    `namespace_id` varchar(50) CHARACTER SET utf8mb4 COLLATE 
utf8mb4_unicode_ci NOT NULL COMMENT 'namespace id',
     `protocol`     varchar(64) CHARACTER SET utf8mb4 COLLATE 
utf8mb4_unicode_ci  COMMENT 'for http, https, tcp, ws',
     `url`          varchar(64) CHARACTER SET utf8mb4 COLLATE 
utf8mb4_unicode_ci NOT NULL COMMENT 'ip:port',
     `status`      int(0) NOT NULL COMMENT 'type (0, healthy, 1 unhealthy)',
@@ -2166,6 +2172,7 @@ CREATE TABLE `proxy_selector`
     `type`         varchar(64) CHARACTER SET utf8mb4 COLLATE 
utf8mb4_unicode_ci NOT NULL COMMENT 'proxy type for tcp, upd, ws',
     `forward_port` int(0) NOT NULL COMMENT 'the proxy forward port',
     `props`      text CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci COMMENT 
'the other field (json)',
+    `namespace_id` varchar(50) NOT NULL COMMENT 'namespace id',
     `date_created` timestamp(3) NOT NULL DEFAULT CURRENT_TIMESTAMP(3) COMMENT 
'create time',
     `date_updated` timestamp(3) NOT NULL DEFAULT CURRENT_TIMESTAMP(3) ON 
UPDATE CURRENT_TIMESTAMP(3) COMMENT 'update time',
     PRIMARY KEY (`id`) USING BTREE
@@ -2373,18 +2380,4 @@ INSERT INTO `shenyu`.`permission` (`id`, `object_id`, 
`resource_id`, `date_creat
 INSERT INTO `shenyu`.`permission` (`id`, `object_id`, `resource_id`, 
`date_created`, `date_updated`) VALUES ('1792779493541343264', 
'1346358560427216896', '1792749362445840483', '2024-06-25 20:00:00.000', 
'2024-06-25 20:00:00.000');
 INSERT INTO `shenyu`.`permission` (`id`, `object_id`, `resource_id`, 
`date_created`, `date_updated`) VALUES ('1792779493541343265', 
'1346358560427216896', '1792749362445840484', '2024-06-25 20:00:00.000', 
'2024-06-25 20:00:00.000');
 INSERT INTO `shenyu`.`permission` (`id`, `object_id`, `resource_id`, 
`date_created`, `date_updated`) VALUES ('1792779493541343266', 
'1346358560427216896', '1792749362445840485', '2024-06-25 20:00:00.000', 
'2024-06-25 20:00:00.000');
-INSERT INTO `shenyu`.`permission` (`id`, `object_id`, `resource_id`, 
`date_created`, `date_updated`) VALUES ('1792779493541343267', 
'1346358560427216896', '1792749362445840486', '2024-06-25 20:00:00.000', 
'2024-06-25 20:00:00.000');
-
-ALTER TABLE `shenyu`.`selector` ADD COLUMN `namespace_id` varchar(50) NULL 
COMMENT 'namespaceId' AFTER `match_restful`;
-
-ALTER TABLE `shenyu`.`rule` ADD COLUMN `namespace_id` varchar(50) NULL COMMENT 
'namespaceId' AFTER `match_restful`;
-
-ALTER TABLE `shenyu`.`meta_data` ADD COLUMN `namespace_id` varchar(50) NULL 
COMMENT 'namespaceId';
-
-ALTER TABLE `shenyu`.`app_auth` ADD COLUMN `namespace_id` varchar(50) NULL 
COMMENT 'namespaceId' AFTER `enabled`;
-
-ALTER TABLE `shenyu`.`discovery` ADD COLUMN `namespace_id` varchar(50) NULL 
COMMENT 'namespaceId' AFTER `plugin_name`;
-
-ALTER TABLE `shenyu`.`discovery_upstream` ADD COLUMN `namespace_id` 
varchar(50) NULL COMMENT 'namespaceId' AFTER `discovery_handler_id`;
-
-ALTER TABLE `shenyu`.`proxy_selector` ADD COLUMN `namespace_id` varchar(50) 
NULL COMMENT 'namespaceId' AFTER `props`;
\ No newline at end of file
+INSERT INTO `shenyu`.`permission` (`id`, `object_id`, `resource_id`, 
`date_created`, `date_updated`) VALUES ('1792779493541343267', 
'1346358560427216896', '1792749362445840486', '2024-06-25 20:00:00.000', 
'2024-06-25 20:00:00.000');
\ No newline at end of file
diff --git a/db/init/og/create-table.sql b/db/init/og/create-table.sql
index 997b87bfeb..fc98ecc6e2 100644
--- a/db/init/og/create-table.sql
+++ b/db/init/og/create-table.sql
@@ -123,6 +123,7 @@ CREATE TABLE "public"."app_auth" (
   "ext_info" varchar(1024) COLLATE "pg_catalog"."default",
   "open" int2 NOT NULL,
   "enabled" int2 NOT NULL,
+  "namespace_id" varchar(50) COLLATE "pg_catalog"."default" NOT NULL,
   "date_created" timestamp(6) NOT NULL DEFAULT timezone('UTC-8'::text, 
(now())::timestamp(0) without time zone),
   "date_updated" timestamp(6) NOT NULL DEFAULT timezone('UTC-8'::text, 
(now())::timestamp(0) without time zone)
 )
@@ -135,6 +136,7 @@ COMMENT ON COLUMN "public"."app_auth"."phone" IS 'phone 
number when the user app
 COMMENT ON COLUMN "public"."app_auth"."ext_info" IS 'extended parameter json';
 COMMENT ON COLUMN "public"."app_auth"."open" IS 'open auth path or not (0 
close, 1 open) ';
 COMMENT ON COLUMN "public"."app_auth"."enabled" IS 'delete or not (0 close, 1 
open) ';
+COMMENT ON COLUMN "public"."app_auth"."namespace_id" IS 'namespace id';
 COMMENT ON COLUMN "public"."app_auth"."date_created" IS 'create time';
 COMMENT ON COLUMN "public"."app_auth"."date_updated" IS 'update time';
 
@@ -315,6 +317,7 @@ CREATE TABLE "public"."meta_data" (
   "method_name" varchar(255) COLLATE "pg_catalog"."default",
   "parameter_types" varchar(255) COLLATE "pg_catalog"."default",
   "rpc_ext" varchar(512) COLLATE "pg_catalog"."default",
+  "namespace_id" varchar(50) COLLATE "pg_catalog"."default" NOT NULL,
   "date_created" timestamp(6) NOT NULL DEFAULT timezone('UTC-8'::text, 
(now())::timestamp(0) without time zone),
   "date_updated" timestamp(6) NOT NULL DEFAULT timezone('UTC-8'::text, 
(now())::timestamp(0) without time zone),
   "enabled" int2 NOT NULL
@@ -329,6 +332,7 @@ COMMENT ON COLUMN "public"."meta_data"."service_name" IS 
'service name';
 COMMENT ON COLUMN "public"."meta_data"."method_name" IS 'method name';
 COMMENT ON COLUMN "public"."meta_data"."parameter_types" IS 'parameter types 
are provided with multiple parameter types separated by commas';
 COMMENT ON COLUMN "public"."meta_data"."rpc_ext" IS 'rpc extended information, 
json format';
+COMMENT ON COLUMN "public"."meta_data"."namespace_id" IS 'namespace id';
 COMMENT ON COLUMN "public"."meta_data"."date_created" IS 'create time';
 COMMENT ON COLUMN "public"."meta_data"."date_updated" IS 'update time';
 COMMENT ON COLUMN "public"."meta_data"."enabled" IS 'enabled state (0 close, 1 
open) ';
@@ -1876,6 +1880,7 @@ CREATE TABLE "public"."rule" (
   "enabled" int2 NOT NULL,
   "loged" int2 NOT NULL,
   "match_restful" int2 NOT NULL,
+  "namespace_id" varchar(50) COLLATE "pg_catalog"."default" NOT NULL,
   "sort" int4 NOT NULL,
   "handle" varchar(1024) COLLATE "pg_catalog"."default",
   "date_created" timestamp(6) NOT NULL DEFAULT timezone('UTC-8'::text, 
(now())::timestamp(0) without time zone),
@@ -1889,6 +1894,7 @@ COMMENT ON COLUMN "public"."rule"."name" IS 'rule name';
 COMMENT ON COLUMN "public"."rule"."enabled" IS 'whether to open (0 close, 1 
open) ';
 COMMENT ON COLUMN "public"."rule"."loged" IS 'whether to log or not (0 no 
print, 1 print) ';
 COMMENT ON COLUMN "public"."rule"."match_restful" IS 'whether to match 
restful(0 cache, 1 not cache)';
+COMMENT ON COLUMN "public"."rule"."namespace_id" IS 'namespace id';
 COMMENT ON COLUMN "public"."rule"."sort" IS 'sort';
 COMMENT ON COLUMN "public"."rule"."handle" IS 'processing logic (here for 
different plug-ins, there will be different fields to identify different 
processes, all data in JSON format is stored)';
 COMMENT ON COLUMN "public"."rule"."date_created" IS 'create time';
@@ -1942,6 +1948,7 @@ CREATE TABLE "public"."selector" (
   "loged" int2 NOT NULL,
   "continued" int2 NOT NULL,
   "match_restful" int2 NOT NULL,
+  "namespace_id" varchar(50) COLLATE "pg_catalog"."default" NOT NULL,
   "date_created" timestamp(6) NOT NULL DEFAULT timezone('UTC-8'::text, 
(now())::timestamp(0) without time zone),
   "date_updated" timestamp(6) NOT NULL DEFAULT timezone('UTC-8'::text, 
(now())::timestamp(0) without time zone)
 )
@@ -1957,6 +1964,7 @@ COMMENT ON COLUMN "public"."selector"."enabled" IS 
'whether to open (0 close, 1
 COMMENT ON COLUMN "public"."selector"."loged" IS 'whether to print the log (0 
no print, 1 print) ';
 COMMENT ON COLUMN "public"."selector"."continued" IS 'whether to continue 
execution';
 COMMENT ON COLUMN "public"."selector"."match_restful" IS 'whether to match 
restful(0 cache, 1 not cache)';
+COMMENT ON COLUMN "public"."selector"."namespace_id" IS 'namespace id';
 COMMENT ON COLUMN "public"."selector"."date_created" IS 'create time';
 COMMENT ON COLUMN "public"."selector"."date_updated" IS 'update time';
 
@@ -2339,6 +2347,7 @@ CREATE TABLE "public"."discovery" (
     "type" varchar(64) COLLATE "pg_catalog"."default" NOT NULL,
     "server_list" varchar(255) COLLATE "pg_catalog"."default",
     "props" text COLLATE "pg_catalog"."default",
+    "namespace_id" varchar(50) COLLATE "pg_catalog"."default" NOT NULL,
     "date_created" timestamp(6) NOT NULL DEFAULT timezone('UTC-8'::text, 
(now())::timestamp(0) without time zone),
     "date_updated" timestamp(6) NOT NULL DEFAULT timezone('UTC-8'::text, 
(now())::timestamp(0) without time zone)
 )
@@ -2350,6 +2359,7 @@ COMMENT ON COLUMN "public"."discovery"."plugin_name" IS 
'the plugin name';
 COMMENT ON COLUMN "public"."discovery"."type" IS 
'local,zookeeper,etcd,consul,nacos';
 COMMENT ON COLUMN "public"."discovery"."server_list" IS 'register server url 
(,)';
 COMMENT ON COLUMN "public"."discovery"."props" IS 'the discovery pops (json) ';
+COMMENT ON COLUMN "public"."discovery"."namespace_id" IS 'namespace id';
 COMMENT ON COLUMN "public"."discovery"."date_created" IS 'create time';
 COMMENT ON COLUMN "public"."discovery"."date_updated" IS 'update time';
 
@@ -2409,6 +2419,7 @@ CREATE TABLE "public"."proxy_selector"
     "type"         varchar(128) COLLATE "pg_catalog"."default",
     "forward_port" int4 NOT NULL,
     "props"        text COLLATE "pg_catalog"."default",
+    "namespace_id" varchar(50) COLLATE "pg_catalog"."default" NOT NULL,
     "date_created" timestamp(3) NOT NULL DEFAULT CURRENT_TIMESTAMP,
     "date_updated" timestamp(3) NOT NULL DEFAULT CURRENT_TIMESTAMP
 )
@@ -2431,6 +2442,7 @@ CREATE TABLE "public"."discovery_upstream"
 (
     "id"           varchar(128) COLLATE "pg_catalog"."default" NOT NULL,
     "discovery_handler_id" varchar(128) COLLATE "pg_catalog"."default" NOT 
NULL,
+    "namespace_id" varchar(50) COLLATE "pg_catalog"."default" NOT NULL,
     "protocol"    varchar(128) COLLATE "pg_catalog"."default" NOT NULL,
     "url"         varchar(128) COLLATE "pg_catalog"."default",
     "status"      int4  NOT NULL,
@@ -2442,6 +2454,7 @@ CREATE TABLE "public"."discovery_upstream"
 ;
 COMMENT ON COLUMN "public"."discovery_upstream"."id" IS 'primary key id';
 COMMENT ON COLUMN "public"."discovery_upstream"."discovery_handler_id" IS 'the 
discovery handler id';
+COMMENT ON COLUMN "public"."discovery_upstream"."namespace_id" IS 'namespace 
id';
 COMMENT ON COLUMN "public"."discovery_upstream"."protocol" IS 'for http, 
https, tcp, ws';
 COMMENT ON COLUMN "public"."discovery_upstream"."url" IS 'ip:port';
 COMMENT ON COLUMN "public"."discovery_upstream"."status" IS 'type (0, healthy, 
1 unhealthy)';
@@ -2747,27 +2760,3 @@ COMMENT ON COLUMN "public"."scale_history"."action" IS 
'status 1:enable 0:disabl
 COMMENT ON COLUMN "public"."scale_history"."msg" IS 'message';
 COMMENT ON COLUMN "public"."scale_history"."date_created" IS 'create time';
 COMMENT ON COLUMN "public"."scale_history"."date_updated" IS 'update time';
-
-
-ALTER TABLE "public"."selector" ADD COLUMN namespace_id VARCHAR(50) NULL;
-COMMENT ON COLUMN "public"."selector"."namespace_id" IS 'namespaceId';
-
-
-ALTER TABLE "public"."rule" ADD COLUMN namespace_id VARCHAR(50) NULL;
-COMMENT ON COLUMN "public"."rule"."namespace_id" IS 'namespaceId';
-
-ALTER TABLE "public"."meta_data" ADD COLUMN namespace_id VARCHAR(50) NULL;
-COMMENT ON COLUMN "public"."meta_data"."namespace_id" IS 'namespaceId';
-
-ALTER TABLE "public"."app_auth" ADD COLUMN namespace_id VARCHAR(50) NULL;
-COMMENT ON COLUMN "public"."app_auth"."namespace_id" IS 'namespaceId';
-
-ALTER TABLE "public"."discovery" ADD COLUMN namespace_id VARCHAR(50) NULL;
-COMMENT ON COLUMN "public"."discovery"."namespace_id" IS 'namespaceId';
-
-ALTER TABLE "public"."discovery_upstream" ADD COLUMN namespace_id VARCHAR(50) 
NULL;
-COMMENT ON COLUMN "public"."discovery_upstream"."namespace_id" IS 
'namespaceId';
-
-ALTER TABLE "public"."proxy_selector" ADD COLUMN namespace_id VARCHAR(50) NULL;
-COMMENT ON COLUMN "public"."proxy_selector"."namespace_id" IS 'namespaceId';
-
diff --git a/db/init/oracle/schema.sql b/db/init/oracle/schema.sql
index 646d68da1b..cd305ac06b 100644
--- a/db/init/oracle/schema.sql
+++ b/db/init/oracle/schema.sql
@@ -125,6 +125,7 @@ create table selector
     loged        NUMBER(3) not null,
     continued    NUMBER(3) not null,
     match_restful NUMBER(3) not null,
+    namespace_id VARCHAR2(50) not null,
     date_created timestamp(3) default SYSDATE not null,
     date_updated timestamp(3) default SYSDATE not null
 );
@@ -151,6 +152,8 @@ comment on column SELECTOR.continued
   is 'whether to continue execution';
 comment on column SELECTOR.match_restful
   is 'whether to match restful(0 cache, 1 not cache)';
+comment on column SELECTOR.namespace_id
+  is 'namespace id';
 comment on column SELECTOR.date_created
   is 'create time';
 comment on column SELECTOR.date_updated
@@ -195,6 +198,7 @@ create table rule
     enabled       NUMBER(3) not null,
     loged         NUMBER(3) not null,
     match_restful NUMBER(3) not null,
+    namespace_id VARCHAR2(50) not null,
     sort          NUMBER(10) not null,
     handle        VARCHAR2(1024),
     date_created  timestamp(3) default SYSDATE not null,
@@ -215,6 +219,8 @@ comment on column RULE.loged
   is 'whether to log or not (0 not print, 1 print)';
 comment on column RULE.match_restful
   is 'whether to match restful(0 cache, 1 not cache)';
+comment on column RULE.namespace_id
+  is 'namespace id';
 comment on column RULE.sort
   is 'sort';
 comment on column RULE.handle
@@ -264,6 +270,7 @@ create table meta_data
     method_name     VARCHAR2(255),
     parameter_types VARCHAR2(255),
     rpc_ext         VARCHAR2(512),
+    namespace_id VARCHAR2(50) not null,
     date_created    timestamp(3) default SYSDATE not null,
     date_updated    timestamp(3) default SYSDATE not null,
     enabled         NUMBER(3) default '0' not null,
@@ -288,6 +295,8 @@ comment on column META_DATA.parameter_types
   is 'parameter types are provided with multiple parameter types separated by 
commas';
 comment on column META_DATA.rpc_ext
   is 'rpc extended information, json format';
+comment on column META_DATA.namespace_id
+  is 'namespace id';
 comment on column META_DATA.date_created
   is 'create time';
 comment on column META_DATA.date_updated
@@ -483,6 +492,7 @@ create table app_auth
     ext_info     VARCHAR2(1024),
     open         NUMBER(3) not null,
     enabled      NUMBER(3) not null,
+    namespace_id VARCHAR2(50) not null,
     date_created timestamp(3) default SYSDATE not null,
     date_updated timestamp(3) default SYSDATE not null,
     PRIMARY KEY (id)
@@ -504,6 +514,8 @@ comment on column APP_AUTH.open
   is 'open auth path or not (0 not open, 1 open) ';
 comment on column APP_AUTH.enabled
   is 'delete or not (0 close, 1 open) ';
+comment on column APP_AUTH.namespace_id
+  is 'namespace id';
 comment on column APP_AUTH.date_created
   is 'create time';
 comment on column APP_AUTH.date_updated
@@ -2445,6 +2457,7 @@ create table discovery
     name            VARCHAR2(255) not null,
     level            VARCHAR2(64) not null,
     plugin_name      VARCHAR2(255),
+    namespace_id VARCHAR2(50) not null,
     type            VARCHAR2(64) not null,
     server_list      VARCHAR2(255),
     props            CLOB,
@@ -2461,6 +2474,8 @@ comment on column DISCOVERY.level
   is '0 selector,1 plugin  2 global';
 comment on column DISCOVERY.plugin_name
   is 'the plugin name';
+comment on column DISCOVERY.namespace_id
+  is 'namespace id';
 comment on column DISCOVERY.type
   is 'local,zookeeper,etcd,consul,nacos';
 comment on column DISCOVERY.server_list
@@ -2533,6 +2548,7 @@ create table discovery_upstream
 (
     id                VARCHAR2(128) not null,
     discovery_handler_id   VARCHAR2(128) not null,
+    namespace_id VARCHAR2(50) not null,
     protocol            VARCHAR2(64),
     url      VARCHAR2(64) not null,
     status      NUMBER(10) not null,
@@ -2549,6 +2565,8 @@ comment on column DISCOVERY_UPSTREAM.id
   is 'primary key id';
 comment on column DISCOVERY_UPSTREAM.discovery_handler_id
   is 'the discovery handler id';
+comment on column DISCOVERY_UPSTREAM.namespace_id
+  is 'namespace id';
 comment on column DISCOVERY_UPSTREAM.protocol
   is 'for http, https, tcp, ws';
 comment on column DISCOVERY_UPSTREAM.url
@@ -2573,6 +2591,7 @@ create table proxy_selector
     type      VARCHAR2(64) not null,
     forward_port      NUMBER(10) not null,
     props       CLOB,
+    namespace_id VARCHAR2(50) not null,
     date_created      timestamp(3) default SYSDATE not null,
     date_updated      timestamp(3) default SYSDATE not null,
     PRIMARY KEY (id)
@@ -2590,6 +2609,8 @@ comment on column PROXY_SELECTOR.forward_port
   is 'the proxy forward port';
 comment on column PROXY_SELECTOR.props
   is 'the discovery pops (json)';
+comment on column PROXY_SELECTOR.namespace_id
+  is 'namespace id';
 comment on column PROXY_SELECTOR.date_created
   is 'create time';
 comment on column PROXY_SELECTOR.date_updated
@@ -2963,25 +2984,3 @@ comment on column SCALE_HISTORY.date_updated
     is 'update time';
 
 
-ALTER TABLE selector ADD namespace_id VARCHAR2(50) NULL;
-COMMENT ON COLUMN selector.namespace_id IS 'namespaceId';
-
-
-ALTER TABLE rule ADD namespace_id VARCHAR2(50) NULL;
-COMMENT ON COLUMN rule.namespace_id IS 'namespaceId';
-
-ALTER TABLE meta_data ADD namespace_id VARCHAR2(50) NULL;
-COMMENT ON COLUMN meta_data.namespace_id IS 'namespaceId';
-
-ALTER TABLE app_auth ADD namespace_id VARCHAR2(50) NULL;
-COMMENT ON COLUMN app_auth.namespace_id IS 'namespaceId';
-
-ALTER TABLE discovery ADD namespace_id VARCHAR2(50) NULL;
-COMMENT ON COLUMN discovery.namespace_id IS 'namespaceId';
-
-ALTER TABLE discovery_upstream ADD namespace_id VARCHAR2(50) NULL;
-COMMENT ON COLUMN discovery_upstream.namespace_id IS 'namespaceId';
-
-ALTER TABLE proxy_selector ADD namespace_id VARCHAR2(50) NULL;
-COMMENT ON COLUMN proxy_selector.namespace_id IS 'namespaceId';
-
diff --git a/db/init/pg/create-table.sql b/db/init/pg/create-table.sql
index 67ffa5cdd3..fc1dc341ec 100644
--- a/db/init/pg/create-table.sql
+++ b/db/init/pg/create-table.sql
@@ -123,6 +123,7 @@ CREATE TABLE "public"."app_auth" (
   "ext_info" varchar(1024) COLLATE "pg_catalog"."default",
   "open" int2 NOT NULL,
   "enabled" int2 NOT NULL,
+  "namespace_id" varchar(50) COLLATE "pg_catalog"."default" NOT NULL,
   "date_created" timestamp(6) NOT NULL DEFAULT timezone('UTC-8'::text, 
(now())::timestamp(0) without time zone),
   "date_updated" timestamp(6) NOT NULL DEFAULT timezone('UTC-8'::text, 
(now())::timestamp(0) without time zone)
 )
@@ -135,6 +136,7 @@ COMMENT ON COLUMN "public"."app_auth"."phone" IS 'phone 
number when the user app
 COMMENT ON COLUMN "public"."app_auth"."ext_info" IS 'extended parameter json';
 COMMENT ON COLUMN "public"."app_auth"."open" IS 'open auth path or not (0 
close, 1 open) ';
 COMMENT ON COLUMN "public"."app_auth"."enabled" IS 'delete or not (0 close, 1 
open) ';
+COMMENT ON COLUMN "public"."app_auth"."namespace_id" IS 'namespace id';
 COMMENT ON COLUMN "public"."app_auth"."date_created" IS 'create time';
 COMMENT ON COLUMN "public"."app_auth"."date_updated" IS 'update time';
 
@@ -315,6 +317,7 @@ CREATE TABLE "public"."meta_data" (
   "method_name" varchar(255) COLLATE "pg_catalog"."default",
   "parameter_types" varchar(255) COLLATE "pg_catalog"."default",
   "rpc_ext" varchar(512) COLLATE "pg_catalog"."default",
+  "namespace_id" varchar(50) COLLATE "pg_catalog"."default" NOT NULL,
   "date_created" timestamp(6) NOT NULL DEFAULT timezone('UTC-8'::text, 
(now())::timestamp(0) without time zone),
   "date_updated" timestamp(6) NOT NULL DEFAULT timezone('UTC-8'::text, 
(now())::timestamp(0) without time zone),
   "enabled" int2 NOT NULL
@@ -329,6 +332,7 @@ COMMENT ON COLUMN "public"."meta_data"."service_name" IS 
'service name';
 COMMENT ON COLUMN "public"."meta_data"."method_name" IS 'method name';
 COMMENT ON COLUMN "public"."meta_data"."parameter_types" IS 'parameter types 
are provided with multiple parameter types separated by commas';
 COMMENT ON COLUMN "public"."meta_data"."rpc_ext" IS 'rpc extended information, 
json format';
+COMMENT ON COLUMN "public"."meta_data"."namespace_id" IS 'namespace id';
 COMMENT ON COLUMN "public"."meta_data"."date_created" IS 'create time';
 COMMENT ON COLUMN "public"."meta_data"."date_updated" IS 'update time';
 COMMENT ON COLUMN "public"."meta_data"."enabled" IS 'enabled state (0 close, 1 
open) ';
@@ -2003,6 +2007,7 @@ CREATE TABLE "public"."rule" (
   "enabled" int2 NOT NULL,
   "loged" int2 NOT NULL,
   "match_restful" int2 NOT NULL,
+  "namespace_id" varchar(50) COLLATE "pg_catalog"."default" NOT NULL,
   "sort" int4 NOT NULL,
   "handle" varchar(1024) COLLATE "pg_catalog"."default",
   "date_created" timestamp(6) NOT NULL DEFAULT timezone('UTC-8'::text, 
(now())::timestamp(0) without time zone),
@@ -2016,6 +2021,7 @@ COMMENT ON COLUMN "public"."rule"."name" IS 'rule name';
 COMMENT ON COLUMN "public"."rule"."enabled" IS 'whether to open (0 close, 1 
open) ';
 COMMENT ON COLUMN "public"."rule"."loged" IS 'whether to log or not (0 no 
print, 1 print) ';
 COMMENT ON COLUMN "public"."rule"."match_restful" IS 'whether to match 
restful(0 cache, 1 not cache)';
+COMMENT ON COLUMN "public"."rule"."namespace_id" IS 'namespace id';
 COMMENT ON COLUMN "public"."rule"."sort" IS 'sort';
 COMMENT ON COLUMN "public"."rule"."handle" IS 'processing logic (here for 
different plug-ins, there will be different fields to identify different 
processes, all data in JSON format is stored)';
 COMMENT ON COLUMN "public"."rule"."date_created" IS 'create time';
@@ -2069,6 +2075,7 @@ CREATE TABLE "public"."selector" (
   "loged" int2 NOT NULL,
   "continued" int2 NOT NULL,
   "match_restful" int2 NOT NULL,
+  "namespace_id" varchar(50) COLLATE "pg_catalog"."default" NOT NULL,
   "date_created" timestamp(6) NOT NULL DEFAULT timezone('UTC-8'::text, 
(now())::timestamp(0) without time zone),
   "date_updated" timestamp(6) NOT NULL DEFAULT timezone('UTC-8'::text, 
(now())::timestamp(0) without time zone)
 )
@@ -2084,6 +2091,7 @@ COMMENT ON COLUMN "public"."selector"."enabled" IS 
'whether to open (0 close, 1
 COMMENT ON COLUMN "public"."selector"."loged" IS 'whether to print the log (0 
no print, 1 print) ';
 COMMENT ON COLUMN "public"."selector"."continued" IS 'whether to continue 
execution';
 COMMENT ON COLUMN "public"."selector"."match_restful" IS 'whether to match 
restful(0 cache, 1 not cache)';
+COMMENT ON COLUMN "public"."selector"."namespace_id" IS 'namespace id';
 COMMENT ON COLUMN "public"."selector"."date_created" IS 'create time';
 COMMENT ON COLUMN "public"."selector"."date_updated" IS 'update time';
 
@@ -2463,6 +2471,7 @@ CREATE TABLE "public"."discovery" (
     "name" varchar(255) COLLATE "pg_catalog"."default" NOT NULL,
     "level" varchar(64) COLLATE "pg_catalog"."default" NOT NULL,
     "plugin_name" varchar(255) COLLATE "pg_catalog"."default",
+    "namespace_id" varchar(50) COLLATE "pg_catalog"."default" NOT NULL,
     "type" varchar(64) COLLATE "pg_catalog"."default" NOT NULL,
     "server_list" varchar(255) COLLATE "pg_catalog"."default",
     "props" text COLLATE "pg_catalog"."default",
@@ -2474,6 +2483,7 @@ COMMENT ON COLUMN "public"."discovery"."id" IS 'primary 
key id';
 COMMENT ON COLUMN "public"."discovery"."name" IS 'the discovery name';
 COMMENT ON COLUMN "public"."discovery"."level" IS '0 selector,1 plugin  2 
global';
 COMMENT ON COLUMN "public"."discovery"."plugin_name" IS 'the plugin name';
+COMMENT ON COLUMN "public"."discovery"."namespace_id" IS 'the namespace id';
 COMMENT ON COLUMN "public"."discovery"."type" IS 
'local,zookeeper,etcd,consul,nacos';
 COMMENT ON COLUMN "public"."discovery"."server_list" IS 'register server url 
(,)';
 COMMENT ON COLUMN "public"."discovery"."props" IS 'the discovery pops (json) ';
@@ -2536,6 +2546,7 @@ CREATE TABLE "public"."proxy_selector"
     "type"         varchar(128) COLLATE "pg_catalog"."default",
     "forward_port" int4 NOT NULL,
     "props"        text COLLATE "pg_catalog"."default",
+    "namespace_id" varchar(50) COLLATE "pg_catalog"."default" NOT NULL,
     "date_created" timestamp(3) NOT NULL DEFAULT CURRENT_TIMESTAMP,
     "date_updated" timestamp(3) NOT NULL DEFAULT CURRENT_TIMESTAMP
 )
@@ -2545,6 +2556,8 @@ COMMENT ON COLUMN "public"."proxy_selector"."name" IS 
'the proxy_selector name';
 COMMENT ON COLUMN "public"."proxy_selector"."plugin_name" IS 'the plugin name';
 COMMENT ON COLUMN "public"."proxy_selector"."type" IS 'the type ';
 COMMENT ON COLUMN "public"."proxy_selector"."forward_port" IS 'the forward 
port';
+COMMENT ON COLUMN "public"."proxy_selector"."props" IS 'the other field 
(json)';
+COMMENT ON COLUMN "public"."proxy_selector"."namespace_id" IS 'the namespace 
id';
 COMMENT ON COLUMN "public"."proxy_selector"."date_created" IS 'create time';
 COMMENT ON COLUMN "public"."proxy_selector"."date_updated" IS 'update time';
 
@@ -2556,6 +2569,7 @@ CREATE TABLE "public"."discovery_upstream"
 (
     "id"           varchar(128) COLLATE "pg_catalog"."default" NOT NULL,
     "discovery_handler_id" varchar(128) COLLATE "pg_catalog"."default" NOT 
NULL,
+    "namespace_id" varchar(50) COLLATE "pg_catalog"."default" NOT NULL,
     "protocol"    varchar(128) COLLATE "pg_catalog"."default" NOT NULL,
     "url"         varchar(128) COLLATE "pg_catalog"."default",
     "status"      int4  NOT NULL,
@@ -2567,6 +2581,7 @@ CREATE TABLE "public"."discovery_upstream"
 ;
 COMMENT ON COLUMN "public"."discovery_upstream"."id" IS 'primary key id';
 COMMENT ON COLUMN "public"."discovery_upstream"."discovery_handler_id" IS 'the 
discovery handler id';
+COMMENT ON COLUMN "public"."discovery_upstream"."namespace_id" IS 'the 
namespace id';
 COMMENT ON COLUMN "public"."discovery_upstream"."protocol" IS 'for http, 
https, tcp, ws';
 COMMENT ON COLUMN "public"."discovery_upstream"."url" IS 'ip:port';
 COMMENT ON COLUMN "public"."discovery_upstream"."status" IS 'type (0, healthy, 
1 unhealthy)';
@@ -2866,24 +2881,3 @@ COMMENT ON COLUMN "public"."scale_history"."msg" IS 
'message';
 COMMENT ON COLUMN "public"."scale_history"."date_created" IS 'create time';
 COMMENT ON COLUMN "public"."scale_history"."date_updated" IS 'update time';
 
-
-ALTER TABLE "public"."selector" ADD COLUMN namespace_id VARCHAR(50) NULL;
-COMMENT ON COLUMN "public"."selector"."namespace_id" IS 'namespaceId';
-
-ALTER TABLE "public"."rule" ADD COLUMN namespace_id VARCHAR(50) NULL;
-COMMENT ON COLUMN "public"."rule"."namespace_id" IS 'namespaceId';
-
-ALTER TABLE "public"."meta_data" ADD COLUMN namespace_id VARCHAR(50) NULL;
-COMMENT ON COLUMN "public"."meta_data"."namespace_id" IS 'namespaceId';
-
-ALTER TABLE "public"."app_auth" ADD COLUMN namespace_id VARCHAR(50) NULL;
-COMMENT ON COLUMN "public"."app_auth"."namespace_id" IS 'namespaceId';
-
-ALTER TABLE "public"."discovery" ADD COLUMN namespace_id VARCHAR(50) NULL;
-COMMENT ON COLUMN "public"."discovery"."namespace_id" IS 'namespaceId';
-
-ALTER TABLE "public"."discovery_upstream" ADD COLUMN namespace_id VARCHAR(50) 
NULL;
-COMMENT ON COLUMN "public"."discovery_upstream"."namespace_id" IS 
'namespaceId';
-
-ALTER TABLE "public"."proxy_selector" ADD COLUMN namespace_id VARCHAR(50) NULL;
-COMMENT ON COLUMN "public"."proxy_selector"."namespace_id" IS 'namespaceId';
diff --git a/db/upgrade/2.6.1-upgrade-2.7.0-mysql.sql 
b/db/upgrade/2.6.1-upgrade-2.7.0-mysql.sql
index b064c8211c..b99f1ac865 100755
--- a/db/upgrade/2.6.1-upgrade-2.7.0-mysql.sql
+++ b/db/upgrade/2.6.1-upgrade-2.7.0-mysql.sql
@@ -174,22 +174,45 @@ INSERT INTO `shenyu`.`permission` (`id`, `object_id`, 
`resource_id`, `date_creat
 ALTER TABLE `shenyu`.`dashboard_user` ADD COLUMN `client_id` varchar(32) NULL 
DEFAULT NULL COMMENT 'client id';
 
 
-ALTER TABLE `shenyu`.`selector` ADD COLUMN `namespace_id` varchar(50) NULL 
COMMENT 'namespaceId' AFTER `match_restful`;
+ALTER TABLE `shenyu`.`selector` ADD COLUMN `namespace_id` varchar(50) NOT NULL 
COMMENT 'namespaceId' AFTER `match_restful`;
+
+ALTER TABLE `shenyu`.`rule` ADD COLUMN `namespace_id` varchar(50) NOT NULL 
COMMENT 'namespaceId' AFTER `match_restful`;
+
+ALTER TABLE `shenyu`.`meta_data` ADD COLUMN `namespace_id` varchar(50) NOT 
NULL COMMENT 'namespaceId' AFTER `rpc_ext`;
+
+ALTER TABLE `shenyu`.`app_auth` ADD COLUMN `namespace_id` varchar(50) NOT NULL 
COMMENT 'namespaceId' AFTER `enabled`;
+
+ALTER TABLE `shenyu`.`discovery` ADD COLUMN `namespace_id` varchar(50) NOT 
NULL COMMENT 'namespaceId' AFTER `plugin_name`;
+
+ALTER TABLE `shenyu`.`discovery_upstream` ADD COLUMN `namespace_id` 
varchar(50) NOT NULL COMMENT 'namespaceId' AFTER `discovery_handler_id`;
+
+ALTER TABLE `shenyu`.`proxy_selector` ADD COLUMN `namespace_id` varchar(50) 
NOT NULL COMMENT 'namespaceId' AFTER `props`;
 
 UPDATE selector
 SET namespace_id = '649330b6-c2d7-4edc-be8e-8a54df9eb385'
 WHERE namespace_id IS NULL;
 
+UPDATE rule
+SET namespace_id = '649330b6-c2d7-4edc-be8e-8a54df9eb385'
+WHERE namespace_id IS NULL;
+
+UPDATE meta_data
+SET namespace_id = '649330b6-c2d7-4edc-be8e-8a54df9eb385'
+WHERE namespace_id IS NULL;
 
-ALTER TABLE `shenyu`.`rule` ADD COLUMN `namespace_id` varchar(50) NULL COMMENT 
'namespaceId' AFTER `match_restful`;
+UPDATE app_auth
+SET namespace_id = '649330b6-c2d7-4edc-be8e-8a54df9eb385'
+WHERE namespace_id IS NULL;
 
-UPDATE rule
+UPDATE discovery
 SET namespace_id = '649330b6-c2d7-4edc-be8e-8a54df9eb385'
 WHERE namespace_id IS NULL;
 
-ALTER TABLE `shenyu`.`meta_data` ADD COLUMN `namespace_id` varchar(50) NULL 
COMMENT 'namespaceId';
+UPDATE discovery_upstream
+SET namespace_id = '649330b6-c2d7-4edc-be8e-8a54df9eb385'
+WHERE namespace_id IS NULL;
 
-UPDATE meta_data
+UPDATE proxy_selector
 SET namespace_id = '649330b6-c2d7-4edc-be8e-8a54df9eb385'
 WHERE namespace_id IS NULL;
 
@@ -240,31 +263,5 @@ CREATE TABLE IF NOT EXISTS `scale_history`
     ) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_unicode_ci 
ROW_FORMAT = Dynamic;
 
 
-ALTER TABLE `shenyu`.`selector` ADD COLUMN `namespace_id` varchar(50) NULL 
COMMENT 'namespaceId' AFTER `match_restful`;
-
-ALTER TABLE `shenyu`.`app_auth` ADD COLUMN `namespace_id` varchar(50) NULL 
COMMENT 'namespaceId' AFTER `enabled`;
-
-UPDATE app_auth
-SET namespace_id = '649330b6-c2d7-4edc-be8e-8a54df9eb385'
-WHERE namespace_id IS NULL;
-ALTER TABLE `shenyu`.`discovery` ADD COLUMN `namespace_id` varchar(50) NULL 
COMMENT 'namespaceId' AFTER `plugin_name`;
-
-UPDATE discovery
-SET namespace_id = '649330b6-c2d7-4edc-be8e-8a54df9eb385'
-WHERE namespace_id IS NULL;
-
-ALTER TABLE `shenyu`.`discovery_upstream` ADD COLUMN `namespace_id` 
varchar(50) NULL COMMENT 'namespaceId' AFTER `discovery_handler_id`;
-
-UPDATE discovery_upstream
-SET namespace_id = '649330b6-c2d7-4edc-be8e-8a54df9eb385'
-WHERE namespace_id IS NULL;
-
-
-ALTER TABLE `shenyu`.`proxy_selector` ADD COLUMN `namespace_id` varchar(50) 
NULL COMMENT 'namespaceId' AFTER `props`;
-
-UPDATE proxy_selector
-SET namespace_id = '649330b6-c2d7-4edc-be8e-8a54df9eb385'
-WHERE namespace_id IS NULL;
-
 
 
diff --git a/db/upgrade/2.6.1-upgrade-2.7.0-og.sql 
b/db/upgrade/2.6.1-upgrade-2.7.0-og.sql
index b83fcae76c..abd6489a46 100644
--- a/db/upgrade/2.6.1-upgrade-2.7.0-og.sql
+++ b/db/upgrade/2.6.1-upgrade-2.7.0-og.sql
@@ -195,21 +195,41 @@ INSERT INTO "public"."permission" VALUES 
('1792779493541343267', '13463585604272
 ALTER TABLE "public"."dashboard_user" ADD COLUMN client_id VARCHAR(32) NULL;
 COMMENT ON COLUMN "public"."dashboard_user".client_id IS 'client id';
 
-ALTER TABLE "public"."selector" ADD COLUMN namespace_id VARCHAR(50) NULL;
+ALTER TABLE "public"."selector" ADD COLUMN namespace_id VARCHAR(50) NOT NULL;
 COMMENT ON COLUMN "public"."selector"."namespace_id" IS 'namespaceId';
 
-UPDATE "public"."selector" SET namespace_id = 
'649330b6-c2d7-4edc-be8e-8a54df9eb385' WHERE namespace_id IS NULL;
-
-ALTER TABLE "public"."rule" ADD COLUMN namespace_id VARCHAR(50) NULL;
+ALTER TABLE "public"."rule" ADD COLUMN namespace_id VARCHAR(50) NOt NULL;
 COMMENT ON COLUMN "public"."rule"."namespace_id" IS 'namespaceId';
 
-UPDATE "public"."rule" SET namespace_id = 
'649330b6-c2d7-4edc-be8e-8a54df9eb385' WHERE namespace_id IS NULL;
-
-ALTER TABLE "public"."meta_data" ADD COLUMN namespace_id VARCHAR(50) NULL;
+ALTER TABLE "public"."meta_data" ADD COLUMN namespace_id VARCHAR(50) NOT NULL;
 COMMENT ON COLUMN "public"."meta_data"."namespace_id" IS 'namespaceId';
 
+ALTER TABLE "public"."app_auth" ADD COLUMN namespace_id VARCHAR(50) NOt NULL;
+COMMENT ON COLUMN "public"."app_auth"."namespace_id" IS 'namespaceId';
+
+ALTER TABLE "public"."discovery" ADD COLUMN namespace_id VARCHAR(50) NOT NULL;
+COMMENT ON COLUMN "public"."discovery"."namespace_id" IS 'namespaceId';
+
+ALTER TABLE "public"."discovery_upstream" ADD COLUMN namespace_id VARCHAR(50) 
NOT NULL;
+COMMENT ON COLUMN "public"."discovery_upstream"."namespace_id" IS 
'namespaceId';
+
+ALTER TABLE "public"."proxy_selector" ADD COLUMN namespace_id VARCHAR(50) NOT 
NULL;
+COMMENT ON COLUMN "public"."proxy_selector"."namespace_id" IS 'namespaceId';
+
+UPDATE "public"."selector" SET namespace_id = 
'649330b6-c2d7-4edc-be8e-8a54df9eb385' WHERE namespace_id IS NULL;
+
+UPDATE "public"."rule" SET namespace_id = 
'649330b6-c2d7-4edc-be8e-8a54df9eb385' WHERE namespace_id IS NULL;
+
 UPDATE "public"."meta_data" SET namespace_id = 
'649330b6-c2d7-4edc-be8e-8a54df9eb385' WHERE namespace_id IS NULL;
 
+UPDATE "public"."app_auth" SET namespace_id = 
'649330b6-c2d7-4edc-be8e-8a54df9eb385' WHERE namespace_id IS NULL;
+
+UPDATE "public"."discovery" SET namespace_id = 
'649330b6-c2d7-4edc-be8e-8a54df9eb385' WHERE namespace_id IS NULL;
+
+UPDATE "public"."discovery_upstream" SET namespace_id = 
'649330b6-c2d7-4edc-be8e-8a54df9eb385' WHERE namespace_id IS NULL;
+
+UPDATE "public"."proxy_selector" SET namespace_id = 
'649330b6-c2d7-4edc-be8e-8a54df9eb385' WHERE namespace_id IS NULL;
+
 -- ----------------------------
 -- Table structure for scale
 -- ----------------------------
@@ -280,24 +300,3 @@ COMMENT ON COLUMN "public"."scale_history"."msg" IS 
'message';
 COMMENT ON COLUMN "public"."scale_history"."date_created" IS 'create time';
 COMMENT ON COLUMN "public"."scale_history"."date_updated" IS 'update time';
 
-ALTER TABLE "public"."app_auth" ADD COLUMN namespace_id VARCHAR(50) NULL;
-COMMENT ON COLUMN "public"."app_auth"."namespace_id" IS 'namespaceId';
-
-UPDATE "public"."app_auth" SET namespace_id = 
'649330b6-c2d7-4edc-be8e-8a54df9eb385' WHERE namespace_id IS NULL;
-
-
-
-ALTER TABLE "public"."discovery" ADD COLUMN namespace_id VARCHAR(50) NULL;
-COMMENT ON COLUMN "public"."discovery"."namespace_id" IS 'namespaceId';
-
-UPDATE "public"."discovery" SET namespace_id = 
'649330b6-c2d7-4edc-be8e-8a54df9eb385' WHERE namespace_id IS NULL;
-
-ALTER TABLE "public"."discovery_upstream" ADD COLUMN namespace_id VARCHAR(50) 
NULL;
-COMMENT ON COLUMN "public"."discovery_upstream"."namespace_id" IS 
'namespaceId';
-
-UPDATE "public"."discovery_upstream" SET namespace_id = 
'649330b6-c2d7-4edc-be8e-8a54df9eb385' WHERE namespace_id IS NULL;
-
-ALTER TABLE "public"."proxy_selector" ADD COLUMN namespace_id VARCHAR(50) NULL;
-COMMENT ON COLUMN "public"."proxy_selector"."namespace_id" IS 'namespaceId';
-
-UPDATE "public"."proxy_selector" SET namespace_id = 
'649330b6-c2d7-4edc-be8e-8a54df9eb385' WHERE namespace_id IS NULL;
\ No newline at end of file
diff --git a/db/upgrade/2.6.1-upgrade-2.7.0-oracle.sql 
b/db/upgrade/2.6.1-upgrade-2.7.0-oracle.sql
index e2745c9dfc..621280dd1e 100755
--- a/db/upgrade/2.6.1-upgrade-2.7.0-oracle.sql
+++ b/db/upgrade/2.6.1-upgrade-2.7.0-oracle.sql
@@ -228,21 +228,41 @@ INSERT /*+ IGNORE_ROW_ON_DUPKEY_INDEX (permission(id)) */ 
INTO permission (id, o
 ALTER TABLE dashboard_user ADD client_id VARCHAR(32) NULL;
 COMMENT ON COLUMN dashboard_user.client_id IS 'client id';
 
-ALTER TABLE selector ADD namespace_id VARCHAR2(50) NULL;
+ALTER TABLE selector ADD namespace_id VARCHAR2(50) NOT NULL;
 COMMENT ON COLUMN selector.namespace_id IS 'namespaceId';
 
-UPDATE selector SET namespace_id = '649330b6-c2d7-4edc-be8e-8a54df9eb385' 
WHERE namespace_id IS NULL;
-
-ALTER TABLE rule ADD namespace_id VARCHAR2(50) NULL;
+ALTER TABLE rule ADD namespace_id VARCHAR2(50) NOT NULL;
 COMMENT ON COLUMN rule.namespace_id IS 'namespaceId';
 
-UPDATE rule SET namespace_id = '649330b6-c2d7-4edc-be8e-8a54df9eb385' WHERE 
namespace_id IS NULL;
-
-ALTER TABLE meta_data ADD namespace_id VARCHAR2(50) NULL;
+ALTER TABLE meta_data ADD namespace_id VARCHAR2(50) NOT NULL;
 COMMENT ON COLUMN meta_data.namespace_id IS 'namespaceId';
 
+ALTER TABLE app_auth ADD namespace_id VARCHAR2(50) NOT NULL;
+COMMENT ON COLUMN app_auth.namespace_id IS 'namespaceId';
+
+ALTER TABLE discovery ADD namespace_id VARCHAR2(50) NOT NULL;
+COMMENT ON COLUMN discovery.namespace_id IS 'namespaceId';
+
+ALTER TABLE discovery_upstream ADD namespace_id VARCHAR2(50) NOT NULL;
+COMMENT ON COLUMN discovery_upstream.namespace_id IS 'namespaceId';
+
+ALTER TABLE proxy_selector ADD namespace_id VARCHAR2(50) NOT NULL;
+COMMENT ON COLUMN proxy_selector.namespace_id IS 'namespaceId';
+
+UPDATE selector SET namespace_id = '649330b6-c2d7-4edc-be8e-8a54df9eb385' 
WHERE namespace_id IS NULL;
+
+UPDATE rule SET namespace_id = '649330b6-c2d7-4edc-be8e-8a54df9eb385' WHERE 
namespace_id IS NULL;
+
 UPDATE meta_data SET namespace_id = '649330b6-c2d7-4edc-be8e-8a54df9eb385' 
WHERE namespace_id IS NULL;
 
+UPDATE app_auth SET namespace_id = '649330b6-c2d7-4edc-be8e-8a54df9eb385' 
WHERE namespace_id IS NULL;
+
+UPDATE discovery SET namespace_id = '649330b6-c2d7-4edc-be8e-8a54df9eb385' 
WHERE namespace_id IS NULL;
+
+UPDATE discovery_upstream SET namespace_id = 
'649330b6-c2d7-4edc-be8e-8a54df9eb385' WHERE namespace_id IS NULL;
+
+UPDATE proxy_selector SET namespace_id = 
'649330b6-c2d7-4edc-be8e-8a54df9eb385' WHERE namespace_id IS NULL;
+
 -- ----------------------------
 -- Table structure for scale
 -- ----------------------------
@@ -337,23 +357,3 @@ comment on column SCALE_HISTORY.date_created
 comment on column SCALE_HISTORY.date_updated
     is 'update time';
 
-ALTER TABLE app_auth ADD namespace_id VARCHAR2(50) NULL;
-COMMENT ON COLUMN app_auth.namespace_id IS 'namespaceId';
-
-UPDATE app_auth SET namespace_id = '649330b6-c2d7-4edc-be8e-8a54df9eb385' 
WHERE namespace_id IS NULL;
-
-
-ALTER TABLE discovery ADD namespace_id VARCHAR2(50) NULL;
-COMMENT ON COLUMN discovery.namespace_id IS 'namespaceId';
-
-UPDATE discovery SET namespace_id = '649330b6-c2d7-4edc-be8e-8a54df9eb385' 
WHERE namespace_id IS NULL;
-
-ALTER TABLE discovery_upstream ADD namespace_id VARCHAR2(50) NULL;
-COMMENT ON COLUMN discovery_upstream.namespace_id IS 'namespaceId';
-
-UPDATE discovery_upstream SET namespace_id = 
'649330b6-c2d7-4edc-be8e-8a54df9eb385' WHERE namespace_id IS NULL;
-
-ALTER TABLE proxy_selector ADD namespace_id VARCHAR2(50) NULL;
-COMMENT ON COLUMN proxy_selector.namespace_id IS 'namespaceId';
-
-UPDATE proxy_selector SET namespace_id = 
'649330b6-c2d7-4edc-be8e-8a54df9eb385' WHERE namespace_id IS NULL;
\ No newline at end of file
diff --git a/db/upgrade/2.6.1-upgrade-2.7.0-pg.sql 
b/db/upgrade/2.6.1-upgrade-2.7.0-pg.sql
index 2371a4267b..a35a0b740f 100755
--- a/db/upgrade/2.6.1-upgrade-2.7.0-pg.sql
+++ b/db/upgrade/2.6.1-upgrade-2.7.0-pg.sql
@@ -194,21 +194,41 @@ INSERT INTO "public"."permission" VALUES 
('1792779493541343267', '13463585604272
 ALTER TABLE "public"."dashboard_user" ADD COLUMN client_id VARCHAR(32) NULL;
 COMMENT ON COLUMN "public"."dashboard_user".client_id IS 'client id';
 
-ALTER TABLE "public"."selector" ADD COLUMN namespace_id VARCHAR(50) NULL;
+ALTER TABLE "public"."selector" ADD COLUMN namespace_id VARCHAR(50) NOT NULL;
 COMMENT ON COLUMN "public"."selector"."namespace_id" IS 'namespaceId';
 
-UPDATE "public"."selector" SET namespace_id = 
'649330b6-c2d7-4edc-be8e-8a54df9eb385' WHERE namespace_id IS NULL;
-
-ALTER TABLE "public"."rule" ADD COLUMN namespace_id VARCHAR(50) NULL;
+ALTER TABLE "public"."rule" ADD COLUMN namespace_id VARCHAR(50) NOT NULL;
 COMMENT ON COLUMN "public"."rule"."namespace_id" IS 'namespaceId';
 
-UPDATE "public"."rule" SET namespace_id = 
'649330b6-c2d7-4edc-be8e-8a54df9eb385' WHERE namespace_id IS NULL;
-
-ALTER TABLE "public"."meta_data" ADD COLUMN namespace_id VARCHAR(50) NULL;
+ALTER TABLE "public"."meta_data" ADD COLUMN namespace_id VARCHAR(50) NOT NULL;
 COMMENT ON COLUMN "public"."meta_data"."namespace_id" IS 'namespaceId';
 
+ALTER TABLE "public"."app_auth" ADD COLUMN namespace_id VARCHAR(50) NOT NULL;
+COMMENT ON COLUMN "public"."app_auth"."namespace_id" IS 'namespaceId';
+
+ALTER TABLE "public"."discovery" ADD COLUMN namespace_id VARCHAR(50) NOT NULL;
+COMMENT ON COLUMN "public"."discovery"."namespace_id" IS 'namespaceId';
+
+ALTER TABLE "public"."discovery_upstream" ADD COLUMN namespace_id VARCHAR(50) 
NOT NULL;
+COMMENT ON COLUMN "public"."discovery_upstream"."namespace_id" IS 
'namespaceId';
+
+ALTER TABLE "public"."proxy_selector" ADD COLUMN namespace_id VARCHAR(50) NOT 
NULL;
+COMMENT ON COLUMN "public"."proxy_selector"."namespace_id" IS 'namespaceId';
+
+UPDATE "public"."selector" SET namespace_id = 
'649330b6-c2d7-4edc-be8e-8a54df9eb385' WHERE namespace_id IS NULL;
+
+UPDATE "public"."rule" SET namespace_id = 
'649330b6-c2d7-4edc-be8e-8a54df9eb385' WHERE namespace_id IS NULL;
+
 UPDATE "public"."meta_data" SET namespace_id = 
'649330b6-c2d7-4edc-be8e-8a54df9eb385' WHERE namespace_id IS NULL;
 
+UPDATE "public"."app_auth" SET namespace_id = 
'649330b6-c2d7-4edc-be8e-8a54df9eb385' WHERE namespace_id IS NULL;
+
+UPDATE "public"."discovery" SET namespace_id = 
'649330b6-c2d7-4edc-be8e-8a54df9eb385' WHERE namespace_id IS NULL;
+
+UPDATE "public"."discovery_upstream" SET namespace_id = 
'649330b6-c2d7-4edc-be8e-8a54df9eb385' WHERE namespace_id IS NULL;
+
+UPDATE "public"."proxy_selector" SET namespace_id = 
'649330b6-c2d7-4edc-be8e-8a54df9eb385' WHERE namespace_id IS NULL;
+
 -- ----------------------------
 -- Table structure for scale
 -- ----------------------------
@@ -278,25 +298,3 @@ COMMENT ON COLUMN "public"."scale_history"."action" IS 
'status 1:enable 0:disabl
 COMMENT ON COLUMN "public"."scale_history"."msg" IS 'message';
 COMMENT ON COLUMN "public"."scale_history"."date_created" IS 'create time';
 COMMENT ON COLUMN "public"."scale_history"."date_updated" IS 'update time';
-
-ALTER TABLE "public"."app_auth" ADD COLUMN namespace_id VARCHAR(50) NULL;
-COMMENT ON COLUMN "public"."app_auth"."namespace_id" IS 'namespaceId';
-
-UPDATE "public"."app_auth" SET namespace_id = 
'649330b6-c2d7-4edc-be8e-8a54df9eb385' WHERE namespace_id IS NULL;
-
-
-
-ALTER TABLE "public"."discovery" ADD COLUMN namespace_id VARCHAR(50) NULL;
-COMMENT ON COLUMN "public"."discovery"."namespace_id" IS 'namespaceId';
-
-UPDATE "public"."discovery" SET namespace_id = 
'649330b6-c2d7-4edc-be8e-8a54df9eb385' WHERE namespace_id IS NULL;
-
-ALTER TABLE "public"."discovery_upstream" ADD COLUMN namespace_id VARCHAR(50) 
NULL;
-COMMENT ON COLUMN "public"."discovery_upstream"."namespace_id" IS 
'namespaceId';
-
-UPDATE "public"."discovery_upstream" SET namespace_id = 
'649330b6-c2d7-4edc-be8e-8a54df9eb385' WHERE namespace_id IS NULL;
-
-ALTER TABLE "public"."proxy_selector" ADD COLUMN namespace_id VARCHAR(50) NULL;
-COMMENT ON COLUMN "public"."proxy_selector"."namespace_id" IS 'namespaceId';
-
-UPDATE "public"."proxy_selector" SET namespace_id = 
'649330b6-c2d7-4edc-be8e-8a54df9eb385' WHERE namespace_id IS NULL;
\ No newline at end of file
diff --git 
a/shenyu-admin-listener/shenyu-admin-listener-api/src/main/java/org/apache/shenyu/admin/service/SyncDataService.java
 
b/shenyu-admin-listener/shenyu-admin-listener-api/src/main/java/org/apache/shenyu/admin/service/SyncDataService.java
index f100104d44..bee6babf51 100644
--- 
a/shenyu-admin-listener/shenyu-admin-listener-api/src/main/java/org/apache/shenyu/admin/service/SyncDataService.java
+++ 
b/shenyu-admin-listener/shenyu-admin-listener-api/src/main/java/org/apache/shenyu/admin/service/SyncDataService.java
@@ -39,5 +39,4 @@ public interface SyncDataService {
      * @return the boolean
      */
     boolean syncPluginData(String id);
-
 }
diff --git 
a/shenyu-admin/src/main/java/org/apache/shenyu/admin/service/register/FallbackShenyuClientRegisterService.java
 
b/shenyu-admin/src/main/java/org/apache/shenyu/admin/service/register/FallbackShenyuClientRegisterService.java
index 328faefca9..c125a30362 100644
--- 
a/shenyu-admin/src/main/java/org/apache/shenyu/admin/service/register/FallbackShenyuClientRegisterService.java
+++ 
b/shenyu-admin/src/main/java/org/apache/shenyu/admin/service/register/FallbackShenyuClientRegisterService.java
@@ -66,7 +66,7 @@ public abstract class FallbackShenyuClientRegisterService 
implements ShenyuClien
             result = this.doRegisterURI(selectorName, uriList);
             LOG.info("Register success: {},{}", selectorName, uriList);
         } catch (Exception ex) {
-            LOG.error("Register exception: cause:", ex);
+            LOG.error("Register exception: cause: {}", ex.getMessage());
             result = "";
             this.addFallback(key, new FallbackHolder(selectorName, uriList));
         }
diff --git a/shenyu-admin/src/main/resources/mappers/app-auth-sqlmap.xml 
b/shenyu-admin/src/main/resources/mappers/app-auth-sqlmap.xml
index 6c8e17d79b..225eb49670 100644
--- a/shenyu-admin/src/main/resources/mappers/app-auth-sqlmap.xml
+++ b/shenyu-admin/src/main/resources/mappers/app-auth-sqlmap.xml
@@ -27,6 +27,7 @@
         <result column="ext_info" jdbcType="VARCHAR" property="extInfo"/>
         <result column="open" jdbcType="TINYINT" property="open"/>
         <result column="enabled" jdbcType="TINYINT" property="enabled"/>
+        <result column="namespace_id" jdbcType="VARCHAR" 
property="namespaceId"/>
         <result column="date_created" jdbcType="TIMESTAMP" 
property="dateCreated"/>
         <result column="date_updated" jdbcType="TIMESTAMP" 
property="dateUpdated"/>
     </resultMap>
@@ -182,6 +183,9 @@
             <if test="enabled != null">
                 enabled,
             </if>
+            <if test="namespaceId != null">
+                namespace_id,
+            </if>
             <if test="userId != null">
                 user_id,
             </if>
@@ -212,6 +216,9 @@
             <if test="enabled != null">
                 #{enabled, jdbcType=TINYINT},
             </if>
+            <if test="namespaceId != null">
+                #{namespaceId, jdbcType=VARCHAR},
+            </if>
             <if test="userId != null">
                 #{userId, jdbcType=VARCHAR},
             </if>
diff --git a/shenyu-admin/src/main/resources/mappers/discovery-sqlmap.xml 
b/shenyu-admin/src/main/resources/mappers/discovery-sqlmap.xml
index ab48ec8965..d03821cc8a 100644
--- a/shenyu-admin/src/main/resources/mappers/discovery-sqlmap.xml
+++ b/shenyu-admin/src/main/resources/mappers/discovery-sqlmap.xml
@@ -28,6 +28,7 @@
         <result column="server_list" jdbcType="VARCHAR" property="serverList"/>
         <result column="plugin_name" jdbcType="VARCHAR" property="pluginName"/>
         <result column="props" jdbcType="LONGVARCHAR" property="props"/>
+        <result column="namespace_id" jdbcType="VARCHAR" 
property="namespaceId"/>
     </resultMap>
 
     <sql id="Base_Column_List">
@@ -39,7 +40,8 @@
         level,
         server_list,
         plugin_name,
-        props
+        props,
+        namespace_id
     </sql>
 
     <select id="existed" resultType="java.lang.Boolean">
@@ -78,7 +80,8 @@
         d.level,
         d.server_list,
         d.plugin_name,
-        d.props
+        d.props,
+        d.namespace_id
         FROM discovery d
         INNER JOIN discovery_handler dh on d.id = dh.discovery_id
         INNER JOIN discovery_rel dr on dh.id = dr.discovery_handler_id
diff --git 
a/shenyu-admin/src/main/resources/mappers/discovery-upstream-sqlmap.xml 
b/shenyu-admin/src/main/resources/mappers/discovery-upstream-sqlmap.xml
index c6c16ab621..93a52be457 100644
--- a/shenyu-admin/src/main/resources/mappers/discovery-upstream-sqlmap.xml
+++ b/shenyu-admin/src/main/resources/mappers/discovery-upstream-sqlmap.xml
@@ -23,6 +23,7 @@
         <result column="date_created" jdbcType="TIMESTAMP" 
property="dateCreated"/>
         <result column="date_updated" jdbcType="TIMESTAMP" 
property="dateUpdated"/>
         <result column="discovery_handler_id" jdbcType="VARCHAR" 
property="discoveryHandlerId"/>
+        <result column="namespace_id" jdbcType="VARCHAR" 
property="namespaceId"/>
         <result column="protocol" jdbcType="VARCHAR" property="protocol"/>
         <result column="url" jdbcType="VARCHAR" property="url"/>
         <result column="status" jdbcType="INTEGER" property="status"/>
@@ -35,6 +36,7 @@
         date_created,
         date_updated,
         discovery_handler_id,
+        namespace_id,
         protocol,
         url,
         status,
diff --git a/shenyu-admin/src/main/resources/mappers/meta-data-sqlmap.xml 
b/shenyu-admin/src/main/resources/mappers/meta-data-sqlmap.xml
index e7b5a01a95..d17294b258 100644
--- a/shenyu-admin/src/main/resources/mappers/meta-data-sqlmap.xml
+++ b/shenyu-admin/src/main/resources/mappers/meta-data-sqlmap.xml
@@ -30,6 +30,7 @@
         <result column="method_name" jdbcType="VARCHAR" property="methodName"/>
         <result column="parameter_types" jdbcType="VARCHAR" 
property="parameterTypes"/>
         <result column="rpc_ext" jdbcType="VARCHAR" property="rpcExt"/>
+        <result column="namespace_id" jdbcType="VARCHAR" 
property="namespaceId"/>
         <result column="enabled" jdbcType="TINYINT" property="enabled"/>
     </resultMap>
 
@@ -45,6 +46,7 @@
         method_name,
         parameter_types,
         rpc_ext,
+        namespace_id,
         enabled,
         namespace_id
     </sql>
diff --git a/shenyu-admin/src/main/resources/mappers/proxy-selector-sqlmap.xml 
b/shenyu-admin/src/main/resources/mappers/proxy-selector-sqlmap.xml
index 4a39e9bfc4..df8ae178ae 100644
--- a/shenyu-admin/src/main/resources/mappers/proxy-selector-sqlmap.xml
+++ b/shenyu-admin/src/main/resources/mappers/proxy-selector-sqlmap.xml
@@ -27,6 +27,7 @@
         <result column="type" jdbcType="VARCHAR" property="type"/>
         <result column="forward_port" jdbcType="INTEGER" 
property="forwardPort"/>
         <result column="props" jdbcType="VARCHAR" property="props"/>
+        <result column="namespace_id" jdbcType="VARCHAR" 
property="namespaceId"/>
     </resultMap>
 
     <sql id="Base_Column_List">
@@ -37,7 +38,8 @@
         plugin_name,
         type,
         forward_port,
-        props
+        props,
+        namespace_id
     </sql>
 
     <select id="existed" resultType="java.lang.Boolean">
@@ -130,10 +132,11 @@
         SELECT
         ps.id ,
         ps.name,
-        ps.plugin_name ,
+        ps.plugin_name,
         ps.type,
-        ps.forward_port ,
-        ps.props
+        ps.forward_port,
+        ps.props,
+        ps.namespace_id
         FROM proxy_selector ps
         inner join discovery_rel dr on ps.id = dr.proxy_selector_id
         inner join discovery_handler dh on dh.id = dr.discovery_handler_id
diff --git a/shenyu-admin/src/main/resources/mappers/rule-sqlmap.xml 
b/shenyu-admin/src/main/resources/mappers/rule-sqlmap.xml
index e432e754ca..605eaebd19 100644
--- a/shenyu-admin/src/main/resources/mappers/rule-sqlmap.xml
+++ b/shenyu-admin/src/main/resources/mappers/rule-sqlmap.xml
@@ -29,6 +29,7 @@
         <result column="enabled" jdbcType="TINYINT" property="enabled"/>
         <result column="loged" jdbcType="TINYINT" property="loged"/>
         <result column="match_restful" jdbcType="TINYINT" 
property="matchRestful"/>
+        <result column="namespace_id" jdbcType="VARCHAR" 
property="namespaceId"/>
         <result column="handle" jdbcType="VARCHAR" property="handle"/>
     </resultMap>
 
diff --git a/shenyu-admin/src/main/resources/mappers/selector-sqlmap.xml 
b/shenyu-admin/src/main/resources/mappers/selector-sqlmap.xml
index e2319a552a..7501feda42 100644
--- a/shenyu-admin/src/main/resources/mappers/selector-sqlmap.xml
+++ b/shenyu-admin/src/main/resources/mappers/selector-sqlmap.xml
@@ -31,8 +31,8 @@
         <result column="loged" jdbcType="TINYINT" property="loged"/>
         <result column="continued" jdbcType="TINYINT" property="continued"/>
         <result column="match_restful" jdbcType="TINYINT" 
property="matchRestful"/>
-        <result column="handle" jdbcType="VARCHAR" property="handle"/>
         <result column="namespace_id" jdbcType="VARCHAR" 
property="namespaceId"/>
+        <result column="handle" jdbcType="VARCHAR" property="handle"/>
     </resultMap>
 
     <sql id="Base_Column_List">
diff --git a/shenyu-admin/src/main/resources/sql-script/h2/schema.sql 
b/shenyu-admin/src/main/resources/sql-script/h2/schema.sql
index ab962951f0..5544158afe 100755
--- a/shenyu-admin/src/main/resources/sql-script/h2/schema.sql
+++ b/shenyu-admin/src/main/resources/sql-script/h2/schema.sql
@@ -69,6 +69,7 @@ CREATE TABLE IF NOT EXISTS `selector` (
   `loged` tinyint(4) NOT NULL COMMENT 'whether to print the log',
   `continued` tinyint(4) NOT NULL COMMENT 'whether to continue execution',
   `match_restful` tinyint(4) NOT NULL COMMENT 'whether to match restful(0 
cache, 1 not cache)',
+  `namespace_id` varchar(50) NOT NULL COMMENT 'namespace id',
   `date_created` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT 'create 
time',
   `date_updated` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE 
CURRENT_TIMESTAMP COMMENT 'update time'
 );
@@ -95,6 +96,7 @@ CREATE TABLE IF NOT EXISTS `rule` (
   `enabled` tinyint(4) NOT NULL COMMENT 'whether to open',
   `loged` tinyint(4) NOT NULL COMMENT 'whether to log or not',
   `match_restful` tinyint(4) NOT NULL COMMENT 'whether to match restful(0 
cache, 1 not cache)',
+  `namespace_id` varchar(50) NOT NULL COMMENT 'namespace id',
   `sort` int(4) NOT NULL COMMENT 'sort',
   `handle` varchar(1024) DEFAULT NULL COMMENT 'processing logic (here for 
different plug-ins, there will be different fields to identify different 
processes, all data in JSON format is stored)',
   `date_created` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT 'create 
time',
@@ -122,6 +124,7 @@ CREATE TABLE  IF NOT EXISTS `meta_data` (
   `method_name` varchar(255) NULL DEFAULT NULL COMMENT 'method name',
   `parameter_types` varchar(255) NULL DEFAULT NULL COMMENT 'parameter types 
are provided with multiple parameter types separated by commas',
   `rpc_ext` varchar(512) NULL DEFAULT NULL COMMENT 'rpc extended information, 
json format',
+  `namespace_id` varchar(50) NOT NULL COMMENT 'namespace id',
   `date_created` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT 'create 
time',
   `date_updated` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE 
CURRENT_TIMESTAMP COMMENT 'update time',
   `enabled` tinyint(4) NOT NULL DEFAULT 0 COMMENT 'enabled state',
@@ -169,6 +172,7 @@ CREATE TABLE IF NOT EXISTS `app_auth`  (
   `ext_info` varchar(1024) NULL DEFAULT NULL COMMENT 'extended parameter json',
   `open` tinyint(4) NOT NULL COMMENT 'open auth path or not',
   `enabled` tinyint(4) NOT NULL COMMENT 'delete or not',
+  `namespace_id` varchar(50) NOT NULL COMMENT 'namespace id',
   `date_created` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT 'create 
time',
   `date_updated` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE 
CURRENT_TIMESTAMP COMMENT 'update time',
   PRIMARY KEY (`id`)
@@ -1099,6 +1103,7 @@ CREATE TABLE IF NOT EXISTS `discovery`
     `name`         varchar(255)  NOT NULL COMMENT 'the discovery name',
     `level`        varchar(64)  NOT NULL COMMENT '0 selector,1 plugin  2 
global',
     `plugin_name`  varchar(255)   COMMENT 'the plugin name',
+    `namespace_id` varchar(50) NOT NULL COMMENT 'namespace id',
     `type`         varchar(64)   NOT NULL COMMENT 
'local,zookeeper,etcd,consul,nacos',
     `server_list`  varchar(255)   COMMENT 'register server url (,)',
     `props`     text  COMMENT 'the discovery pops (json) ',
@@ -1131,6 +1136,7 @@ CREATE TABLE IF NOT EXISTS `discovery_upstream`
 (
     `id`           varchar(128)  NOT NULL COMMENT 'primary key id',
     `discovery_handler_id` varchar(128)  NOT NULL COMMENT 'the discovery 
handler id',
+    `namespace_id` varchar(50) NOT NULL COMMENT 'namespace id',
     `protocol`     varchar(64)   COMMENT 'for http, https, tcp, ws',
     `url`          varchar(64)   NOT NULL COMMENT 'ip:port',
     `status`      int(0) NOT NULL COMMENT 'type (0, healthy, 1 unhealthy)',
@@ -1153,6 +1159,7 @@ CREATE TABLE IF NOT EXISTS `proxy_selector`
     `type`         varchar(64)   NOT NULL COMMENT 'proxy type for tcp, upd, 
ws',
     `forward_port` int(0) NOT NULL COMMENT 'the proxy forward port',
     `props`      text  COMMENT 'the other field (json)',
+    `namespace_id` varchar(50) NOT NULL COMMENT 'namespace id',
     `date_created` timestamp(3) NOT NULL DEFAULT CURRENT_TIMESTAMP(3) COMMENT 
'create time',
     `date_updated` timestamp(3) NOT NULL DEFAULT CURRENT_TIMESTAMP(3) ON 
UPDATE CURRENT_TIMESTAMP(3) COMMENT 'update time',
     PRIMARY KEY (`id`)
@@ -1389,20 +1396,3 @@ CREATE TABLE IF NOT EXISTS `scale_history`
     `date_updated`   timestamp   NOT NULL DEFAULT CURRENT_TIMESTAMP(3) ON 
UPDATE CURRENT_TIMESTAMP(3) COMMENT 'update time',
     PRIMARY KEY (`id`)
 );
-
-
-ALTER TABLE `selector` ADD COLUMN `namespace_id` varchar(50) NULL COMMENT 
'namespaceId' AFTER `match_restful`;
-
-ALTER TABLE `selector` ADD COLUMN `namespace_id` varchar(50) NULL COMMENT 
'namespaceId' AFTER `match_restful`;
-
-ALTER TABLE `rule` ADD COLUMN `namespace_id` varchar(50) NULL COMMENT 
'namespaceId' AFTER `match_restful`;
-
-ALTER TABLE `meta_data` ADD COLUMN `namespace_id` varchar(50) NULL COMMENT 
'namespaceId' ;
-
-ALTER TABLE `app_auth` ADD COLUMN `namespace_id` varchar(50) NULL COMMENT 
'namespaceId' ;
-
-ALTER TABLE `discovery` ADD COLUMN `namespace_id` varchar(50) NULL COMMENT 
'namespaceId' AFTER `plugin_name`;
-
-ALTER TABLE `discovery_upstream` ADD COLUMN `namespace_id` varchar(50) NULL 
COMMENT 'namespaceId' AFTER `discovery_handler_id`;
-
-ALTER TABLE `proxy_selector` ADD COLUMN `namespace_id` varchar(50) NULL 
COMMENT 'namespaceId' AFTER `props`;
\ No newline at end of file
diff --git 
a/shenyu-e2e/shenyu-e2e-case/shenyu-e2e-case-cluster/src/test/java/org/apache/shenyue/e2e/testcase/cluster/DividePluginTest.java
 
b/shenyu-e2e/shenyu-e2e-case/shenyu-e2e-case-cluster/src/test/java/org/apache/shenyue/e2e/testcase/cluster/DividePluginTest.java
index 82ec02eb56..db8d355173 100644
--- 
a/shenyu-e2e/shenyu-e2e-case/shenyu-e2e-case-cluster/src/test/java/org/apache/shenyue/e2e/testcase/cluster/DividePluginTest.java
+++ 
b/shenyu-e2e/shenyu-e2e-case/shenyu-e2e-case-cluster/src/test/java/org/apache/shenyue/e2e/testcase/cluster/DividePluginTest.java
@@ -38,6 +38,8 @@ import org.junit.jupiter.api.BeforeEach;
 import java.util.List;
 import java.util.Objects;
 
+import static 
org.apache.shenyu.e2e.constant.Constants.SYS_DEFAULT_NAMESPACE_NAMESPACE_ID;
+
 /**
  * Testing Cluster Divide plugin.
  */
@@ -86,6 +88,7 @@ public class DividePluginTest {
             BindingData bindingData = res.getBindingData();
             if (Objects.nonNull(bindingData)) {
                 bindingData.setSelectorId(dto.getId());
+                bindingData.setNamespaceId(SYS_DEFAULT_NAMESPACE_NAMESPACE_ID);
                 client.bindingData(bindingData);
             }
         }
diff --git 
a/shenyu-e2e/shenyu-e2e-case/shenyu-e2e-case-http/src/test/java/org/apache/shenyu/e2e/testcase/http/DividePluginTest.java
 
b/shenyu-e2e/shenyu-e2e-case/shenyu-e2e-case-http/src/test/java/org/apache/shenyu/e2e/testcase/http/DividePluginTest.java
index 879e74307c..1b18091e7c 100644
--- 
a/shenyu-e2e/shenyu-e2e-case/shenyu-e2e-case-http/src/test/java/org/apache/shenyu/e2e/testcase/http/DividePluginTest.java
+++ 
b/shenyu-e2e/shenyu-e2e-case/shenyu-e2e-case-http/src/test/java/org/apache/shenyu/e2e/testcase/http/DividePluginTest.java
@@ -40,6 +40,8 @@ import java.util.List;
 import java.util.Map;
 import java.util.Objects;
 
+import static 
org.apache.shenyu.e2e.constant.Constants.SYS_DEFAULT_NAMESPACE_NAMESPACE_ID;
+
 @ShenYuTest(environments = {
         @ShenYuTest.Environment(
                 serviceName = "shenyu-e2e-admin",
@@ -81,6 +83,7 @@ public class DividePluginTest {
             BindingData bindingData = res.getBindingData();
             if (Objects.nonNull(bindingData)) {
                 bindingData.setSelectorId(dto.getId());
+                bindingData.setNamespaceId(SYS_DEFAULT_NAMESPACE_NAMESPACE_ID);
                 client.bindingData(bindingData);
             }
         }
diff --git 
a/shenyu-e2e/shenyu-e2e-common/src/main/java/org/apache/shenyu/e2e/model/data/BindingData.java
 
b/shenyu-e2e/shenyu-e2e-common/src/main/java/org/apache/shenyu/e2e/model/data/BindingData.java
index 3505eab9a4..42a0f4374a 100644
--- 
a/shenyu-e2e/shenyu-e2e-common/src/main/java/org/apache/shenyu/e2e/model/data/BindingData.java
+++ 
b/shenyu-e2e/shenyu-e2e-common/src/main/java/org/apache/shenyu/e2e/model/data/BindingData.java
@@ -323,6 +323,11 @@ public class BindingData implements ResourceData {
          * props.
          */
         private String props;
+        
+        /**
+         * namespaceId.
+         */
+        private String namespaceId;
 
         /**
          * get id.
@@ -436,6 +441,23 @@ public class BindingData implements ResourceData {
         public void setProps(final String props) {
             this.props = props;
         }
+        
+        /**
+         * get namespaceId.
+         *
+         * @return namespaceId
+         */
+        public String getNamespaceId() {
+            return namespaceId;
+        }
+        
+        /**
+         * set namespaceId.
+         * @param namespaceId namespaceId
+         */
+        public void setNamespaceId(final String namespaceId) {
+            this.namespaceId = namespaceId;
+        }
     }
 
 }
diff --git 
a/shenyu-e2e/shenyu-e2e-common/src/main/java/org/apache/shenyu/e2e/template/ResourceDataTemplate.java
 
b/shenyu-e2e/shenyu-e2e-common/src/main/java/org/apache/shenyu/e2e/template/ResourceDataTemplate.java
index ae66a7d335..9321e0a5e6 100644
--- 
a/shenyu-e2e/shenyu-e2e-common/src/main/java/org/apache/shenyu/e2e/template/ResourceDataTemplate.java
+++ 
b/shenyu-e2e/shenyu-e2e-common/src/main/java/org/apache/shenyu/e2e/template/ResourceDataTemplate.java
@@ -35,6 +35,8 @@ import java.util.ArrayList;
 import java.util.Collections;
 import java.util.List;
 
+import static 
org.apache.shenyu.e2e.constant.Constants.SYS_DEFAULT_NAMESPACE_NAMESPACE_ID;
+
 /**
  * Templates for various entity classes.
  */
@@ -82,6 +84,7 @@ public class ResourceDataTemplate {
         discoveryUpstream.setProtocol("http://";);
         discoveryUpstream.setStatus(0);
         discoveryUpstream.setWeight(50);
+        discoveryUpstream.setNamespaceId(SYS_DEFAULT_NAMESPACE_NAMESPACE_ID);
         
bindingData.setDiscoveryUpstreams(Collections.singletonList(discoveryUpstream));
         return bindingData;
     }

Reply via email to