[ https://issues.apache.org/jira/browse/FLINK-7880?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16239068#comment-16239068 ]
Stefan Richter commented on FLINK-7880: --------------------------------------- My theory is that the `dispose()` is not properly executed before the test finishes. By adding printouts to the backend's constructor, dispose(), and the code that waits for cancelation like this: {code} } finally { System.out.println("shutdown a"); // Free cluster resources if (jobId != null) { CompletableFuture<CancellationSuccess> cancellation = FutureUtils.toJava(cluster .getLeaderGateway(deadline.timeLeft()) .ask(new JobManagerMessages.CancelJob(jobId), deadline.timeLeft()) .mapTo(ClassTag$.MODULE$.<CancellationSuccess>apply(CancellationSuccess.class))); cancellation.get(deadline.timeLeft().toMillis(), TimeUnit.MILLISECONDS); } System.out.println("shutdown b"); } {code} I obtain the following printing order: {code} created org.apache.flink.contrib.streaming.state.RocksDBKeyedStateBackend@58482c7d created org.apache.flink.contrib.streaming.state.RocksDBKeyedStateBackend@5278696f created org.apache.flink.contrib.streaming.state.RocksDBKeyedStateBackend@11c418d8 created org.apache.flink.contrib.streaming.state.RocksDBKeyedStateBackend@78424ca5 created org.apache.flink.contrib.streaming.state.RocksDBKeyedStateBackend@79690844 created org.apache.flink.contrib.streaming.state.RocksDBKeyedStateBackend@44855a3 created org.apache.flink.contrib.streaming.state.RocksDBKeyedStateBackend@459dcdef created org.apache.flink.contrib.streaming.state.RocksDBKeyedStateBackend@54cef1d0 shutdown a shutdown b dispose org.apache.flink.contrib.streaming.state.RocksDBKeyedStateBackend@11c418d8 dispose org.apache.flink.contrib.streaming.state.RocksDBKeyedStateBackend@79690844 dispose org.apache.flink.contrib.streaming.state.RocksDBKeyedStateBackend@58482c7d dispose org.apache.flink.contrib.streaming.state.RocksDBKeyedStateBackend@44855a3 dispose org.apache.flink.contrib.streaming.state.RocksDBKeyedStateBackend@78424ca5 dispose org.apache.flink.contrib.streaming.state.RocksDBKeyedStateBackend@5278696f dispose org.apache.flink.contrib.streaming.state.RocksDBKeyedStateBackend@459dcdef dispose org.apache.flink.contrib.streaming.state.RocksDBKeyedStateBackend@54cef1d0 {code} I conclude that the way in which the tests waits for cancelation does not work as expected. In particular, it does not ensure that `dispose()` was executed before the method ends and this can lead to problems with the native resources like what you observe. > flink-queryable-state-java fails with core-dump > ----------------------------------------------- > > Key: FLINK-7880 > URL: https://issues.apache.org/jira/browse/FLINK-7880 > Project: Flink > Issue Type: Bug > Components: Queryable State, Tests > Affects Versions: 1.4.0 > Reporter: Till Rohrmann > Assignee: Kostas Kloudas > Priority: Blocker > Labels: test-stability > Fix For: 1.4.0 > > > The {{flink-queryable-state-java}} module fails on Travis with a core dump. > https://travis-ci.org/tillrohrmann/flink/jobs/289949829 -- This message was sent by Atlassian JIRA (v6.4.14#64029)