This is an automated email from the ASF dual-hosted git repository. alsuliman pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/asterixdb.git
commit d4f3aba32bb71a8a370bcaea332a1e5c576af4b3 Author: Michael Blow <[email protected]> AuthorDate: Sun Apr 4 11:33:34 2021 -0400 [NO ISSUE][*DB][MISC] Avoid appending trailing ; on statements ending with a ; Change-Id: Iae6db76195ad834f01c8e35fc8a30d3b7148764c Reviewed-on: https://asterix-gerrit.ics.uci.edu/c/asterixdb/+/10883 Integration-Tests: Jenkins <[email protected]> Tested-by: Jenkins <[email protected]> Reviewed-by: Michael Blow <[email protected]> Reviewed-by: Till Westmann <[email protected]> Contrib: Michael Blow <[email protected]> --- .../asterix/api/http/server/QueryServiceServlet.java | 14 ++++++++------ 1 file changed, 8 insertions(+), 6 deletions(-) diff --git a/asterixdb/asterix-app/src/main/java/org/apache/asterix/api/http/server/QueryServiceServlet.java b/asterixdb/asterix-app/src/main/java/org/apache/asterix/api/http/server/QueryServiceServlet.java index 5153ebb..a043050 100644 --- a/asterixdb/asterix-app/src/main/java/org/apache/asterix/api/http/server/QueryServiceServlet.java +++ b/asterixdb/asterix-app/src/main/java/org/apache/asterix/api/http/server/QueryServiceServlet.java @@ -280,10 +280,12 @@ public class QueryServiceServlet extends AbstractQueryApiServlet { final ResultProperties resultProperties = new ResultProperties(delivery, param.getMaxResultReads()); buildResponseHeaders(requestRef, sessionOutput, param, responsePrinter, delivery); responsePrinter.printHeaders(); - validateStatement(param.getStatement()); - String statementsText = param.getStatement() + ";"; + String statement = param.getStatement(); + statement = statement == null || (!statement.isEmpty() && statement.charAt(statement.length() - 1) == ';') + ? statement : (statement + ";"); + validateStatement(statement); if (param.isParseOnly()) { - ResultUtil.ParseOnlyResult parseOnlyResult = parseStatement(statementsText); + ResultUtil.ParseOnlyResult parseOnlyResult = parseStatement(statement); setAccessControlHeaders(request, response); executionState.setStatus(ResultStatus.SUCCESS, HttpResponseStatus.OK); response.setStatus(executionState.getHttpStatus()); @@ -296,9 +298,9 @@ public class QueryServiceServlet extends AbstractQueryApiServlet { IStatementExecutor.StatementProperties statementProperties = new IStatementExecutor.StatementProperties(); response.setStatus(HttpResponseStatus.OK); - executeStatement(request, requestRef, statementsText, sessionOutput, resultProperties, - statementProperties, stats, param, executionState, param.getOptionalParams(), statementParams, - responsePrinter, warnings); + executeStatement(request, requestRef, statement, sessionOutput, resultProperties, statementProperties, + stats, param, executionState, param.getOptionalParams(), statementParams, responsePrinter, + warnings); executionState.setStatus(ResultStatus.SUCCESS, HttpResponseStatus.OK); } errorCount = 0;
