[ https://issues.apache.org/jira/browse/KAFKA-3502?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15836915#comment-15836915 ]
ASF GitHub Bot commented on KAFKA-3502: --------------------------------------- GitHub user guozhangwang opened a pull request: https://github.com/apache/kafka/pull/2432 KAFKA-3502: KStreamTestDriver needs to be closed after the test case Found a few recently added unit tests did not close KStreamTestDriver after the test itself is closed; this can cause RocksDB virtual function called if the contained topology has some persistent store since they will be initialized but not closed in time. MINOR fix: found that when closing KStreamTestDriver, we need to first flushing all stores before closing any of them; this is triggered from the `KTableKTableLeftJoin.shouldNotThrowIllegalStateExceptionWhenMultiCacheEvictions`. MINOR fix: in CachingXXXStore, the `name` field is actually used as the cache's namespace, not really the store name or its corresponding topic name. Fixed it by renaming it to `cacheName` and use `this.name()` elsewhere which will call the underlying store's name. You can merge this pull request into a Git repository by running: $ git pull https://github.com/guozhangwang/kafka K3502-kstream-builder-test Alternatively you can review and apply these changes as the patch at: https://github.com/apache/kafka/pull/2432.patch To close this pull request, make a commit to your master/trunk branch with (at least) the following in the commit message: This closes #2432 ---- commit 583975e5f7f17e11e8be87b5c7ec8b0007b79904 Author: Guozhang Wang <wangg...@gmail.com> Date: 2017-01-24T23:35:42Z make sure KStreamTestDriver is closed upon completing a test commit 8bff1e1c2241af49c00870226697f7e01783e23d Author: Guozhang Wang <wangg...@gmail.com> Date: 2017-01-24T23:40:13Z found another issue with closing / flushing state stores commit d4eb5d96251a72171eb0b9e4e59f76d9c3c67190 Author: Guozhang Wang <wangg...@gmail.com> Date: 2017-01-25T00:02:36Z fix unit tests ---- > Build is killed during kafka streams tests due to `pure virtual method > called` error > ------------------------------------------------------------------------------------ > > Key: KAFKA-3502 > URL: https://issues.apache.org/jira/browse/KAFKA-3502 > Project: Kafka > Issue Type: Sub-task > Reporter: Ashish Singh > Assignee: Guozhang Wang > Labels: transient-unit-test-failure > Fix For: 0.10.2.0 > > > Build failed due to failure in streams' test. Not clear which test led to > this. > Jenkins console: > https://builds.apache.org/job/kafka-trunk-git-pr-jdk7/3210/console > {code} > org.apache.kafka.streams.kstream.internals.KTableFilterTest > testValueGetter > PASSED > org.apache.kafka.streams.kstream.internals.KStreamFlatMapTest > testFlatMap > PASSED > org.apache.kafka.streams.kstream.internals.KTableAggregateTest > testAggBasic > PASSED > org.apache.kafka.streams.kstream.internals.KStreamFlatMapValuesTest > > testFlatMapValues PASSED > org.apache.kafka.streams.kstream.KStreamBuilderTest > testMerge PASSED > org.apache.kafka.streams.kstream.KStreamBuilderTest > testFrom PASSED > org.apache.kafka.streams.kstream.KStreamBuilderTest > testNewName PASSED > pure virtual method called > terminate called without an active exception > :streams:test FAILED > FAILURE: Build failed with an exception. > * What went wrong: > Execution failed for task ':streams:test'. > > Process 'Gradle Test Executor 4' finished with non-zero exit value 134 > {code} > Tried reproducing the issue locally, but could not. -- This message was sent by Atlassian JIRA (v6.3.4#6332)