>From Peeyush Gupta <[email protected]>:

Peeyush Gupta has uploaded this change for review. ( 
https://asterix-gerrit.ics.uci.edu/c/asterixdb/+/20770?usp=email )


Change subject: [NO ISSUE][API] Async request shown in active requests even 
after completion
......................................................................

[NO ISSUE][API] Async request shown in active requests even after completion

- user model changes: no
- storage format changes: no
- interface changes: no

Details:
A request with mode parameter set as async can be seen in active requests even
after completion in cas the statement itself was empty or the statement does
not support async result delivery. The patch fixes both these cases

Ext-ref: MB-69765, MB-69763
Change-Id: Ie304a6831eadb93b7b8cb825b2180b933b208dbb
---
M 
asterixdb/asterix-app/src/main/java/org/apache/asterix/app/translator/QueryTranslator.java
1 file changed, 5 insertions(+), 1 deletion(-)



  git pull ssh://asterix-gerrit.ics.uci.edu:29418/asterixdb 
refs/changes/70/20770/1

diff --git 
a/asterixdb/asterix-app/src/main/java/org/apache/asterix/app/translator/QueryTranslator.java
 
b/asterixdb/asterix-app/src/main/java/org/apache/asterix/app/translator/QueryTranslator.java
index c3f7c55..c4f5b3d 100644
--- 
a/asterixdb/asterix-app/src/main/java/org/apache/asterix/app/translator/QueryTranslator.java
+++ 
b/asterixdb/asterix-app/src/main/java/org/apache/asterix/app/translator/QueryTranslator.java
@@ -392,6 +392,7 @@
         final ResultMetadata outMetadata = requestParameters.getOutMetadata();
         final Map<String, IAObject> stmtParams = 
requestParameters.getStatementParameters();
         warningCollector.setMaxWarnings(sessionConfig.getMaxWarnings());
+        boolean stmtWithAsyncSupportUsed = false;
         try {
             for (Statement stmt : statements) {
                 if (sessionConfig.is(SessionConfig.FORMAT_HTML)) {
@@ -521,6 +522,7 @@
                         }
                         handleCopyToStatement(metadataProvider, stmt, hcc, 
resultSet, resultDelivery, outMetadata,
                                 requestParameters, stmtParams, stats);
+                        stmtWithAsyncSupportUsed = true;
                         break;
                     case INSERT:
                     case UPDATE:
@@ -530,6 +532,7 @@
                             metadataProvider.setResultAsyncMode(resultDelivery 
== ResultDelivery.ASYNC
                                     || resultDelivery == 
ResultDelivery.DEFERRED);
                             metadataProvider.setMaxResultReads(maxResultReads);
+                            stmtWithAsyncSupportUsed = true;
                         }
                         if (stats.getProfileType() == Stats.ProfileType.FULL) {
                             this.jobFlags.add(JobFlag.PROFILE_RUNTIME);
@@ -575,6 +578,7 @@
                         }
                         handleQuery(metadataProvider, (Query) stmt, hcc, 
resultSet, resultDelivery, outMetadata, stats,
                                 requestParameters, stmtParams, stmtRewriter);
+                        stmtWithAsyncSupportUsed = true;
                         break;
                     case ANALYZE:
                         handleAnalyzeStatement(metadataProvider, stmt, hcc, 
requestParameters);
@@ -610,7 +614,7 @@
             throw ex;
         } finally {
             // async queries are completed after their job completes
-            if (ResultDelivery.ASYNC != resultDelivery) {
+            if (statements.isEmpty() || ResultDelivery.ASYNC != resultDelivery 
|| !stmtWithAsyncSupportUsed) {
                 
appCtx.getRequestTracker().complete(requestParameters.getRequestReference().getUuid());
             }
             Thread.currentThread().setName(threadName);

--
To view, visit https://asterix-gerrit.ics.uci.edu/c/asterixdb/+/20770?usp=email
To unsubscribe, or for help writing mail filters, visit 
https://asterix-gerrit.ics.uci.edu/settings?usp=email

Gerrit-MessageType: newchange
Gerrit-Project: asterixdb
Gerrit-Branch: master
Gerrit-Change-Id: Ie304a6831eadb93b7b8cb825b2180b933b208dbb
Gerrit-Change-Number: 20770
Gerrit-PatchSet: 1
Gerrit-Owner: Peeyush Gupta <[email protected]>

Reply via email to