From 571b56e3724d6d44afc60a1e80de85d34c6f927f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=A4=8F=E9=BE=99=E9=BE=99?= Date: Thu, 21 Nov 2024 18:05:47 +0800 Subject: [PATCH 1/4] =?UTF-8?q?[DSIP-84][Feature]=20Add=20Cach=C3=A9=20dat?= =?UTF-8?q?asource=20support=20(#16833)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- config/plugins_config | 1 + docs/configs/docsdev.js | 4 + docs/docs/en/guide/datasource/cache.md | 23 +++ docs/docs/zh/guide/datasource/cache.md | 17 ++ docs/img/new_ui/dev/datasource/cache.png | Bin 0 -> 147554 bytes .../common/constants/DataSourceConstants.java | 3 + .../dolphinscheduler-datasource-all/pom.xml | 5 + .../dolphinscheduler-datasource-cache/pom.xml | 53 ++++++ .../cache/CacheAdHocDataSourceClient.java | 29 ++++ .../cache/CacheDataSourceChannel.java | 37 ++++ .../cache/CacheDataSourceChannelFactory.java | 37 ++++ .../cache/CachePooledDataSourceClient.java | 30 ++++ .../cache/param/CacheConnectionParam.java | 38 +++++ .../cache/param/CacheDataSourceParamDTO.java | 43 +++++ .../cache/param/CacheDataSourceProcessor.java | 158 ++++++++++++++++++ .../CacheDataSourceChannelFactoryTest.java | 33 ++++ .../cache/CacheDataSourceChannelTest.java | 40 +++++ .../param/CacheDataSourceProcessorTest.java | 129 ++++++++++++++ .../provider/JDBCDataSourceProviderTest.java | 64 +++++++ .../cache/utils/DataSourceUtilsTest.java | 147 ++++++++++++++++ dolphinscheduler-datasource-plugin/pom.xml | 1 + .../dolphinscheduler/spi/enums/DbType.java | 5 +- .../src/service/modules/data-source/types.ts | 2 + .../src/views/datasource/list/use-form.ts | 5 + .../components/node/fields/use-datasource.ts | 5 + 25 files changed, 906 insertions(+), 3 deletions(-) create mode 100644 docs/docs/en/guide/datasource/cache.md create mode 100644 docs/docs/zh/guide/datasource/cache.md create mode 100644 docs/img/new_ui/dev/datasource/cache.png create mode 100644 dolphinscheduler-datasource-plugin/dolphinscheduler-datasource-cache/pom.xml create mode 100644 dolphinscheduler-datasource-plugin/dolphinscheduler-datasource-cache/src/main/java/org/apache/dolphinscheduler/plugin/datasource/cache/CacheAdHocDataSourceClient.java create mode 100644 dolphinscheduler-datasource-plugin/dolphinscheduler-datasource-cache/src/main/java/org/apache/dolphinscheduler/plugin/datasource/cache/CacheDataSourceChannel.java create mode 100644 dolphinscheduler-datasource-plugin/dolphinscheduler-datasource-cache/src/main/java/org/apache/dolphinscheduler/plugin/datasource/cache/CacheDataSourceChannelFactory.java create mode 100644 dolphinscheduler-datasource-plugin/dolphinscheduler-datasource-cache/src/main/java/org/apache/dolphinscheduler/plugin/datasource/cache/CachePooledDataSourceClient.java create mode 100644 dolphinscheduler-datasource-plugin/dolphinscheduler-datasource-cache/src/main/java/org/apache/dolphinscheduler/plugin/datasource/cache/param/CacheConnectionParam.java create mode 100644 dolphinscheduler-datasource-plugin/dolphinscheduler-datasource-cache/src/main/java/org/apache/dolphinscheduler/plugin/datasource/cache/param/CacheDataSourceParamDTO.java create mode 100644 dolphinscheduler-datasource-plugin/dolphinscheduler-datasource-cache/src/main/java/org/apache/dolphinscheduler/plugin/datasource/cache/param/CacheDataSourceProcessor.java create mode 100644 dolphinscheduler-datasource-plugin/dolphinscheduler-datasource-cache/src/test/java/org/apache/dolphinscheduler/plugin/datasource/cache/CacheDataSourceChannelFactoryTest.java create mode 100644 dolphinscheduler-datasource-plugin/dolphinscheduler-datasource-cache/src/test/java/org/apache/dolphinscheduler/plugin/datasource/cache/CacheDataSourceChannelTest.java create mode 100644 dolphinscheduler-datasource-plugin/dolphinscheduler-datasource-cache/src/test/java/org/apache/dolphinscheduler/plugin/datasource/cache/param/CacheDataSourceProcessorTest.java create mode 100644 dolphinscheduler-datasource-plugin/dolphinscheduler-datasource-cache/src/test/java/org/apache/dolphinscheduler/plugin/datasource/cache/provider/JDBCDataSourceProviderTest.java create mode 100644 dolphinscheduler-datasource-plugin/dolphinscheduler-datasource-cache/src/test/java/org/apache/dolphinscheduler/plugin/datasource/cache/utils/DataSourceUtilsTest.java diff --git a/config/plugins_config b/config/plugins_config index eff859100fe5..38209fe174da 100644 --- a/config/plugins_config +++ b/config/plugins_config @@ -44,6 +44,7 @@ dolphinscheduler-datasource-databend dolphinscheduler-datasource-db2 dolphinscheduler-datasource-doris dolphinscheduler-datasource-hana +dolphinscheduler-datasource-cache dolphinscheduler-datasource-hive dolphinscheduler-datasource-k8s dolphinscheduler-datasource-kyuubi diff --git a/docs/configs/docsdev.js b/docs/configs/docsdev.js index 0fa7adf2612d..52eef492e24d 100644 --- a/docs/configs/docsdev.js +++ b/docs/configs/docsdev.js @@ -355,6 +355,10 @@ export default { title: 'doris', link: '/en-us/docs/dev/user_doc/guide/datasource/doris.html', }, + { + title: 'Caché', + link: '/en-us/docs/dev/user_doc/guide/datasource/cache.html', + }, { title: 'Vertica', link: '/en-us/docs/dev/user_doc/guide/datasource/vertica.html', diff --git a/docs/docs/en/guide/datasource/cache.md b/docs/docs/en/guide/datasource/cache.md new file mode 100644 index 000000000000..372bcdcc7a3a --- /dev/null +++ b/docs/docs/en/guide/datasource/cache.md @@ -0,0 +1,23 @@ +# CACHE + +![cache](../../../../img/new_ui/dev/datasource/cache.png) + +## Datasource Parameters + +| **Datasource** | **Description** | +|----------------------------|---------------------------------------------------------------------------------------| +| Datasource | Select CACHE. | +| Datasource name | Enter the name of the DataSource. | +| Description | Enter a description of the DataSource. | +| IP/Host Name | Enter the CACHE service IP.(If there are multiple IPs, please separate them with `,`) | +| Port | Enter the CACHE service port. | +| Username | Set the username for CACHE connection. | +| Password | Set the password for CACHE connection. | +| Database name | Enter the database name of the CACHE connection. | +| Jdbc connection parameters | Parameter settings for CACHE connection, in JSON format. | + +## Native Supported + +No, read section example in [datasource-setting](../installation/datasource-setting.md) `DataSource Center` section to activate +this datasource. + diff --git a/docs/docs/zh/guide/datasource/cache.md b/docs/docs/zh/guide/datasource/cache.md new file mode 100644 index 000000000000..5ad9da75a134 --- /dev/null +++ b/docs/docs/zh/guide/datasource/cache.md @@ -0,0 +1,17 @@ +# CACHE 数据源 + +![CACHE](../../../../img/new_ui/dev/datasource/cache.png) + +- 数据源:选择 CACHE +- 数据源名称:输入数据源的名称 +- 描述:输入数据源的描述 +- IP 主机名:输入连接 CACHE 的 IP(如有多个IP,请用`,`分隔) +- 端口:输入连接 CACHE 的端口 +- 用户名:设置连接 CACHE 的用户名 +- 密码:设置连接 CACHE 的密码 +- 数据库名:输入连接 CACHE 的数据库名称 +- Jdbc 连接参数:用于 CACHE 连接的参数设置,以 JSON 形式填写 + +## 是否原生支持 + +否,使用前需请参考 [数据源配置](../installation/datasource-setting.md) 中的 "数据源中心" 章节激活数据源。 diff --git a/docs/img/new_ui/dev/datasource/cache.png b/docs/img/new_ui/dev/datasource/cache.png new file mode 100644 index 0000000000000000000000000000000000000000..16710841689c04eee65cac753ce954012ccdb485 GIT binary patch literal 147554 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

_4IqA%(WR$wpo*Pc0O9 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 literal 0 HcmV?d00001 diff --git a/dolphinscheduler-common/src/main/java/org/apache/dolphinscheduler/common/constants/DataSourceConstants.java b/dolphinscheduler-common/src/main/java/org/apache/dolphinscheduler/common/constants/DataSourceConstants.java index 11347942bde4..f3cc96ad33fd 100644 --- a/dolphinscheduler-common/src/main/java/org/apache/dolphinscheduler/common/constants/DataSourceConstants.java +++ b/dolphinscheduler-common/src/main/java/org/apache/dolphinscheduler/common/constants/DataSourceConstants.java @@ -43,6 +43,7 @@ public class DataSourceConstants { public static final String NET_SNOWFLAKE_JDBC_DRIVER = "net.snowflake.client.jdbc.SnowflakeDriver"; public static final String COM_VERTICA_JDBC_DRIVER = "com.vertica.jdbc.Driver"; public static final String COM_HANA_DB_JDBC_DRIVER = "com.sap.db.jdbc.Driver"; + public static final String COM_INTERSYS_JDBC_CACHE_DRIVER = "com.intersys.jdbc.CacheDriver"; /** * validation Query @@ -66,6 +67,7 @@ public class DataSourceConstants { public static final String VERTICA_VALIDATION_QUERY = "select 1"; public static final String HANA_VALIDATION_QUERY = "select 1 from DUMMY"; + public static final String CACHE_VALIDATION_QUERY = "select 1"; /** * jdbc url @@ -91,6 +93,7 @@ public class DataSourceConstants { public static final String JDBC_SNOWFLAKE = "jdbc:snowflake://"; public static final String JDBC_VERTICA = "jdbc:vertica://"; public static final String JDBC_HANA = "jdbc:sap://"; + public static final String JDBC_CACHE = "jdbc:Cache://"; /** * database type diff --git a/dolphinscheduler-datasource-plugin/dolphinscheduler-datasource-all/pom.xml b/dolphinscheduler-datasource-plugin/dolphinscheduler-datasource-all/pom.xml index b62a3ce414a9..c5ab260ba376 100644 --- a/dolphinscheduler-datasource-plugin/dolphinscheduler-datasource-all/pom.xml +++ b/dolphinscheduler-datasource-plugin/dolphinscheduler-datasource-all/pom.xml @@ -163,5 +163,10 @@ dolphinscheduler-datasource-aliyunserverlessspark ${project.version} + + org.apache.dolphinscheduler + dolphinscheduler-datasource-cache + ${project.version} + diff --git a/dolphinscheduler-datasource-plugin/dolphinscheduler-datasource-cache/pom.xml b/dolphinscheduler-datasource-plugin/dolphinscheduler-datasource-cache/pom.xml new file mode 100644 index 000000000000..e0b6aa78c118 --- /dev/null +++ b/dolphinscheduler-datasource-plugin/dolphinscheduler-datasource-cache/pom.xml @@ -0,0 +1,53 @@ + + + + 4.0.0 + + org.apache.dolphinscheduler + dolphinscheduler-datasource-plugin + dev-SNAPSHOT + + + dolphinscheduler-datasource-cache + jar + ${project.artifactId} + + + + org.apache.dolphinscheduler + dolphinscheduler-spi + ${project.version} + provided + + + + org.apache.dolphinscheduler + dolphinscheduler-datasource-api + ${project.version} + provided + + + org.apache.dolphinscheduler + dolphinscheduler-common + ${project.version} + provided + + + + diff --git a/dolphinscheduler-datasource-plugin/dolphinscheduler-datasource-cache/src/main/java/org/apache/dolphinscheduler/plugin/datasource/cache/CacheAdHocDataSourceClient.java b/dolphinscheduler-datasource-plugin/dolphinscheduler-datasource-cache/src/main/java/org/apache/dolphinscheduler/plugin/datasource/cache/CacheAdHocDataSourceClient.java new file mode 100644 index 000000000000..8ecc72fe3b5b --- /dev/null +++ b/dolphinscheduler-datasource-plugin/dolphinscheduler-datasource-cache/src/main/java/org/apache/dolphinscheduler/plugin/datasource/cache/CacheAdHocDataSourceClient.java @@ -0,0 +1,29 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You under the Apache License, Version 2.0 + * (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package org.apache.dolphinscheduler.plugin.datasource.cache; + +import org.apache.dolphinscheduler.plugin.datasource.api.client.BaseAdHocDataSourceClient; +import org.apache.dolphinscheduler.spi.datasource.BaseConnectionParam; +import org.apache.dolphinscheduler.spi.enums.DbType; + +public class CacheAdHocDataSourceClient extends BaseAdHocDataSourceClient { + + public CacheAdHocDataSourceClient(BaseConnectionParam baseConnectionParam, DbType dbType) { + super(baseConnectionParam, dbType); + } +} diff --git a/dolphinscheduler-datasource-plugin/dolphinscheduler-datasource-cache/src/main/java/org/apache/dolphinscheduler/plugin/datasource/cache/CacheDataSourceChannel.java b/dolphinscheduler-datasource-plugin/dolphinscheduler-datasource-cache/src/main/java/org/apache/dolphinscheduler/plugin/datasource/cache/CacheDataSourceChannel.java new file mode 100644 index 000000000000..efbcd1a346eb --- /dev/null +++ b/dolphinscheduler-datasource-plugin/dolphinscheduler-datasource-cache/src/main/java/org/apache/dolphinscheduler/plugin/datasource/cache/CacheDataSourceChannel.java @@ -0,0 +1,37 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You under the Apache License, Version 2.0 + * (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package org.apache.dolphinscheduler.plugin.datasource.cache; + +import org.apache.dolphinscheduler.spi.datasource.AdHocDataSourceClient; +import org.apache.dolphinscheduler.spi.datasource.BaseConnectionParam; +import org.apache.dolphinscheduler.spi.datasource.DataSourceChannel; +import org.apache.dolphinscheduler.spi.datasource.PooledDataSourceClient; +import org.apache.dolphinscheduler.spi.enums.DbType; + +public class CacheDataSourceChannel implements DataSourceChannel { + + @Override + public AdHocDataSourceClient createAdHocDataSourceClient(BaseConnectionParam baseConnectionParam, DbType dbType) { + return new CacheAdHocDataSourceClient(baseConnectionParam, dbType); + } + + @Override + public PooledDataSourceClient createPooledDataSourceClient(BaseConnectionParam baseConnectionParam, DbType dbType) { + return new CachePooledDataSourceClient(baseConnectionParam, dbType); + } +} diff --git a/dolphinscheduler-datasource-plugin/dolphinscheduler-datasource-cache/src/main/java/org/apache/dolphinscheduler/plugin/datasource/cache/CacheDataSourceChannelFactory.java b/dolphinscheduler-datasource-plugin/dolphinscheduler-datasource-cache/src/main/java/org/apache/dolphinscheduler/plugin/datasource/cache/CacheDataSourceChannelFactory.java new file mode 100644 index 000000000000..437900e0630c --- /dev/null +++ b/dolphinscheduler-datasource-plugin/dolphinscheduler-datasource-cache/src/main/java/org/apache/dolphinscheduler/plugin/datasource/cache/CacheDataSourceChannelFactory.java @@ -0,0 +1,37 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You under the Apache License, Version 2.0 + * (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package org.apache.dolphinscheduler.plugin.datasource.cache; + +import org.apache.dolphinscheduler.spi.datasource.DataSourceChannel; +import org.apache.dolphinscheduler.spi.datasource.DataSourceChannelFactory; + +import com.google.auto.service.AutoService; + +@AutoService(DataSourceChannelFactory.class) +public class CacheDataSourceChannelFactory implements DataSourceChannelFactory { + + @Override + public String getName() { + return "cache"; + } + + @Override + public DataSourceChannel create() { + return new CacheDataSourceChannel(); + } +} diff --git a/dolphinscheduler-datasource-plugin/dolphinscheduler-datasource-cache/src/main/java/org/apache/dolphinscheduler/plugin/datasource/cache/CachePooledDataSourceClient.java b/dolphinscheduler-datasource-plugin/dolphinscheduler-datasource-cache/src/main/java/org/apache/dolphinscheduler/plugin/datasource/cache/CachePooledDataSourceClient.java new file mode 100644 index 000000000000..d8f938e04f68 --- /dev/null +++ b/dolphinscheduler-datasource-plugin/dolphinscheduler-datasource-cache/src/main/java/org/apache/dolphinscheduler/plugin/datasource/cache/CachePooledDataSourceClient.java @@ -0,0 +1,30 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You under the Apache License, Version 2.0 + * (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package org.apache.dolphinscheduler.plugin.datasource.cache; + +import org.apache.dolphinscheduler.plugin.datasource.api.client.BasePooledDataSourceClient; +import org.apache.dolphinscheduler.spi.datasource.BaseConnectionParam; +import org.apache.dolphinscheduler.spi.enums.DbType; + +public class CachePooledDataSourceClient extends BasePooledDataSourceClient { + + public CachePooledDataSourceClient(BaseConnectionParam baseConnectionParam, DbType dbType) { + super(baseConnectionParam, dbType); + } + +} diff --git a/dolphinscheduler-datasource-plugin/dolphinscheduler-datasource-cache/src/main/java/org/apache/dolphinscheduler/plugin/datasource/cache/param/CacheConnectionParam.java b/dolphinscheduler-datasource-plugin/dolphinscheduler-datasource-cache/src/main/java/org/apache/dolphinscheduler/plugin/datasource/cache/param/CacheConnectionParam.java new file mode 100644 index 000000000000..49cc31ed6489 --- /dev/null +++ b/dolphinscheduler-datasource-plugin/dolphinscheduler-datasource-cache/src/main/java/org/apache/dolphinscheduler/plugin/datasource/cache/param/CacheConnectionParam.java @@ -0,0 +1,38 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You under the Apache License, Version 2.0 + * (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package org.apache.dolphinscheduler.plugin.datasource.cache.param; + +import org.apache.dolphinscheduler.spi.datasource.BaseConnectionParam; + +public class CacheConnectionParam extends BaseConnectionParam { + + @Override + public String toString() { + return "CacheConnectionParam{" + + "user='" + user + '\'' + + ", password='" + password + '\'' + + ", address='" + address + '\'' + + ", database='" + database + '\'' + + ", jdbcUrl='" + jdbcUrl + '\'' + + ", driverLocation='" + driverLocation + '\'' + + ", driverClassName='" + driverClassName + '\'' + + ", validationQuery='" + validationQuery + '\'' + + ", other='" + other + '\'' + + '}'; + } +} diff --git a/dolphinscheduler-datasource-plugin/dolphinscheduler-datasource-cache/src/main/java/org/apache/dolphinscheduler/plugin/datasource/cache/param/CacheDataSourceParamDTO.java b/dolphinscheduler-datasource-plugin/dolphinscheduler-datasource-cache/src/main/java/org/apache/dolphinscheduler/plugin/datasource/cache/param/CacheDataSourceParamDTO.java new file mode 100644 index 000000000000..5d09c987519e --- /dev/null +++ b/dolphinscheduler-datasource-plugin/dolphinscheduler-datasource-cache/src/main/java/org/apache/dolphinscheduler/plugin/datasource/cache/param/CacheDataSourceParamDTO.java @@ -0,0 +1,43 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You under the Apache License, Version 2.0 + * (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package org.apache.dolphinscheduler.plugin.datasource.cache.param; + +import org.apache.dolphinscheduler.plugin.datasource.api.datasource.BaseDataSourceParamDTO; +import org.apache.dolphinscheduler.spi.enums.DbType; + +public class CacheDataSourceParamDTO extends BaseDataSourceParamDTO { + + @Override + public String toString() { + return "CacheDataSourceParamDTO{" + + "name='" + name + '\'' + + ", note='" + note + '\'' + + ", host='" + host + '\'' + + ", port=" + port + + ", database='" + database + '\'' + + ", userName='" + userName + '\'' + + ", password='" + password + '\'' + + ", other='" + other + '\'' + + '}'; + } + + @Override + public DbType getType() { + return DbType.CACHE; + } +} diff --git a/dolphinscheduler-datasource-plugin/dolphinscheduler-datasource-cache/src/main/java/org/apache/dolphinscheduler/plugin/datasource/cache/param/CacheDataSourceProcessor.java b/dolphinscheduler-datasource-plugin/dolphinscheduler-datasource-cache/src/main/java/org/apache/dolphinscheduler/plugin/datasource/cache/param/CacheDataSourceProcessor.java new file mode 100644 index 000000000000..11edb79fd873 --- /dev/null +++ b/dolphinscheduler-datasource-plugin/dolphinscheduler-datasource-cache/src/main/java/org/apache/dolphinscheduler/plugin/datasource/cache/param/CacheDataSourceProcessor.java @@ -0,0 +1,158 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You under the Apache License, Version 2.0 + * (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package org.apache.dolphinscheduler.plugin.datasource.cache.param; + +import org.apache.dolphinscheduler.common.constants.Constants; +import org.apache.dolphinscheduler.common.constants.DataSourceConstants; +import org.apache.dolphinscheduler.common.utils.JSONUtils; +import org.apache.dolphinscheduler.plugin.datasource.api.datasource.AbstractDataSourceProcessor; +import org.apache.dolphinscheduler.plugin.datasource.api.datasource.BaseDataSourceParamDTO; +import org.apache.dolphinscheduler.plugin.datasource.api.datasource.DataSourceProcessor; +import org.apache.dolphinscheduler.plugin.datasource.api.utils.PasswordUtils; +import org.apache.dolphinscheduler.spi.datasource.BaseConnectionParam; +import org.apache.dolphinscheduler.spi.datasource.ConnectionParam; +import org.apache.dolphinscheduler.spi.enums.DbType; + +import org.apache.commons.collections4.MapUtils; + +import java.net.URLEncoder; +import java.nio.charset.StandardCharsets; +import java.sql.Connection; +import java.sql.DriverManager; +import java.sql.SQLException; +import java.util.Map; + +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; + +import com.google.auto.service.AutoService; + +@AutoService(DataSourceProcessor.class) +public class CacheDataSourceProcessor extends AbstractDataSourceProcessor { + + private static final Logger log = LoggerFactory.getLogger(CacheDataSourceProcessor.class); + + @Override + public BaseDataSourceParamDTO castDatasourceParamDTO(String paramJson) { + return JSONUtils.parseObject(paramJson, CacheDataSourceParamDTO.class); + } + + @Override + public BaseDataSourceParamDTO createDatasourceParamDTO(String connectionJson) { + CacheConnectionParam connectionParams = (CacheConnectionParam) createConnectionParams(connectionJson); + CacheDataSourceParamDTO mysqlDatasourceParamDTO = new CacheDataSourceParamDTO(); + mysqlDatasourceParamDTO.setUserName(connectionParams.getUser()); + mysqlDatasourceParamDTO.setDatabase(connectionParams.getDatabase()); + String address = connectionParams.getAddress(); + String[] hostSeperator = address.split(Constants.DOUBLE_SLASH); + String[] hostPortArray = hostSeperator[hostSeperator.length - 1].split(Constants.COMMA); + mysqlDatasourceParamDTO.setPort(Integer.parseInt(hostPortArray[0].split(Constants.COLON)[1])); + mysqlDatasourceParamDTO.setHost(hostPortArray[0].split(Constants.COLON)[0]); + + return mysqlDatasourceParamDTO; + } + + @Override + public BaseConnectionParam createConnectionParams(BaseDataSourceParamDTO dataSourceParam) { + CacheDataSourceParamDTO cacheDatasourceParam = (CacheDataSourceParamDTO) dataSourceParam; + String address = String.format("%s%s:%s", DataSourceConstants.JDBC_CACHE, cacheDatasourceParam.getHost(), + cacheDatasourceParam.getPort()); + String jdbcUrl = String.format("%s/%s", address, cacheDatasourceParam.getDatabase()); + + CacheConnectionParam CacheConnectionParam = new CacheConnectionParam(); + CacheConnectionParam.setJdbcUrl(jdbcUrl); + CacheConnectionParam.setValidationQuery(getValidationQuery()); + CacheConnectionParam.setDatabase(cacheDatasourceParam.getDatabase()); + CacheConnectionParam.setAddress(address); + CacheConnectionParam.setUser(cacheDatasourceParam.getUserName()); + CacheConnectionParam.setPassword(PasswordUtils.encodePassword(cacheDatasourceParam.getPassword())); + CacheConnectionParam.setDriverClassName(getDatasourceDriver()); + CacheConnectionParam.setOther(cacheDatasourceParam.getOther()); + + return CacheConnectionParam; + } + + @Override + public ConnectionParam createConnectionParams(String connectionJson) { + return JSONUtils.parseObject(connectionJson, CacheConnectionParam.class); + } + + @Override + public String getDatasourceDriver() { + return DataSourceConstants.COM_INTERSYS_JDBC_CACHE_DRIVER; + } + + @Override + public String getValidationQuery() { + return DataSourceConstants.CACHE_VALIDATION_QUERY; + } + + @Override + public String getJdbcUrl(ConnectionParam connectionParam) { + CacheConnectionParam CacheConnectionParam = (CacheConnectionParam) connectionParam; + String jdbcUrl = CacheConnectionParam.getJdbcUrl(); + Map other = CacheConnectionParam.getOther(); + if (MapUtils.isNotEmpty(other)) { + return String.format("%s?%s", jdbcUrl, transformOther(other)); + } + return jdbcUrl; + } + + String transformOther(Map otherMap) { + if (otherMap == null || otherMap.isEmpty()) { + return ""; + } + + StringBuilder sb = new StringBuilder(); + for (Map.Entry entry : otherMap.entrySet()) { + try { + String encodedKey = URLEncoder.encode(entry.getKey(), StandardCharsets.UTF_8.toString()); + String encodedValue = URLEncoder.encode(entry.getValue(), StandardCharsets.UTF_8.toString()); + sb.append(encodedKey).append("=").append(encodedValue).append("&"); + } catch (Exception e) { + log.error("Error encoding key-value pair: {}={}", entry.getKey(), entry.getValue(), e); + } + } + + // 移除最后一个多余的 "&" + if (sb.length() > 0) { + sb.setLength(sb.length() - 1); + } + + return sb.toString(); + } + + @Override + public Connection getConnection(ConnectionParam connectionParam) throws ClassNotFoundException, SQLException { + CacheConnectionParam mysqlConnectionParam = (CacheConnectionParam) connectionParam; + Class.forName(getDatasourceDriver()); + String user = mysqlConnectionParam.getUser(); + String password = PasswordUtils.decodePassword(mysqlConnectionParam.getPassword()); + return DriverManager.getConnection(getJdbcUrl(connectionParam), user, password); + } + + @Override + public DbType getDbType() { + return DbType.CACHE; + } + + @Override + public DataSourceProcessor create() { + return new CacheDataSourceProcessor(); + } +} diff --git a/dolphinscheduler-datasource-plugin/dolphinscheduler-datasource-cache/src/test/java/org/apache/dolphinscheduler/plugin/datasource/cache/CacheDataSourceChannelFactoryTest.java b/dolphinscheduler-datasource-plugin/dolphinscheduler-datasource-cache/src/test/java/org/apache/dolphinscheduler/plugin/datasource/cache/CacheDataSourceChannelFactoryTest.java new file mode 100644 index 000000000000..421a48070e15 --- /dev/null +++ b/dolphinscheduler-datasource-plugin/dolphinscheduler-datasource-cache/src/test/java/org/apache/dolphinscheduler/plugin/datasource/cache/CacheDataSourceChannelFactoryTest.java @@ -0,0 +1,33 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You under the Apache License, Version 2.0 + * (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package org.apache.dolphinscheduler.plugin.datasource.cache; + +import org.apache.dolphinscheduler.spi.datasource.DataSourceChannel; + +import org.junit.jupiter.api.Assertions; +import org.junit.jupiter.api.Test; + +class CacheDataSourceChannelFactoryTest { + + @Test + void testCreate() { + CacheDataSourceChannelFactory sourceChannelFactory = new CacheDataSourceChannelFactory(); + DataSourceChannel dataSourceChannel = sourceChannelFactory.create(); + Assertions.assertNotNull(dataSourceChannel); + } +} diff --git a/dolphinscheduler-datasource-plugin/dolphinscheduler-datasource-cache/src/test/java/org/apache/dolphinscheduler/plugin/datasource/cache/CacheDataSourceChannelTest.java b/dolphinscheduler-datasource-plugin/dolphinscheduler-datasource-cache/src/test/java/org/apache/dolphinscheduler/plugin/datasource/cache/CacheDataSourceChannelTest.java new file mode 100644 index 000000000000..49572b1d831a --- /dev/null +++ b/dolphinscheduler-datasource-plugin/dolphinscheduler-datasource-cache/src/test/java/org/apache/dolphinscheduler/plugin/datasource/cache/CacheDataSourceChannelTest.java @@ -0,0 +1,40 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You under the Apache License, Version 2.0 + * (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package org.apache.dolphinscheduler.plugin.datasource.cache; + +import org.apache.dolphinscheduler.plugin.datasource.cache.param.CacheConnectionParam; +import org.apache.dolphinscheduler.spi.enums.DbType; + +import org.junit.jupiter.api.Assertions; +import org.junit.jupiter.api.Test; +import org.junit.jupiter.api.extension.ExtendWith; +import org.mockito.Mockito; +import org.mockito.junit.jupiter.MockitoExtension; + +@ExtendWith(MockitoExtension.class) +class CacheDataSourceChannelTest { + + @Test + void testCreateDataSourceClient() { + CacheDataSourceChannel sourceChannel = Mockito.mock(CacheDataSourceChannel.class); + CachePooledDataSourceClient dataSourceClient = Mockito.mock(CachePooledDataSourceClient.class); + Mockito.when(sourceChannel.createPooledDataSourceClient(Mockito.any(), Mockito.any())) + .thenReturn(dataSourceClient); + Assertions.assertNotNull(sourceChannel.createPooledDataSourceClient(new CacheConnectionParam(), DbType.CACHE)); + } +} diff --git a/dolphinscheduler-datasource-plugin/dolphinscheduler-datasource-cache/src/test/java/org/apache/dolphinscheduler/plugin/datasource/cache/param/CacheDataSourceProcessorTest.java b/dolphinscheduler-datasource-plugin/dolphinscheduler-datasource-cache/src/test/java/org/apache/dolphinscheduler/plugin/datasource/cache/param/CacheDataSourceProcessorTest.java new file mode 100644 index 000000000000..14308ab1e5a0 --- /dev/null +++ b/dolphinscheduler-datasource-plugin/dolphinscheduler-datasource-cache/src/test/java/org/apache/dolphinscheduler/plugin/datasource/cache/param/CacheDataSourceProcessorTest.java @@ -0,0 +1,129 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You under the Apache License, Version 2.0 + * (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package org.apache.dolphinscheduler.plugin.datasource.cache.param; + +import org.apache.dolphinscheduler.common.constants.DataSourceConstants; +import org.apache.dolphinscheduler.plugin.datasource.api.utils.PasswordUtils; +import org.apache.dolphinscheduler.spi.enums.DbType; + +import java.util.HashMap; +import java.util.Map; + +import org.junit.jupiter.api.Assertions; +import org.junit.jupiter.api.Test; +import org.junit.jupiter.api.extension.ExtendWith; +import org.mockito.InjectMocks; +import org.mockito.MockedStatic; +import org.mockito.Mockito; +import org.mockito.junit.jupiter.MockitoExtension; + +@ExtendWith(MockitoExtension.class) +class CacheDataSourceProcessorTest { + + @InjectMocks + private CacheDataSourceProcessor cacheDataSourceProcessor; + + @Test + public void testTransformOtherWithValidMap() { + Map otherMap = new HashMap<>(); + otherMap.put("key1", "value1"); + otherMap.put("key2", "value2"); + + String result = cacheDataSourceProcessor.transformOther(otherMap); + + Assertions.assertEquals("key1=value1&key2=value2", result); + } + + @Test + public void testTransformOtherWithEmptyMap() { + Map otherMap = new HashMap<>(); + String result = cacheDataSourceProcessor.transformOther(otherMap); + Assertions.assertEquals("", result); + } + + @Test + void testCreateConnectionParams() { + Map props = new HashMap<>(); + props.put("service principal", "null"); + props.put("TransactionIsolationLevel", "TRANSACTION_READ_UNCOMMITTED"); + CacheDataSourceParamDTO mysqlDatasourceParamDTO = new CacheDataSourceParamDTO(); + mysqlDatasourceParamDTO.setUserName("root"); + mysqlDatasourceParamDTO.setPassword("123456"); + mysqlDatasourceParamDTO.setHost("localhost"); + mysqlDatasourceParamDTO.setPort(1972); + mysqlDatasourceParamDTO.setDatabase("default"); + mysqlDatasourceParamDTO.setOther(props); + + try (MockedStatic ignored = Mockito.mockStatic(PasswordUtils.class)) { + Mockito.when(PasswordUtils.encodePassword(Mockito.anyString())).thenReturn("123456"); + CacheConnectionParam connectionParams = (CacheConnectionParam) cacheDataSourceProcessor + .createConnectionParams(mysqlDatasourceParamDTO); + Assertions.assertEquals("jdbc:Cache://localhost:1972", connectionParams.getAddress()); + Assertions.assertEquals("123456", connectionParams.getPassword()); + Assertions.assertEquals("jdbc:Cache://localhost:1972/default", + connectionParams.getJdbcUrl()); + String jdbcUrl = cacheDataSourceProcessor.getJdbcUrl(connectionParams); + Assertions.assertEquals( + "jdbc:Cache://localhost:1972/default?service+principal=null&TransactionIsolationLevel=TRANSACTION_READ_UNCOMMITTED", + jdbcUrl); + + } + } + + @Test + void testCreateConnectionParams2() { + String connectionJson = + "{\"user\":\"root\",\"password\":\"123456\",\"address\":\"jdbc:Cache://localhost:1972\"" + + ",\"database\":\"default\",\"jdbcUrl\":\"jdbc:Cache://localhost:1972/default\"}"; + CacheConnectionParam connectionParams = (CacheConnectionParam) cacheDataSourceProcessor + .createConnectionParams(connectionJson); + Assertions.assertNotNull(connectionJson); + Assertions.assertEquals("root", connectionParams.getUser()); + } + + @Test + void testGetDatasourceDriver() { + Assertions.assertEquals(DataSourceConstants.COM_INTERSYS_JDBC_CACHE_DRIVER, + cacheDataSourceProcessor.getDatasourceDriver()); + } + + @Test + void testGetDbType() { + Assertions.assertEquals(DbType.CACHE, cacheDataSourceProcessor.getDbType()); + } + + @Test + void testGetValidationQuery() { + Assertions.assertEquals(DataSourceConstants.CACHE_VALIDATION_QUERY, + cacheDataSourceProcessor.getValidationQuery()); + } + + @Test + void testGetDatasourceUniqueId() { + CacheConnectionParam mysqlConnectionParam = new CacheConnectionParam(); + mysqlConnectionParam.setJdbcUrl("jdbc:Cache://localhost:1972/default"); + mysqlConnectionParam.setUser("root"); + mysqlConnectionParam.setPassword("123456"); + try (MockedStatic mockedPasswordUtils = Mockito.mockStatic(PasswordUtils.class)) { + Mockito.when(PasswordUtils.encodePassword(Mockito.anyString())).thenReturn("123456"); + Assertions.assertEquals("cache@root@123456@jdbc:Cache://localhost:1972/default", + cacheDataSourceProcessor.getDatasourceUniqueId(mysqlConnectionParam, DbType.CACHE)); + } + } + +} diff --git a/dolphinscheduler-datasource-plugin/dolphinscheduler-datasource-cache/src/test/java/org/apache/dolphinscheduler/plugin/datasource/cache/provider/JDBCDataSourceProviderTest.java b/dolphinscheduler-datasource-plugin/dolphinscheduler-datasource-cache/src/test/java/org/apache/dolphinscheduler/plugin/datasource/cache/provider/JDBCDataSourceProviderTest.java new file mode 100644 index 000000000000..6cf33f9b3b43 --- /dev/null +++ b/dolphinscheduler-datasource-plugin/dolphinscheduler-datasource-cache/src/test/java/org/apache/dolphinscheduler/plugin/datasource/cache/provider/JDBCDataSourceProviderTest.java @@ -0,0 +1,64 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You under the Apache License, Version 2.0 + * (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package org.apache.dolphinscheduler.plugin.datasource.cache.provider; + +import org.apache.dolphinscheduler.plugin.datasource.api.provider.JDBCDataSourceProvider; +import org.apache.dolphinscheduler.plugin.datasource.cache.param.CacheConnectionParam; +import org.apache.dolphinscheduler.spi.enums.DbType; + +import org.junit.jupiter.api.Assertions; +import org.junit.jupiter.api.Test; +import org.junit.jupiter.api.extension.ExtendWith; +import org.mockito.MockedStatic; +import org.mockito.Mockito; +import org.mockito.junit.jupiter.MockitoExtension; + +import com.zaxxer.hikari.HikariDataSource; + +@ExtendWith(MockitoExtension.class) +class JDBCDataSourceProviderTest { + + @Test + void testCreateJdbcDataSource() { + try ( + MockedStatic mockedJDBCDataSourceProvider = + Mockito.mockStatic(JDBCDataSourceProvider.class)) { + HikariDataSource dataSource = Mockito.mock(HikariDataSource.class); + mockedJDBCDataSourceProvider + .when(() -> JDBCDataSourceProvider.createOneSessionJdbcDataSource(Mockito.any(), Mockito.any())) + .thenReturn(dataSource); + Assertions.assertNotNull( + JDBCDataSourceProvider.createOneSessionJdbcDataSource(new CacheConnectionParam(), DbType.CACHE)); + } + } + + @Test + void testCreateOneSessionJdbcDataSource() { + try ( + MockedStatic mockedJDBCDataSourceProvider = + Mockito.mockStatic(JDBCDataSourceProvider.class)) { + HikariDataSource dataSource = Mockito.mock(HikariDataSource.class); + mockedJDBCDataSourceProvider + .when(() -> JDBCDataSourceProvider.createOneSessionJdbcDataSource(Mockito.any(), Mockito.any())) + .thenReturn(dataSource); + Assertions.assertNotNull( + JDBCDataSourceProvider.createOneSessionJdbcDataSource(new CacheConnectionParam(), DbType.CACHE)); + } + } + +} diff --git a/dolphinscheduler-datasource-plugin/dolphinscheduler-datasource-cache/src/test/java/org/apache/dolphinscheduler/plugin/datasource/cache/utils/DataSourceUtilsTest.java b/dolphinscheduler-datasource-plugin/dolphinscheduler-datasource-cache/src/test/java/org/apache/dolphinscheduler/plugin/datasource/cache/utils/DataSourceUtilsTest.java new file mode 100644 index 000000000000..c3b300babff3 --- /dev/null +++ b/dolphinscheduler-datasource-plugin/dolphinscheduler-datasource-cache/src/test/java/org/apache/dolphinscheduler/plugin/datasource/cache/utils/DataSourceUtilsTest.java @@ -0,0 +1,147 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed with + * this work for additional information regarding copyright ownership. + * The ASF licenses this file to You under the Apache License, Version 2.0 + * (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package org.apache.dolphinscheduler.plugin.datasource.cache.utils; + +import org.apache.dolphinscheduler.common.utils.JSONUtils; +import org.apache.dolphinscheduler.common.utils.PropertyUtils; +import org.apache.dolphinscheduler.plugin.datasource.api.plugin.DataSourceClientProvider; +import org.apache.dolphinscheduler.plugin.datasource.api.utils.CommonUtils; +import org.apache.dolphinscheduler.plugin.datasource.api.utils.DataSourceUtils; +import org.apache.dolphinscheduler.plugin.datasource.api.utils.PasswordUtils; +import org.apache.dolphinscheduler.plugin.datasource.cache.param.CacheConnectionParam; +import org.apache.dolphinscheduler.plugin.datasource.cache.param.CacheDataSourceParamDTO; +import org.apache.dolphinscheduler.spi.datasource.ConnectionParam; +import org.apache.dolphinscheduler.spi.enums.DbType; + +import java.sql.Connection; +import java.sql.SQLException; +import java.util.HashMap; +import java.util.Map; +import java.util.concurrent.ExecutionException; + +import org.junit.jupiter.api.Assertions; +import org.junit.jupiter.api.Test; +import org.junit.jupiter.api.extension.ExtendWith; +import org.mockito.MockedStatic; +import org.mockito.Mockito; +import org.mockito.junit.jupiter.MockitoExtension; + +@ExtendWith(MockitoExtension.class) +class DataSourceUtilsTest { + + @Test + void testCheckDatasourceParam() { + CacheDataSourceParamDTO cacheDataSourceParamDTO = new CacheDataSourceParamDTO(); + cacheDataSourceParamDTO.setHost("localhost"); + cacheDataSourceParamDTO.setDatabase("default"); + Map other = new HashMap<>(); + other.put("reconnect", "true"); + cacheDataSourceParamDTO.setOther(other); + DataSourceUtils.checkDatasourceParam(cacheDataSourceParamDTO); + Assertions.assertTrue(true); + } + + @Test + void testBuildConnectionParams() { + CacheDataSourceParamDTO cacheDataSourceParamDTO = new CacheDataSourceParamDTO(); + cacheDataSourceParamDTO.setHost("localhost"); + cacheDataSourceParamDTO.setDatabase("default"); + cacheDataSourceParamDTO.setUserName("root"); + cacheDataSourceParamDTO.setPort(1972); + cacheDataSourceParamDTO.setPassword("123456"); + + try ( + MockedStatic mockedStaticPasswordUtils = Mockito.mockStatic(PasswordUtils.class); + MockedStatic mockedStaticCommonUtils = Mockito.mockStatic(CommonUtils.class)) { + mockedStaticPasswordUtils.when(() -> PasswordUtils.encodePassword(Mockito.anyString())) + .thenReturn("123456"); + mockedStaticCommonUtils.when(CommonUtils::getKerberosStartupState).thenReturn(false); + ConnectionParam connectionParam = DataSourceUtils.buildConnectionParams(cacheDataSourceParamDTO); + Assertions.assertNotNull(connectionParam); + } + } + + @Test + void testBuildConnectionParams2() { + CacheDataSourceParamDTO cacheDatasourceParamDTO = new CacheDataSourceParamDTO(); + cacheDatasourceParamDTO.setHost("localhost"); + cacheDatasourceParamDTO.setDatabase("default"); + cacheDatasourceParamDTO.setUserName("root"); + cacheDatasourceParamDTO.setPort(1972); + cacheDatasourceParamDTO.setPassword("123456"); + ConnectionParam connectionParam = + DataSourceUtils.buildConnectionParams(DbType.CACHE, JSONUtils.toJsonString(cacheDatasourceParamDTO)); + Assertions.assertNotNull(connectionParam); + } + + @Test + void testGetConnection() throws ExecutionException, SQLException { + try ( + MockedStatic mockedStaticPropertyUtils = Mockito.mockStatic(PropertyUtils.class); + MockedStatic mockedStaticDataSourceClientProvider = + Mockito.mockStatic(DataSourceClientProvider.class)) { + mockedStaticPropertyUtils.when(() -> PropertyUtils.getLong("kerberos.expire.time", 24L)).thenReturn(24L); + + Connection connection = Mockito.mock(Connection.class); + + Mockito.when(DataSourceClientProvider.getAdHocConnection(Mockito.any(), Mockito.any())) + .thenReturn(connection); + CacheConnectionParam connectionParam = new CacheConnectionParam(); + connectionParam.setUser("root"); + connectionParam.setPassword("123456"); + + Assertions.assertNotNull(connection); + } + } + + @Test + void testGetJdbcUrl() { + CacheConnectionParam cacheConnectionParam = new CacheConnectionParam(); + cacheConnectionParam.setJdbcUrl("jdbc:Cache://localhost:1972"); + String jdbcUrl = DataSourceUtils.getJdbcUrl(DbType.CACHE, cacheConnectionParam); + Assertions.assertEquals( + "jdbc:Cache://localhost:1972", + jdbcUrl); + } + + @Test + void testBuildDatasourceParamDTO() { + CacheConnectionParam connectionParam = new CacheConnectionParam(); + connectionParam.setJdbcUrl( + "jdbc:Cache://localhost:1972?reconnect=true"); + connectionParam.setAddress("jdbc:mysql://localhost:1972"); + connectionParam.setUser("root"); + connectionParam.setPassword("123456"); + + Assertions.assertNotNull( + DataSourceUtils.buildDatasourceParamDTO(DbType.CACHE, JSONUtils.toJsonString(connectionParam))); + + } + + @Test + void testGetDatasourceProcessor() { + Assertions.assertNotNull(DataSourceUtils.getDatasourceProcessor(DbType.CACHE)); + } + + @Test + void testGetDatasourceProcessorError() { + Assertions.assertThrows(Exception.class, () -> { + DataSourceUtils.getDatasourceProcessor(null); + }); + } +} diff --git a/dolphinscheduler-datasource-plugin/pom.xml b/dolphinscheduler-datasource-plugin/pom.xml index 313b3cdea7b8..f84a8ab64efe 100644 --- a/dolphinscheduler-datasource-plugin/pom.xml +++ b/dolphinscheduler-datasource-plugin/pom.xml @@ -57,6 +57,7 @@ dolphinscheduler-datasource-k8s dolphinscheduler-datasource-hana dolphinscheduler-datasource-aliyunserverlessspark + dolphinscheduler-datasource-cache diff --git a/dolphinscheduler-spi/src/main/java/org/apache/dolphinscheduler/spi/enums/DbType.java b/dolphinscheduler-spi/src/main/java/org/apache/dolphinscheduler/spi/enums/DbType.java index 639f8d573983..3ec4da5697ac 100644 --- a/dolphinscheduler-spi/src/main/java/org/apache/dolphinscheduler/spi/enums/DbType.java +++ b/dolphinscheduler-spi/src/main/java/org/apache/dolphinscheduler/spi/enums/DbType.java @@ -57,10 +57,9 @@ public enum DbType { DORIS(23, "doris", "doris"), ZEPPELIN(24, "zeppelin", "zeppelin"), SAGEMAKER(25, "sagemaker", "sagemaker"), - K8S(26, "k8s", "k8s"), - - ALIYUN_SERVERLESS_SPARK(27, "aliyun_serverless_spark", "aliyun serverless spark"); + ALIYUN_SERVERLESS_SPARK(27, "aliyun_serverless_spark", "aliyun serverless spark"), + CACHE(28, "cache", "Caché"); private static final Map DB_TYPE_MAP = Arrays.stream(DbType.values()).collect(toMap(DbType::getCode, Functions.identity())); diff --git a/dolphinscheduler-ui/src/service/modules/data-source/types.ts b/dolphinscheduler-ui/src/service/modules/data-source/types.ts index 135a8cc55393..2f32c9388273 100644 --- a/dolphinscheduler-ui/src/service/modules/data-source/types.ts +++ b/dolphinscheduler-ui/src/service/modules/data-source/types.ts @@ -42,6 +42,7 @@ type IDataBase = | 'ZEPPELIN' | 'SAGEMAKER' | 'K8S' + | 'CACHE' | 'ALIYUN_SERVERLESS_SPARK' type IDataBaseLabel = @@ -66,6 +67,7 @@ type IDataBaseLabel = | 'ZEPPELIN' | 'SAGEMAKER' | 'K8S' + | 'CACHE' | 'ALIYUN_SERVERLESS_SPARK' interface IDataSource { diff --git a/dolphinscheduler-ui/src/views/datasource/list/use-form.ts b/dolphinscheduler-ui/src/views/datasource/list/use-form.ts index 4b229868a642..a6cc0e1aff42 100644 --- a/dolphinscheduler-ui/src/views/datasource/list/use-form.ts +++ b/dolphinscheduler-ui/src/views/datasource/list/use-form.ts @@ -493,6 +493,11 @@ export const datasourceType: IDataBaseOptionKeys = { label: 'K8S', defaultPort: 6443 }, + CACHE: { + value: 'CACHE', + label: 'CACHE', + defaultPort: 1972 + }, ALIYUN_SERVERLESS_SPARK: { value: 'ALIYUN_SERVERLESS_SPARK', label: 'ALIYUN_SERVERLESS_SPARK', diff --git a/dolphinscheduler-ui/src/views/projects/task/components/node/fields/use-datasource.ts b/dolphinscheduler-ui/src/views/projects/task/components/node/fields/use-datasource.ts index 907ee147b309..3348ccf0bc23 100644 --- a/dolphinscheduler-ui/src/views/projects/task/components/node/fields/use-datasource.ts +++ b/dolphinscheduler-ui/src/views/projects/task/components/node/fields/use-datasource.ts @@ -162,6 +162,11 @@ export function useDatasource( id: 27, code: 'ALIYUN_SERVERLESS_SPARK', disabled: false + }, + { + id: 28, + code: 'CACHE', + disabled: false } ] From fb2881ae52f44d96615fcef6fc598571c977d4c4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=A4=8F=E9=BE=99=E9=BE=99?= Date: Tue, 26 Nov 2024 16:39:26 +0800 Subject: [PATCH 2/4] =?UTF-8?q?[DSIP-84][Feature]=20Update=20the=20Cach?= =?UTF-8?q?=C3=A9=20datasource=20doc(#16833)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- docs/docs/en/guide/datasource/cache.md | 10 ++++++++-- docs/docs/zh/guide/datasource/cache.md | 12 +++++++++++- 2 files changed, 19 insertions(+), 3 deletions(-) diff --git a/docs/docs/en/guide/datasource/cache.md b/docs/docs/en/guide/datasource/cache.md index 372bcdcc7a3a..829400ff3a6a 100644 --- a/docs/docs/en/guide/datasource/cache.md +++ b/docs/docs/en/guide/datasource/cache.md @@ -18,6 +18,12 @@ ## Native Supported -No, read section example in [datasource-setting](../installation/datasource-setting.md) `DataSource Center` section to activate -this datasource. +Yes, could use this datasource by default. +## Data Source Information + +> InterSystems Caché® is a high-performance database that powers transaction processing applications around the world. It is used for everything from mapping a billion stars in the Milky Way, to processing a billion equity trades in a day, to managing smart energy grids. + +For more Caché related documentation, please refer to +[Official Website](https://www.intersystems.com/products/cache/) +[Official Documentation](https://docs.intersystems.com/latest/csp/docbook/DocBook.UI.Page.cls?KEY=BGJD_coding) diff --git a/docs/docs/zh/guide/datasource/cache.md b/docs/docs/zh/guide/datasource/cache.md index 5ad9da75a134..9b1b3942bf62 100644 --- a/docs/docs/zh/guide/datasource/cache.md +++ b/docs/docs/zh/guide/datasource/cache.md @@ -14,4 +14,14 @@ ## 是否原生支持 -否,使用前需请参考 [数据源配置](../installation/datasource-setting.md) 中的 "数据源中心" 章节激活数据源。 +是,数据源不需要任务附加操作即可使用。 + +## 数据源信息 + +> InterSystems Caché® 是一款高性能数据库, +> 为全球交易处理应用程序提供支持。它用于各种用途, +> 从绘制银河系十亿颗恒星的地图,到一天处理十亿笔股票交易,再到管理智能电网。 + +更多的Caché相关文档,请参考 +[官方网站](https://www.intersystems.com/products/cache/) +[官方文档](https://docs.intersystems.com/latest/csp/docbook/DocBook.UI.Page.cls?KEY=BGJD_coding) From 7012bdd0542b6c494ff3209df32b80647edb033c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=A4=8F=E9=BE=99=E9=BE=99?= Date: Tue, 26 Nov 2024 17:06:18 +0800 Subject: [PATCH 3/4] =?UTF-8?q?[DSIP-84][Feature]=20Update=20the=20connect?= =?UTF-8?q?ion=20address=20of=20Cach=C3=A9=20datasource(#16833)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../cache/param/CacheDataSourceProcessor.java | 26 ++++++++++++++++--- .../param/CacheDataSourceProcessorTest.java | 17 ++++++++++++ 2 files changed, 39 insertions(+), 4 deletions(-) diff --git a/dolphinscheduler-datasource-plugin/dolphinscheduler-datasource-cache/src/main/java/org/apache/dolphinscheduler/plugin/datasource/cache/param/CacheDataSourceProcessor.java b/dolphinscheduler-datasource-plugin/dolphinscheduler-datasource-cache/src/main/java/org/apache/dolphinscheduler/plugin/datasource/cache/param/CacheDataSourceProcessor.java index 11edb79fd873..1b3b3a29e28b 100644 --- a/dolphinscheduler-datasource-plugin/dolphinscheduler-datasource-cache/src/main/java/org/apache/dolphinscheduler/plugin/datasource/cache/param/CacheDataSourceProcessor.java +++ b/dolphinscheduler-datasource-plugin/dolphinscheduler-datasource-cache/src/main/java/org/apache/dolphinscheduler/plugin/datasource/cache/param/CacheDataSourceProcessor.java @@ -59,12 +59,30 @@ public BaseDataSourceParamDTO createDatasourceParamDTO(String connectionJson) { mysqlDatasourceParamDTO.setUserName(connectionParams.getUser()); mysqlDatasourceParamDTO.setDatabase(connectionParams.getDatabase()); String address = connectionParams.getAddress(); + try { + String[] hostPortSplit = getHostPortSplit(address); + mysqlDatasourceParamDTO.setPort(Integer.parseInt(hostPortSplit[1])); + mysqlDatasourceParamDTO.setHost(hostPortSplit[0]); + } catch (NumberFormatException e) { + log.error("Invalid port number", e); + } + return mysqlDatasourceParamDTO; + } + + public static String[] getHostPortSplit(String address) { String[] hostSeperator = address.split(Constants.DOUBLE_SLASH); + if (hostSeperator.length < 2) { + log.error("Invalid address format"); + } String[] hostPortArray = hostSeperator[hostSeperator.length - 1].split(Constants.COMMA); - mysqlDatasourceParamDTO.setPort(Integer.parseInt(hostPortArray[0].split(Constants.COLON)[1])); - mysqlDatasourceParamDTO.setHost(hostPortArray[0].split(Constants.COLON)[0]); - - return mysqlDatasourceParamDTO; + if (hostPortArray.length < 1) { + log.error("Invalid hostPortArray format"); + } + String[] hostPortSplit = hostPortArray[0].split(Constants.COLON); + if (hostPortSplit.length < 2) { + log.error("Invalid hostPortSplit format"); + } + return hostPortSplit; } @Override diff --git a/dolphinscheduler-datasource-plugin/dolphinscheduler-datasource-cache/src/test/java/org/apache/dolphinscheduler/plugin/datasource/cache/param/CacheDataSourceProcessorTest.java b/dolphinscheduler-datasource-plugin/dolphinscheduler-datasource-cache/src/test/java/org/apache/dolphinscheduler/plugin/datasource/cache/param/CacheDataSourceProcessorTest.java index 14308ab1e5a0..0069e553ac2c 100644 --- a/dolphinscheduler-datasource-plugin/dolphinscheduler-datasource-cache/src/test/java/org/apache/dolphinscheduler/plugin/datasource/cache/param/CacheDataSourceProcessorTest.java +++ b/dolphinscheduler-datasource-plugin/dolphinscheduler-datasource-cache/src/test/java/org/apache/dolphinscheduler/plugin/datasource/cache/param/CacheDataSourceProcessorTest.java @@ -21,6 +21,7 @@ import org.apache.dolphinscheduler.plugin.datasource.api.utils.PasswordUtils; import org.apache.dolphinscheduler.spi.enums.DbType; +import java.util.Arrays; import java.util.HashMap; import java.util.Map; @@ -126,4 +127,20 @@ void testGetDatasourceUniqueId() { } } + @Test + void testGetHostPortSplit() { + String address = "jdbc:Cache://localhost:1972"; + String[] expected = {"localhost", "1972"}; + String[] result = CacheDataSourceProcessor.getHostPortSplit(address); + Assertions.assertArrayEquals(expected, result); + } + + @Test + void testGetHostPortSplit_InvalidFormat() { + String invalidAddress = "invalid-format"; + String[] hostPortSplit = CacheDataSourceProcessor.getHostPortSplit(invalidAddress); + Assertions.assertEquals("[invalid-format]", Arrays.toString(hostPortSplit)); + + } + } From df0f8637ca4c747047e2eb0c40918bf7066f476a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=A4=8F=E9=BE=99=E9=BE=99?= Date: Thu, 28 Nov 2024 14:17:06 +0800 Subject: [PATCH 4/4] =?UTF-8?q?[DSIP-84][Feature]=20Update=20the=20Cach?= =?UTF-8?q?=C3=A9=20datasource=20doc(#16833)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- docs/docs/en/guide/datasource/cache.md | 2 +- docs/img/new_ui/dev/datasource/cache-en.png | Bin 0 -> 160396 bytes 2 files changed, 1 insertion(+), 1 deletion(-) create mode 100644 docs/img/new_ui/dev/datasource/cache-en.png diff --git a/docs/docs/en/guide/datasource/cache.md b/docs/docs/en/guide/datasource/cache.md index 829400ff3a6a..7ba4e2d01844 100644 --- a/docs/docs/en/guide/datasource/cache.md +++ b/docs/docs/en/guide/datasource/cache.md @@ -1,6 +1,6 @@ # CACHE -![cache](../../../../img/new_ui/dev/datasource/cache.png) +![cache](../../../../img/new_ui/dev/datasource/cache-en.png) ## Datasource Parameters diff --git a/docs/img/new_ui/dev/datasource/cache-en.png b/docs/img/new_ui/dev/datasource/cache-en.png new file mode 100644 index 0000000000000000000000000000000000000000..03f102cc53afd1f70413a7658d54f67aee91e794 GIT binary patch literal 160396 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�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 nFg9go@G?#RTNt~bkGrCJ7p2#8l#@31h7Nhv