Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
yanghaoyuan.sh
DolphinScheduler
提交
c837580c
DolphinScheduler
项目概览
yanghaoyuan.sh
/
DolphinScheduler
与 Fork 源项目一致
Fork自
apache / DolphinScheduler
通知
1
Star
0
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
DolphinScheduler
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
体验新版 GitCode,发现更多精彩内容 >>
未验证
提交
c837580c
编写于
4月 27, 2022
作者:
L
leiwingqueen
提交者:
GitHub
4月 27, 2022
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
[bug][db] Table relation_project_user have duplicate record (#9536)
* update sql ddl * fix syntax err
上级
8fab44cb
变更
6
隐藏空白更改
内联
并排
Showing
6 changed file
with
30 addition
and
20 deletion
+30
-20
dolphinscheduler-api/src/main/java/org/apache/dolphinscheduler/api/service/impl/UsersServiceImpl.java
...e/dolphinscheduler/api/service/impl/UsersServiceImpl.java
+15
-16
dolphinscheduler-dao/src/main/resources/sql/dolphinscheduler_h2.sql
...eduler-dao/src/main/resources/sql/dolphinscheduler_h2.sql
+2
-1
dolphinscheduler-dao/src/main/resources/sql/dolphinscheduler_mysql.sql
...ler-dao/src/main/resources/sql/dolphinscheduler_mysql.sql
+1
-1
dolphinscheduler-dao/src/main/resources/sql/dolphinscheduler_postgresql.sql
...ao/src/main/resources/sql/dolphinscheduler_postgresql.sql
+2
-1
dolphinscheduler-dao/src/main/resources/sql/upgrade/2.0.6_schema/mysql/dolphinscheduler_ddl.sql
...s/sql/upgrade/2.0.6_schema/mysql/dolphinscheduler_ddl.sql
+5
-0
dolphinscheduler-dao/src/main/resources/sql/upgrade/2.0.6_schema/postgresql/dolphinscheduler_ddl.sql
.../upgrade/2.0.6_schema/postgresql/dolphinscheduler_ddl.sql
+5
-1
未找到文件。
dolphinscheduler-api/src/main/java/org/apache/dolphinscheduler/api/service/impl/UsersServiceImpl.java
浏览文件 @
c837580c
...
...
@@ -73,6 +73,7 @@ import java.util.List;
import
java.util.Map
;
import
java.util.Set
;
import
java.util.TimeZone
;
import
java.util.Arrays
;
import
java.util.stream.Collectors
;
/**
...
...
@@ -526,7 +527,6 @@ public class UsersServiceImpl extends BaseServiceImpl implements UsersService {
userMapper
.
queryTenantCodeByUserId
(
id
);
accessTokenMapper
.
deleteAccessTokenByUserId
(
id
);
userMapper
.
deleteById
(
id
);
...
...
@@ -562,10 +562,7 @@ public class UsersServiceImpl extends BaseServiceImpl implements UsersService {
if
(
check
(
result
,
StringUtils
.
isEmpty
(
projectIds
),
Status
.
SUCCESS
))
{
return
result
;
}
String
[]
projectIdArr
=
projectIds
.
split
(
","
);
for
(
String
projectId
:
projectIdArr
)
{
Arrays
.
stream
(
projectIds
.
split
(
","
)).
distinct
().
forEach
(
projectId
->
{
Date
now
=
new
Date
();
ProjectUser
projectUser
=
new
ProjectUser
();
projectUser
.
setUserId
(
userId
);
...
...
@@ -574,8 +571,7 @@ public class UsersServiceImpl extends BaseServiceImpl implements UsersService {
projectUser
.
setCreateTime
(
now
);
projectUser
.
setUpdateTime
(
now
);
projectUserMapper
.
insert
(
projectUser
);
}
});
putMsg
(
result
,
Status
.
SUCCESS
);
return
result
;
...
...
@@ -614,15 +610,18 @@ public class UsersServiceImpl extends BaseServiceImpl implements UsersService {
return
result
;
}
// 4. maintain the relationship between project and user
final
Date
today
=
new
Date
();
ProjectUser
projectUser
=
new
ProjectUser
();
projectUser
.
setUserId
(
userId
);
projectUser
.
setProjectId
(
project
.
getId
());
projectUser
.
setPerm
(
7
);
projectUser
.
setCreateTime
(
today
);
projectUser
.
setUpdateTime
(
today
);
this
.
projectUserMapper
.
insert
(
projectUser
);
// 4. maintain the relationship between project and user if not exists
ProjectUser
projectUser
=
projectUserMapper
.
queryProjectRelation
(
project
.
getId
(),
userId
);
if
(
projectUser
==
null
)
{
Date
today
=
new
Date
();
projectUser
=
new
ProjectUser
();
projectUser
.
setUserId
(
userId
);
projectUser
.
setProjectId
(
project
.
getId
());
projectUser
.
setPerm
(
7
);
projectUser
.
setCreateTime
(
today
);
projectUser
.
setUpdateTime
(
today
);
this
.
projectUserMapper
.
insert
(
projectUser
);
}
this
.
putMsg
(
result
,
Status
.
SUCCESS
);
return
result
;
...
...
dolphinscheduler-dao/src/main/resources/sql/dolphinscheduler_h2.sql
浏览文件 @
c837580c
...
...
@@ -709,7 +709,8 @@ CREATE TABLE t_ds_relation_project_user
perm
int
(
11
)
DEFAULT
'1'
,
create_time
datetime
DEFAULT
NULL
,
update_time
datetime
DEFAULT
NULL
,
PRIMARY
KEY
(
id
)
PRIMARY
KEY
(
id
),
UNIQUE
KEY
uniq_uid_pid
(
user_id
,
project_id
)
);
-- ----------------------------
...
...
dolphinscheduler-dao/src/main/resources/sql/dolphinscheduler_mysql.sql
浏览文件 @
c837580c
...
...
@@ -709,7 +709,7 @@ CREATE TABLE `t_ds_relation_project_user` (
`create_time`
datetime
DEFAULT
NULL
COMMENT
'create time'
,
`update_time`
datetime
DEFAULT
NULL
COMMENT
'update time'
,
PRIMARY
KEY
(
`id`
),
KEY
`user_id_index`
(
`user_id`
)
USING
BTREE
UNIQUE
KEY
uniq_uid_pid
(
user_id
,
project_id
)
)
ENGINE
=
InnoDB
AUTO_INCREMENT
=
1
DEFAULT
CHARSET
=
utf8
;
-- ----------------------------
...
...
dolphinscheduler-dao/src/main/resources/sql/dolphinscheduler_postgresql.sql
浏览文件 @
c837580c
...
...
@@ -625,7 +625,8 @@ CREATE TABLE t_ds_relation_project_user (
perm
int
DEFAULT
'1'
,
create_time
timestamp
DEFAULT
NULL
,
update_time
timestamp
DEFAULT
NULL
,
PRIMARY
KEY
(
id
)
PRIMARY
KEY
(
id
),
CONSTRAINT
t_ds_relation_project_user_un
UNIQUE
(
user_id
,
project_id
)
)
;
create
index
relation_project_user_id_index
on
t_ds_relation_project_user
(
user_id
);
...
...
dolphinscheduler-dao/src/main/resources/sql/upgrade/2.0.6_schema/mysql/dolphinscheduler_ddl.sql
浏览文件 @
c837580c
...
...
@@ -57,3 +57,8 @@ d//
delimiter
;
CALL
uc_dolphin_T_t_ds_alert_R_sign
;
DROP
PROCEDURE
uc_dolphin_T_t_ds_alert_R_sign
;
-- add unique key to t_ds_relation_project_user
ALTER
TABLE
t_ds_relation_project_user
ADD
UNIQUE
KEY
uniq_uid_pid
(
user_id
,
project_id
);
dolphinscheduler-dao/src/main/resources/sql/upgrade/2.0.6_schema/postgresql/dolphinscheduler_ddl.sql
浏览文件 @
c837580c
...
...
@@ -45,4 +45,8 @@ $BODY$;
select
dolphin_update_metadata
();
d
//
\ No newline at end of file
d
//
-- add unique key to t_ds_relation_project_user
CREATE
UNIQUE
INDEX
t_ds_relation_project_user_un
on
t_ds_relation_project_user
(
user_id
,
project_id
);
\ No newline at end of file
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录