[fix][headless]Fix table name of SqlQuery.
Some checks are pending
supersonic CentOS CI / build (21) (push) Waiting to run
supersonic mac CI / build (21) (push) Waiting to run
supersonic ubuntu CI / build (21) (push) Waiting to run
supersonic windows CI / build (21) (push) Waiting to run

This commit is contained in:
jerryjzhang
2025-02-03 02:21:45 +08:00
parent 91768892cf
commit 348d6df6a2
4 changed files with 7 additions and 9 deletions

View File

@@ -2,7 +2,6 @@ package com.tencent.supersonic.headless.core.translator.parser;
import com.tencent.supersonic.common.jsqlparser.SqlReplaceHelper;
import com.tencent.supersonic.common.jsqlparser.SqlSelectHelper;
import com.tencent.supersonic.common.pojo.Constants;
import com.tencent.supersonic.headless.api.pojo.response.DimSchemaResp;
import com.tencent.supersonic.headless.api.pojo.response.SemanticSchemaResp;
import com.tencent.supersonic.headless.core.pojo.OntologyQuery;
@@ -41,9 +40,8 @@ public class DimExpressionParser implements QueryParser {
Map<String, String> bizName2Expr = getDimensionExpressions(semanticSchema, ontologyQuery);
if (!CollectionUtils.isEmpty(bizName2Expr)) {
String sql = SqlReplaceHelper.replaceSqlByExpression(
Constants.TABLE_PREFIX + queryStatement.getDataSetId(), sqlQuery.getSql(),
bizName2Expr);
String sql = SqlReplaceHelper.replaceSqlByExpression(sqlQuery.getTable(),
sqlQuery.getSql(), bizName2Expr);
sqlQuery.setSql(sql);
}
}

View File

@@ -2,7 +2,6 @@ package com.tencent.supersonic.headless.core.translator.parser;
import com.tencent.supersonic.common.jsqlparser.SqlReplaceHelper;
import com.tencent.supersonic.common.jsqlparser.SqlSelectHelper;
import com.tencent.supersonic.common.pojo.Constants;
import com.tencent.supersonic.headless.api.pojo.Measure;
import com.tencent.supersonic.headless.api.pojo.enums.MetricDefineType;
import com.tencent.supersonic.headless.api.pojo.response.MetricSchemaResp;
@@ -40,9 +39,8 @@ public class MetricExpressionParser implements QueryParser {
Map<String, String> bizName2Expr = getMetricExpressions(semanticSchema, ontologyQuery);
if (!CollectionUtils.isEmpty(bizName2Expr)) {
String sql = SqlReplaceHelper.replaceSqlByExpression(
Constants.TABLE_PREFIX + queryStatement.getDataSetId(), sqlQuery.getSql(),
bizName2Expr);
String sql = SqlReplaceHelper.replaceSqlByExpression(sqlQuery.getTable(),
sqlQuery.getSql(), bizName2Expr);
sqlQuery.setSql(sql);
}
}

View File

@@ -77,7 +77,7 @@ public class SqlQueryParser implements QueryParser {
if (StringUtils.isEmpty(tableName)) {
return;
}
sqlQuery.setTable(tableName.toLowerCase());
sqlQuery.setTable(Constants.TABLE_PREFIX + queryStatement.getDataSetId());
SqlGenerateUtils sqlGenerateUtils = ContextUtils.getBean(SqlGenerateUtils.class);
SemanticSchemaResp semanticSchema = queryStatement.getSemanticSchema();
if (!sqlGenerateUtils.isSupportWith(

View File

@@ -2,6 +2,7 @@ package com.tencent.supersonic.headless.server.facade.service.impl;
import com.google.common.collect.Lists;
import com.google.common.collect.Sets;
import com.tencent.supersonic.common.pojo.Constants;
import com.tencent.supersonic.common.pojo.QueryColumn;
import com.tencent.supersonic.common.pojo.User;
import com.tencent.supersonic.common.pojo.enums.TaskStatusEnum;
@@ -323,6 +324,7 @@ public class S2SemanticLayerService implements SemanticLayerService {
DataSetResp dataSetResp = dataSetService.getDataSet(querySqlReq.getDataSetId());
queryStatement.setDataSetId(dataSetResp.getId());
queryStatement.setDataSetName(dataSetResp.getName());
sqlQuery.setTable(Constants.TABLE_PREFIX + dataSetResp.getId());
}
return queryStatement;
}