[improvement][headless] Fix permission exception loss (#1764) (#1782)

This commit is contained in:
jipeli
2024-10-11 12:00:41 +08:00
committed by GitHub
parent c477031a0c
commit 50b0036d0f
5 changed files with 47 additions and 19 deletions

View File

@@ -79,23 +79,20 @@ public class SqlExecutor implements ChatQueryExecutor {
queryResult.setChatContext(parseInfo);
queryResult.setQueryMode(parseInfo.getQueryMode());
queryResult.setQueryTimeCost(System.currentTimeMillis() - startTime);
try {
SemanticQueryResp queryResp =
semanticLayer.queryByReq(sqlReq, executeContext.getUser());
if (queryResp != null) {
queryResult.setQueryAuthorization(queryResp.getQueryAuthorization());
queryResult.setQuerySql(queryResp.getSql());
queryResult.setQueryResults(queryResp.getResultList());
queryResult.setQueryColumns(queryResp.getColumns());
queryResult.setQueryState(QueryState.SUCCESS);
chatCtx.setParseInfo(parseInfo);
chatContextService.updateContext(chatCtx);
} else {
queryResult.setQueryState(QueryState.INVALID);
}
} catch (Exception e) {
queryResult.setErrorMsg(e.getMessage());
SemanticQueryResp queryResp = semanticLayer.queryByReq(sqlReq, executeContext.getUser());
if (queryResp != null) {
queryResult.setQueryAuthorization(queryResp.getQueryAuthorization());
queryResult.setQuerySql(queryResp.getSql());
queryResult.setQueryResults(queryResp.getResultList());
queryResult.setQueryColumns(queryResp.getColumns());
queryResult.setQueryState(QueryState.SUCCESS);
queryResult.setErrorMsg(queryResp.getErrorMsg());
chatCtx.setParseInfo(parseInfo);
chatContextService.updateContext(chatCtx);
} else {
queryResult.setQueryState(QueryState.INVALID);
}
return queryResult;
}
}