From f532088e38294281fa58e0f80ae54f4dc96e0c81 Mon Sep 17 00:00:00 2001 From: jerryjzhang Date: Tue, 4 Mar 2025 10:11:00 +0800 Subject: [PATCH 1/3] (feature)(releaes)Start 1.0.0-SNAPSHOT release. --- .../main/java/com/tencent/supersonic/common/pojo/Order.java | 1 + .../headless/core/translator/DefaultSemanticTranslator.java | 3 ++- .../supersonic/headless/server/rest/DataSetController.java | 2 ++ .../headless/server/service/impl/DataSetServiceImpl.java | 4 ++-- pom.xml | 2 +- 5 files changed, 8 insertions(+), 4 deletions(-) diff --git a/common/src/main/java/com/tencent/supersonic/common/pojo/Order.java b/common/src/main/java/com/tencent/supersonic/common/pojo/Order.java index 3aace69e1..c607f78fb 100644 --- a/common/src/main/java/com/tencent/supersonic/common/pojo/Order.java +++ b/common/src/main/java/com/tencent/supersonic/common/pojo/Order.java @@ -3,6 +3,7 @@ package com.tencent.supersonic.common.pojo; import com.google.common.base.Objects; import jakarta.validation.constraints.NotBlank; import lombok.Data; + import java.io.Serializable; import static com.tencent.supersonic.common.pojo.Constants.ASC_UPPER; diff --git a/headless/core/src/main/java/com/tencent/supersonic/headless/core/translator/DefaultSemanticTranslator.java b/headless/core/src/main/java/com/tencent/supersonic/headless/core/translator/DefaultSemanticTranslator.java index f61d2f8bb..c6b2c8abe 100644 --- a/headless/core/src/main/java/com/tencent/supersonic/headless/core/translator/DefaultSemanticTranslator.java +++ b/headless/core/src/main/java/com/tencent/supersonic/headless/core/translator/DefaultSemanticTranslator.java @@ -1,6 +1,7 @@ package com.tencent.supersonic.headless.core.translator; import com.tencent.supersonic.common.calcite.SqlMergeWithUtils; +import com.tencent.supersonic.common.jsqlparser.SqlSelectHelper; import com.tencent.supersonic.common.pojo.enums.EngineType; import com.tencent.supersonic.headless.api.pojo.response.QueryState; import com.tencent.supersonic.headless.core.pojo.OntologyQuery; @@ -73,7 +74,7 @@ public class DefaultSemanticTranslator implements SemanticTranslator { String finalSql = null; if (sqlQuery.isSupportWith()) { EngineType engineType = queryStatement.getOntology().getDatabaseType(); - if (!SqlMergeWithUtils.hasWith(engineType, ontologyOuterSql)) { + if (!SqlSelectHelper.hasWith(ontologyOuterSql)) { finalSql = "with " + tables.stream() .map(t -> String.format("%s as (%s)", t.getLeft(), t.getRight())) .collect(Collectors.joining(",")) + "\n" + ontologyOuterSql; diff --git a/headless/server/src/main/java/com/tencent/supersonic/headless/server/rest/DataSetController.java b/headless/server/src/main/java/com/tencent/supersonic/headless/server/rest/DataSetController.java index 3d3822da9..796cef2e0 100644 --- a/headless/server/src/main/java/com/tencent/supersonic/headless/server/rest/DataSetController.java +++ b/headless/server/src/main/java/com/tencent/supersonic/headless/server/rest/DataSetController.java @@ -2,6 +2,7 @@ package com.tencent.supersonic.headless.server.rest; import com.tencent.supersonic.auth.api.authentication.utils.UserHolder; import com.tencent.supersonic.common.pojo.User; +import com.tencent.supersonic.common.pojo.enums.StatusEnum; import com.tencent.supersonic.headless.api.pojo.MetaFilter; import com.tencent.supersonic.headless.api.pojo.request.DataSetReq; import com.tencent.supersonic.headless.api.pojo.response.DataSetResp; @@ -51,6 +52,7 @@ public class DataSetController { public List getDataSetList(@RequestParam("domainId") Long domainId) { MetaFilter metaFilter = new MetaFilter(); metaFilter.setDomainId(domainId); + metaFilter.setStatus(StatusEnum.ONLINE.getCode()); return dataSetService.getDataSetList(metaFilter); } diff --git a/headless/server/src/main/java/com/tencent/supersonic/headless/server/service/impl/DataSetServiceImpl.java b/headless/server/src/main/java/com/tencent/supersonic/headless/server/service/impl/DataSetServiceImpl.java index 3df28ce9f..9c1fee36e 100644 --- a/headless/server/src/main/java/com/tencent/supersonic/headless/server/service/impl/DataSetServiceImpl.java +++ b/headless/server/src/main/java/com/tencent/supersonic/headless/server/service/impl/DataSetServiceImpl.java @@ -56,9 +56,9 @@ public class DataSetServiceImpl extends ServiceImpl public DataSetResp save(DataSetReq dataSetReq, User user) { dataSetReq.createdBy(user.getName()); DataSetDO dataSetDO = convert(dataSetReq); - dataSetDO.setStatus(StatusEnum.ONLINE.getCode()); + dataSetDO.setStatus(dataSetReq.getStatus() != null ? dataSetReq.getStatus() + : StatusEnum.ONLINE.getCode()); DataSetResp dataSetResp = convert(dataSetDO); - // conflictCheck(dataSetResp); save(dataSetDO); dataSetResp.setId(dataSetDO.getId()); return dataSetResp; diff --git a/pom.xml b/pom.xml index 1c9623f23..954ff9cc7 100644 --- a/pom.xml +++ b/pom.xml @@ -26,7 +26,7 @@ - 0.9.10 + 1.0.0-SNAPSHOT 21 21 21 From 8f361f99320918cf262bfd635547fb9b5ea0473b Mon Sep 17 00:00:00 2001 From: jerryjzhang Date: Tue, 4 Mar 2025 17:18:51 +0800 Subject: [PATCH 2/3] (improvement)(auth)Use interface in place of impl class. --- .../interceptor/AuthenticationInterceptor.java | 4 ++-- .../interceptor/DefaultAuthenticationInterceptor.java | 11 +++-------- 2 files changed, 5 insertions(+), 10 deletions(-) diff --git a/auth/authentication/src/main/java/com/tencent/supersonic/auth/authentication/interceptor/AuthenticationInterceptor.java b/auth/authentication/src/main/java/com/tencent/supersonic/auth/authentication/interceptor/AuthenticationInterceptor.java index a395c2aac..24ff43318 100644 --- a/auth/authentication/src/main/java/com/tencent/supersonic/auth/authentication/interceptor/AuthenticationInterceptor.java +++ b/auth/authentication/src/main/java/com/tencent/supersonic/auth/authentication/interceptor/AuthenticationInterceptor.java @@ -1,7 +1,7 @@ package com.tencent.supersonic.auth.authentication.interceptor; import com.tencent.supersonic.auth.api.authentication.config.AuthenticationConfig; -import com.tencent.supersonic.auth.authentication.service.UserServiceImpl; +import com.tencent.supersonic.auth.api.authentication.service.UserService; import com.tencent.supersonic.auth.authentication.utils.TokenService; import lombok.extern.slf4j.Slf4j; import org.apache.commons.lang3.StringUtils; @@ -16,7 +16,7 @@ public abstract class AuthenticationInterceptor implements HandlerInterceptor { protected AuthenticationConfig authenticationConfig; - protected UserServiceImpl userServiceImpl; + protected UserService userService; protected TokenService tokenService; diff --git a/auth/authentication/src/main/java/com/tencent/supersonic/auth/authentication/interceptor/DefaultAuthenticationInterceptor.java b/auth/authentication/src/main/java/com/tencent/supersonic/auth/authentication/interceptor/DefaultAuthenticationInterceptor.java index 47886aa94..0942305c5 100644 --- a/auth/authentication/src/main/java/com/tencent/supersonic/auth/authentication/interceptor/DefaultAuthenticationInterceptor.java +++ b/auth/authentication/src/main/java/com/tencent/supersonic/auth/authentication/interceptor/DefaultAuthenticationInterceptor.java @@ -3,7 +3,7 @@ package com.tencent.supersonic.auth.authentication.interceptor; import com.tencent.supersonic.auth.api.authentication.annotation.AuthenticationIgnore; import com.tencent.supersonic.auth.api.authentication.config.AuthenticationConfig; import com.tencent.supersonic.auth.api.authentication.pojo.UserWithPassword; -import com.tencent.supersonic.auth.authentication.service.UserServiceImpl; +import com.tencent.supersonic.auth.api.authentication.service.UserService; import com.tencent.supersonic.auth.authentication.utils.TokenService; import com.tencent.supersonic.common.pojo.exception.AccessException; import com.tencent.supersonic.common.util.ContextUtils; @@ -16,12 +16,7 @@ import org.springframework.web.method.HandlerMethod; import java.lang.reflect.Method; import java.util.Optional; -import static com.tencent.supersonic.auth.api.authentication.constant.UserConstants.TOKEN_IS_ADMIN; -import static com.tencent.supersonic.auth.api.authentication.constant.UserConstants.TOKEN_USER_DISPLAY_NAME; -import static com.tencent.supersonic.auth.api.authentication.constant.UserConstants.TOKEN_USER_EMAIL; -import static com.tencent.supersonic.auth.api.authentication.constant.UserConstants.TOKEN_USER_ID; -import static com.tencent.supersonic.auth.api.authentication.constant.UserConstants.TOKEN_USER_NAME; -import static com.tencent.supersonic.auth.api.authentication.constant.UserConstants.TOKEN_USER_PASSWORD; +import static com.tencent.supersonic.auth.api.authentication.constant.UserConstants.*; @Slf4j public class DefaultAuthenticationInterceptor extends AuthenticationInterceptor { @@ -30,7 +25,7 @@ public class DefaultAuthenticationInterceptor extends AuthenticationInterceptor public boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler) throws AccessException { authenticationConfig = ContextUtils.getBean(AuthenticationConfig.class); - userServiceImpl = ContextUtils.getBean(UserServiceImpl.class); + userService = ContextUtils.getBean(UserService.class); tokenService = ContextUtils.getBean(TokenService.class); if (!authenticationConfig.isEnabled()) { return true; From f1bc18ef651d85062664f03e83cc1476027dee16 Mon Sep 17 00:00:00 2001 From: coosir Date: Wed, 5 Mar 2025 08:36:04 +0800 Subject: [PATCH 3/3] Update docker-compose.yml (#2127) fix data persistence issue --- docker/docker-compose.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/docker/docker-compose.yml b/docker/docker-compose.yml index 8f7d67267..174fcff4d 100644 --- a/docker/docker-compose.yml +++ b/docker/docker-compose.yml @@ -12,7 +12,7 @@ services: ports: - "15432:5432" # volumes: -# - postgres_data:/var/lib/postgresql +# - postgres_data:/var/lib/postgresql/data networks: - supersonic_network dns: @@ -62,4 +62,4 @@ services: # supersonic_data: networks: - supersonic_network: \ No newline at end of file + supersonic_network: