[
https://issues.apache.org/jira/browse/IMPALA-8926?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16937179#comment-16937179
]
ASF subversion and git services commented on IMPALA-8926:
---------------------------------------------------------
Commit 750f65912046d39a82adbc4907ea8bc673c18964 in impala's branch
refs/heads/master from Sahil Takiar
[ https://gitbox.apache.org/repos/asf?p=impala.git;h=750f659 ]
IMPALA-8926, IMPALA-8957: Fix result spooling flaky tests
TestResultSpooling::_test_full_queue was flaky because there was a race
condition in the test where the result spooling queue would not fill up
quickly enough. The original way around this was to sleep for a fixed
amount of time in hope that the queue would fill up by the time the
thread woke up. The new approach periodically searches the runtime
profile for specific patterns that indicate the queue is full.
TestFetchAndSpooling.test_rows_sent_counters was flaky because the
RowsSentRate can be 0 if the results are spooled fast enough (because
the time spent spooling results is 0). The fix is to use the DEBUG_ACTION
BPRS_BEFORE_ADD_BATCH to introduce a delay when spooling results, so that
the RowsSentRate is guaranteed to be non-zero.
TestFetch.test_rows_sent_counters was flaky because ClientFetchWaitTimer
can be 0 if the Coordinator does not end up waiting any time for results
to be fetched. The fix is to wait until the query has 'FINISHED'
(results are available to fetch) and then sleep so that the
ClientFetchWaitTimer is a non-zero value.
Cleaned up a few other tests as well.
Testing:
* Looped both tests for a few hours without failure
Change-Id: I3042f592bc79785e43ebc7b09ac1270eae8ed66f
Reviewed-on: http://gerrit.cloudera.org:8080/14275
Reviewed-by: Impala Public Jenkins <[email protected]>
Tested-by: Impala Public Jenkins <[email protected]>
> TestResultSpooling::_test_full_queue is flaky
> ---------------------------------------------
>
> Key: IMPALA-8926
> URL: https://issues.apache.org/jira/browse/IMPALA-8926
> Project: IMPALA
> Issue Type: Bug
> Components: Backend
> Affects Versions: Impala 3.4.0
> Reporter: Sahil Takiar
> Assignee: Sahil Takiar
> Priority: Major
>
> Has happened a few times, error message is:
> {code:java}
> query_test/test_result_spooling.py:116: in test_full_queue_large_fetch
> self._test_full_queue(vector, query, fetch_size=num_rows)
> query_test/test_result_spooling.py:148: in _test_full_queue assert
> re.search(send_wait_time_regex, self.client.get_runtime_profile(handle)) \ E
> assert None is not None E + where None = <function search at
> 0x7f35f0aee320>('RowBatchSendWaitTime: [1-9]', 'Query
> (id=e948cdd2bbde9430:082830be00000000):\n DEBUG MODE WARNING: Query profile
> created while running a DEBUG buil...: 0.000ns\n - WriteIoBytes:
> 0\n - WriteIoOps: 0 (0)\n - WriteIoWaitTime:
> 0.000ns\n') E + where <function search at 0x7f35f0aee320> = re.search E
> + and 'Query (id=e948cdd2bbde9430:082830be00000000):\n DEBUG MODE
> WARNING: Query profile created while running a DEBUG buil...: 0.000ns\n
> - WriteIoBytes: 0\n - WriteIoOps: 0 (0)\n -
> WriteIoWaitTime: 0.000ns\n' = <bound method
> BeeswaxConnection.get_runtime_profile of
> <tests.common.impala_connection.BeeswaxConnection object at
> 0xcde2310>>(<tests.common.impala_connection.OperationHandle object at
> 0xcdf0810>) E + where <bound method
> BeeswaxConnection.get_runtime_profile of
> <tests.common.impala_connection.BeeswaxConnection object at 0xcde2310>> =
> <tests.common.impala_connection.BeeswaxConnection object at
> 0xcde2310>.get_runtime_profile E + where
> <tests.common.impala_connection.BeeswaxConnection object at 0xcde2310> =
> <test_result_spooling.TestResultSpooling object at 0xcdf0290>.client {code}
--
This message was sent by Atlassian Jira
(v8.3.4#803005)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]