You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@impala.apache.org by mi...@apache.org on 2024/01/05 18:14:04 UTC

(impala) branch master updated: IMPALA-12660: TSAN error in ImpalaServer::QueryStateRecord::Init

This is an automated email from the ASF dual-hosted git repository.

michaelsmith pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/impala.git


The following commit(s) were added to refs/heads/master by this push:
     new 8eb26b236 IMPALA-12660: TSAN error in ImpalaServer::QueryStateRecord::Init
8eb26b236 is described below

commit 8eb26b23676c5e148742af47ce6c0a56cf0fe093
Author: jasonmfehr <jf...@cloudera.com>
AuthorDate: Tue Jan 2 16:18:46 2024 -0800

    IMPALA-12660: TSAN error in ImpalaServer::QueryStateRecord::Init
    
    The new SimultaneousMultipleQueriesOneSession test within
    internal-server-test.cc has revealed a data race condition
    where the Impala web UI can read TExecRequest in the
    QueryDriver while the frontend is updating this object.
    
    Since the fix would require adding locks to the critical
    query planning path and the only impact is the UI showing
    slightly outdated data, this race condition is being
    ignored.
    
    Change-Id: I2c553576f03b7503f77f4aa1d3ea8086fff0e43b
    Reviewed-on: http://gerrit.cloudera.org:8080/20842
    Reviewed-by: Michael Smith <mi...@cloudera.com>
    Tested-by: Michael Smith <mi...@cloudera.com>
---
 bin/tsan-suppressions.txt | 10 ++++++++++
 1 file changed, 10 insertions(+)

diff --git a/bin/tsan-suppressions.txt b/bin/tsan-suppressions.txt
index a93191b98..ab4a30426 100644
--- a/bin/tsan-suppressions.txt
+++ b/bin/tsan-suppressions.txt
@@ -44,3 +44,13 @@ race:impala::RpcMgrKerberizedTest
 
 # TODO: IMPALA-9403: Allow TSAN to be set on codegen
 race:impala::HdfsColumnarScanner::ProcessScratchBatchCodegenOrInterpret
+
+# This race condition exists when the Impala UI is refreshed while the frontend planner
+# is updating the TExecRequest in the QueryDriver or the ClientRequestState since it holds
+# a pointer. The implications are the UI displays slightly outdated data until the next
+# refresh. Correcting this condition would require holding a lock during the entire
+# planning phase.
+# The SimultaneousMultipleQueriesOneSession test within internal-server-test.cc surfaced
+# this data race. Since this test runs multiple threads, it is not the test function
+# itself but rather the threads it launches that cause the data race .
+race:impala::internalservertest::runTestQueries