Michael Smith has posted comments on this change. ( http://gerrit.cloudera.org:8080/21074 )
Change subject: IMPALA-12602: Unregister queries on idle timeout ...................................................................... Patch Set 5: (5 comments) http://gerrit.cloudera.org:8080/#/c/21074/1//COMMIT_MSG Commit Message: http://gerrit.cloudera.org:8080/#/c/21074/1//COMMIT_MSG@10 PS1, Line 10: as you cannot fetch results : from a cancelled query. > I want to look into getLog more. It may continue to return the error, and p Done http://gerrit.cloudera.org:8080/#/c/21074/3//COMMIT_MSG Commit Message: http://gerrit.cloudera.org:8080/#/c/21074/3//COMMIT_MSG@13 PS3, Line 13: Adds a new structure - idle_query_statuses_ - to retain Status messages : for queries closed this way so that we can continue to return a clear : error message if the client returns and requests query status or : attempts to fetch results. This structure must be global because HS2 : server can only identify a session ID from a query handle, and the quer > I first tried storing them per-session, but when we want to lookup the erro Done http://gerrit.cloudera.org:8080/#/c/21074/3/be/src/service/impala-beeswax-server.cc File be/src/service/impala-beeswax-server.cc: http://gerrit.cloudera.org:8080/#/c/21074/3/be/src/service/impala-beeswax-server.cc@299 PS3, Line 299: if (!status.ok() && status.code() != TErrorCode::INVALID_QUERY_HANDLE) { > nit: add braces Done http://gerrit.cloudera.org:8080/#/c/21074/3/be/src/service/impala-server.cc File be/src/service/impala-server.cc: http://gerrit.cloudera.org:8080/#/c/21074/3/be/src/service/impala-server.cc@1759 PS3, Line 1759: err; > This looks strange to me - I would prefer to get 'it' in a line before the Done http://gerrit.cloudera.org:8080/#/c/21074/3/tests/custom_cluster/test_query_expiration.py File tests/custom_cluster/test_query_expiration.py: http://gerrit.cloudera.org:8080/#/c/21074/3/tests/custom_cluster/test_query_expiration.py@140 PS3, Line 140: 'Invalid or unknown query handle' in str(e) > Can the old error message still occur? __expect_expired fetches from short_timeout_expire_handle and time_limit_expire_handle, which unregisters the queries. Only queries unregistered due to idle query timeout save the error message for later use. That does make me wonder if we could identify a fetch or close, and after we returned the error message in that case erase it from storage. -- To view, visit http://gerrit.cloudera.org:8080/21074 To unsubscribe, visit http://gerrit.cloudera.org:8080/settings Gerrit-Project: Impala-ASF Gerrit-Branch: master Gerrit-MessageType: comment Gerrit-Change-Id: Iacfc285ed3587892c7ec6f7df3b5f71c9e41baf0 Gerrit-Change-Number: 21074 Gerrit-PatchSet: 5 Gerrit-Owner: Michael Smith <michael.sm...@cloudera.com> Gerrit-Reviewer: Csaba Ringhofer <csringho...@cloudera.com> Gerrit-Reviewer: Impala Public Jenkins <impala-public-jenk...@cloudera.com> Gerrit-Reviewer: Joe McDonnell <joemcdonn...@cloudera.com> Gerrit-Reviewer: Michael Smith <michael.sm...@cloudera.com> Gerrit-Comment-Date: Thu, 07 Mar 2024 18:37:46 +0000 Gerrit-HasComments: Yes