This is an automated email from the ASF dual-hosted git repository.
jackietien pushed a commit to branch rel/0.12
in repository https://gitbox.apache.org/repos/asf/iotdb.git
The following commit(s) were added to refs/heads/rel/0.12 by this push:
new a1fb56f [To rel/0.12] [IOTDB-2502] Add query sql in error log if
encountering exception (#4993)
a1fb56f is described below
commit a1fb56fd1f89b2e2f33842ecb53bb6d61f09e007
Author: Xiangwei Wei <[email protected]>
AuthorDate: Fri Jan 28 12:54:37 2022 +0800
[To rel/0.12] [IOTDB-2502] Add query sql in error log if encountering
exception (#4993)
---
.../java/org/apache/iotdb/db/service/TSServiceImpl.java | 16 ++++++++++------
1 file changed, 10 insertions(+), 6 deletions(-)
diff --git
a/server/src/main/java/org/apache/iotdb/db/service/TSServiceImpl.java
b/server/src/main/java/org/apache/iotdb/db/service/TSServiceImpl.java
index 2951c9c..4b84e7f 100644
--- a/server/src/main/java/org/apache/iotdb/db/service/TSServiceImpl.java
+++ b/server/src/main/java/org/apache/iotdb/db/service/TSServiceImpl.java
@@ -780,12 +780,13 @@ public class TSServiceImpl implements TSIService.Iface {
@Override
public TSExecuteStatementResp executeQueryStatement(TSExecuteStatementReq
req) {
+ String statement = req.getStatement();
+
try {
if (!checkLogin(req.getSessionId())) {
return
RpcUtils.getTSExecuteStatementResp(TSStatusCode.NOT_LOGIN_ERROR);
}
- String statement = req.getStatement();
PhysicalPlan physicalPlan =
processor.parseSQLToPhysicalPlan(
statement, sessionManager.getZoneId(req.sessionId),
req.fetchSize);
@@ -811,10 +812,10 @@ public class TSServiceImpl implements TSIService.Iface {
LOGGER.error(INFO_INTERRUPT_ERROR, req, e);
Thread.currentThread().interrupt();
return RpcUtils.getTSExecuteStatementResp(
- onQueryException(e, "executing executeQueryStatement"));
+ onQueryException(e, "executing executeQueryStatement \"" + statement
+ "\""));
} catch (Exception e) {
return RpcUtils.getTSExecuteStatementResp(
- onQueryException(e, "executing executeQueryStatement"));
+ onQueryException(e, "executing executeQueryStatement \"" + statement
+ "\""));
}
}
@@ -1952,9 +1953,12 @@ public class TSServiceImpl implements TSIService.Iface {
private TSStatus onQueryException(Exception e, String operation) {
TSStatus status = tryCatchQueryException(e);
- return status != null
- ? status
- : onNPEOrUnexpectedException(e, operation,
TSStatusCode.INTERNAL_SERVER_ERROR);
+ if (status != null) {
+ LOGGER.error("Status code: {}, Query Statement: {} failed",
status.getCode(), operation, e);
+ return status;
+ } else {
+ return onNPEOrUnexpectedException(e, operation,
TSStatusCode.INTERNAL_SERVER_ERROR);
+ }
}
private TSStatus tryCatchQueryException(Exception e) {