You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@flink.apache.org by ch...@apache.org on 2020/08/16 21:28:25 UTC
[flink] 03/05: [FLINK-16245][tests] Adjust
BatchFineGrainedRecoveryITCase
This is an automated email from the ASF dual-hosted git repository.
chesnay pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/flink.git
commit e8cfc750300134bd1bc637fe6e0690c69cf4ecf6
Author: Arvid Heise <ar...@ververica.com>
AuthorDate: Thu Mar 12 20:43:18 2020 +0100
[FLINK-16245][tests] Adjust BatchFineGrainedRecoveryITCase
Because the classloader is now closed when the task fails the UDF only has access to the bootstrap classloader, which doesn't contain our own test classes.
---
.../test/recovery/BatchFineGrainedRecoveryITCase.java | 19 +++++++++++--------
1 file changed, 11 insertions(+), 8 deletions(-)
diff --git a/flink-tests/src/test/java/org/apache/flink/test/recovery/BatchFineGrainedRecoveryITCase.java b/flink-tests/src/test/java/org/apache/flink/test/recovery/BatchFineGrainedRecoveryITCase.java
index 6bcc60a..cbfe097 100644
--- a/flink-tests/src/test/java/org/apache/flink/test/recovery/BatchFineGrainedRecoveryITCase.java
+++ b/flink-tests/src/test/java/org/apache/flink/test/recovery/BatchFineGrainedRecoveryITCase.java
@@ -59,6 +59,7 @@ import org.apache.flink.util.ConfigurationException;
import org.apache.flink.util.ExceptionUtils;
import org.apache.flink.util.FlinkException;
import org.apache.flink.util.FlinkRuntimeException;
+import org.apache.flink.util.TemporaryClassLoaderContext;
import org.apache.flink.util.TestLogger;
import org.junit.After;
@@ -393,14 +394,16 @@ public class BatchFineGrainedRecoveryITCase extends TestLogger {
@Override
void fail(int trackingIndex) throws Exception {
//noinspection OverlyBroadCatchBlock
- try {
- restartTaskManager();
- } catch (InterruptedException e) {
- // ignore the exception, task should have been failed while stopping TM
- Thread.currentThread().interrupt();
- } catch (Throwable t) {
- failureTracker.unrelatedFailure(t);
- throw t;
+ try (TemporaryClassLoaderContext unused = TemporaryClassLoaderContext.of(ClassLoader.getSystemClassLoader())) {
+ try {
+ restartTaskManager();
+ } catch (InterruptedException e) {
+ // ignore the exception, task should have been failed while stopping TM
+ Thread.currentThread().interrupt();
+ } catch (Throwable t) {
+ failureTracker.unrelatedFailure(t);
+ throw t;
+ }
}
}
}