You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@dolphinscheduler.apache.org by jo...@apache.org on 2020/03/16 04:21:42 UTC
[incubator-dolphinscheduler] branch refactor-worker updated:
Refactor worker (#2189)
This is an automated email from the ASF dual-hosted git repository.
journey pushed a commit to branch refactor-worker
in repository https://gitbox.apache.org/repos/asf/incubator-dolphinscheduler.git
The following commit(s) were added to refs/heads/refactor-worker by this push:
new 11dde20 Refactor worker (#2189)
11dde20 is described below
commit 11dde20311e71da47b4c7fe0f1e37bbfd3ae910b
Author: Tboy <gu...@immomo.com>
AuthorDate: Mon Mar 16 12:21:28 2020 +0800
Refactor worker (#2189)
* let quartz use the same datasource
* move master/worker config from dao.properties to each config
add master/worker registry test
* move mybatis config from application.properties to SpringConnectionFactory
* move mybatis-plus config from application.properties to SpringConnectionFactory
---
.../dao/datasource/SpringConnectionFactory.java | 18 ++++++++++++++-
.../src/main/resources/application.properties | 26 +---------------------
2 files changed, 18 insertions(+), 26 deletions(-)
diff --git a/dolphinscheduler-dao/src/main/java/org/apache/dolphinscheduler/dao/datasource/SpringConnectionFactory.java b/dolphinscheduler-dao/src/main/java/org/apache/dolphinscheduler/dao/datasource/SpringConnectionFactory.java
index ad66d5a..5788b9d 100644
--- a/dolphinscheduler-dao/src/main/java/org/apache/dolphinscheduler/dao/datasource/SpringConnectionFactory.java
+++ b/dolphinscheduler-dao/src/main/java/org/apache/dolphinscheduler/dao/datasource/SpringConnectionFactory.java
@@ -17,7 +17,9 @@
package org.apache.dolphinscheduler.dao.datasource;
import com.alibaba.druid.pool.DruidDataSource;
+import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.core.MybatisConfiguration;
+import com.baomidou.mybatisplus.core.config.GlobalConfig;
import com.baomidou.mybatisplus.extension.plugins.PaginationInterceptor;
import com.baomidou.mybatisplus.extension.spring.MybatisSqlSessionFactoryBean;
import org.apache.commons.configuration.ConfigurationException;
@@ -25,12 +27,15 @@ import org.apache.commons.configuration.PropertiesConfiguration;
import org.apache.dolphinscheduler.common.Constants;
import org.apache.ibatis.session.SqlSession;
import org.apache.ibatis.session.SqlSessionFactory;
+import org.apache.ibatis.type.JdbcType;
import org.mybatis.spring.SqlSessionTemplate;
import org.mybatis.spring.annotation.MapperScan;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
+import org.springframework.core.io.support.PathMatchingResourcePatternResolver;
+import org.springframework.core.io.support.ResourcePatternResolver;
import org.springframework.jdbc.datasource.DataSourceTransactionManager;
@@ -119,12 +124,23 @@ public class SpringConnectionFactory {
public SqlSessionFactory sqlSessionFactory() throws Exception {
MybatisConfiguration configuration = new MybatisConfiguration();
configuration.addMappers("org.apache.dolphinscheduler.dao.mapper");
+ configuration.setMapUnderscoreToCamelCase(true);
+ configuration.setCacheEnabled(false);
+ configuration.setCallSettersOnNulls(true);
+ configuration.setJdbcTypeForNull(JdbcType.NULL);
configuration.addInterceptor(paginationInterceptor());
-
MybatisSqlSessionFactoryBean sqlSessionFactoryBean = new MybatisSqlSessionFactoryBean();
sqlSessionFactoryBean.setConfiguration(configuration);
sqlSessionFactoryBean.setDataSource(dataSource());
+ GlobalConfig.DbConfig dbConfig = new GlobalConfig.DbConfig();
+ dbConfig.setIdType(IdType.AUTO);
+ GlobalConfig globalConfig = new GlobalConfig();
+ globalConfig.setDbConfig(dbConfig);
+ sqlSessionFactoryBean.setGlobalConfig(globalConfig);
+ sqlSessionFactoryBean.setTypeAliasesPackage("org.apache.dolphinscheduler.dao.entity");
+ ResourcePatternResolver resolver = new PathMatchingResourcePatternResolver();
+ sqlSessionFactoryBean.setMapperLocations(resolver.getResources("org/apache/dolphinscheduler/dao/mapper/*Mapper.xml"));
sqlSessionFactoryBean.setTypeEnumsPackage("org.apache.dolphinscheduler.*.enums");
return sqlSessionFactoryBean.getObject();
}
diff --git a/dolphinscheduler-dao/src/main/resources/application.properties b/dolphinscheduler-dao/src/main/resources/application.properties
index 07abe37..1bf79b7 100644
--- a/dolphinscheduler-dao/src/main/resources/application.properties
+++ b/dolphinscheduler-dao/src/main/resources/application.properties
@@ -22,7 +22,7 @@ spring.datasource.driver-class-name=org.postgresql.Driver
spring.datasource.url=jdbc:postgresql://localhost:5432/dolphinscheduler
# mysql
#spring.datasource.driver-class-name=com.mysql.jdbc.Driver
-#spring.datasource.url=jdbc:mysql://192.168.xx.xx:3306/dolphinscheduler?useUnicode=true&characterEncoding=UTF-8
+#spring.datasource.url=jdbc:mysql://localhost:3306/dolphinscheduler?useUnicode=true&characterEncoding=UTF-8
spring.datasource.username=test
spring.datasource.password=test
@@ -70,30 +70,6 @@ spring.datasource.maxPoolPreparedStatementPerConnectionSize=20
spring.datasource.spring.datasource.filters=stat,wall,log4j
spring.datasource.connectionProperties=druid.stat.mergeSql=true;druid.stat.slowSqlMillis=5000
-#mybatis
-mybatis-plus.mapper-locations=classpath*:/org.apache.dolphinscheduler.dao.mapper/*.xml
-
-mybatis-plus.typeEnumsPackage=org.apache.dolphinscheduler.*.enums
-
-#Entity scan, where multiple packages are separated by a comma or semicolon
-mybatis-plus.typeAliasesPackage=org.apache.dolphinscheduler.dao.entity
-
-#Primary key type AUTO:" database ID AUTO ", INPUT:" user INPUT ID", ID_WORKER:" global unique ID (numeric type unique ID)", UUID:" global unique ID UUID";
-mybatis-plus.global-config.db-config.id-type=AUTO
-
-#Field policy IGNORED:" ignore judgment ",NOT_NULL:" not NULL judgment "),NOT_EMPTY:" not NULL judgment"
-mybatis-plus.global-config.db-config.field-strategy=NOT_NULL
-
-#The hump underline is converted
-mybatis-plus.global-config.db-config.column-underline=true
-mybatis-plus.global-config.db-config.logic-delete-value=-1
-mybatis-plus.global-config.db-config.logic-not-delete-value=0
-mybatis-plus.global-config.db-config.banner=false
-#The original configuration
-mybatis-plus.configuration.map-underscore-to-camel-case=true
-mybatis-plus.configuration.cache-enabled=false
-mybatis-plus.configuration.call-setters-on-nulls=true
-mybatis-plus.configuration.jdbc-type-for-null=null
# data quality analysis is not currently in use. please ignore the following configuration
# task record