Chesnay Schepler created FLINK-3594:
---------------------------------------
Summary: Unstable KafkaConsumerTestBase
Key: FLINK-3594
URL: https://issues.apache.org/jira/browse/FLINK-3594
Project: Flink
Issue Type: Bug
Reporter: Chesnay Schepler
Some tests in the KafkaConsumerTestBase rely on throwing a SuccessException to
stop the streaming job if the test condition is fulfilled.
The job then fails, and it is checked whether the cause was a SuccessException.
if so, the test is marked as a success, otherwise as a failure.
However, should this exception be thrown while a checkpoint is being triggered,
the exception that stop the job is not the SuccessException, but a
CancelTaskException.
This should affect every test that uses the SuccessException.
observed here: https://travis-ci.org/apache/flink/jobs/114523189
The problem is that the exception causes the StreamTask to enter the finally
block inside invoke(), which sets isRunning to false. Within
triggerCheckpoint() isRunning is then checked for being false, and if so a
CancelTaskException is thrown.
This seems like an issue of the runtime; i observed other tests failing,
without giving a good cause since the CancelTaskException masks it.
I was wondering whether triggerCheckpoint() could return false instead of
throwing an exception, and simply assume that an exception will be thrown
within invoke().
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)