[ https://issues.apache.org/jira/browse/KAFKA-12190?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17269567#comment-17269567 ]
Andy Wilkinson commented on KAFKA-12190: ---------------------------------------- As promised, here's a pull request for the changes: https://github.com/apache/kafka/pull/9947. The permissions are set as well as they can be on Windows and the tests have been updated to verify the behaviour. > Failure on Windows due to an UnsupportedOperationException when > StateDirectory sets file permissions > ---------------------------------------------------------------------------------------------------- > > Key: KAFKA-12190 > URL: https://issues.apache.org/jira/browse/KAFKA-12190 > Project: Kafka > Issue Type: Bug > Components: streams > Affects Versions: 2.6.1, 2.7.1 > Reporter: Andy Wilkinson > Priority: Critical > Labels: bug > Fix For: 2.8.0, 2.7.1, 2.6.2 > > > There appears to be a regression in Kafka 2.6.1 due to [the > changes|https://github.com/apache/kafka/pull/9583] made for KAFKA-10705 that > causes a failure on Windows. After upgrading to 2.6.1 from 2.6.0, we're > seeing failures in Spring Boot's CI on Windows such as the following: > {noformat} > Caused by: java.lang.UnsupportedOperationException: (No message provided) > at java.nio.file.Files.setPosixFilePermissions(Files.java:2044) > at > org.apache.kafka.streams.processor.internals.StateDirectory.<init>(StateDirectory.java:115) > > at > org.apache.kafka.streams.KafkaStreams.<init>(KafkaStreams.java:745) > at > org.apache.kafka.streams.KafkaStreams.<init>(KafkaStreams.java:585) > at > org.springframework.kafka.config.StreamsBuilderFactoryBean.start(StreamsBuilderFactoryBean.java:316) > > at > org.springframework.context.support.DefaultLifecycleProcessor.doStart(DefaultLifecycleProcessor.java:178) > > at > org.springframework.context.support.DefaultLifecycleProcessor.access$200(DefaultLifecycleProcessor.java:54) > > at > org.springframework.context.support.DefaultLifecycleProcessor$LifecycleGroup.start(DefaultLifecycleProcessor.java:356) > > at java.lang.Iterable.forEach(Iterable.java:75) > at > org.springframework.context.support.DefaultLifecycleProcessor.startBeans(DefaultLifecycleProcessor.java:155) > > at > org.springframework.context.support.DefaultLifecycleProcessor.onRefresh(DefaultLifecycleProcessor.java:123) > > at > org.springframework.context.support.AbstractApplicationContext.finishRefresh(AbstractApplicationContext.java:940) > > at > org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:591) > > at > org.springframework.boot.test.context.runner.AbstractApplicationContextRunner.configureContext(AbstractApplicationContextRunner.java:447) > > at > org.springframework.boot.test.context.runner.AbstractApplicationContextRunner.createAndLoadContext(AbstractApplicationContextRunner.java:423) > > at > org.springframework.boot.test.context.assertj.AssertProviderApplicationContextInvocationHandler.getContextOrStartupFailure(AssertProviderApplicationContextInvocationHandler.java:61) > > at > org.springframework.boot.test.context.assertj.AssertProviderApplicationContextInvocationHandler.<init>(AssertProviderApplicationContextInvocationHandler.java:48) > > at > org.springframework.boot.test.context.assertj.ApplicationContextAssertProvider.get(ApplicationContextAssertProvider.java:112) > > at > org.springframework.boot.test.context.runner.AbstractApplicationContextRunner.createAssertableContext(AbstractApplicationContextRunner.java:412) > > at > org.springframework.boot.test.context.runner.AbstractApplicationContextRunner.lambda$null$0(AbstractApplicationContextRunner.java:382) > > at > org.springframework.boot.test.util.TestPropertyValues.applyToSystemProperties(TestPropertyValues.java:175) > > at > org.springframework.boot.test.context.runner.AbstractApplicationContextRunner.lambda$run$1(AbstractApplicationContextRunner.java:381) > > at > org.springframework.boot.test.context.runner.AbstractApplicationContextRunner.withContextClassLoader(AbstractApplicationContextRunner.java:392) > > at > org.springframework.boot.test.context.runner.AbstractApplicationContextRunner.run(AbstractApplicationContextRunner.java:381) > > at > org.springframework.boot.actuate.autoconfigure.metrics.KafkaMetricsAutoConfigurationTests.whenKafkaStreamsIsEnabledAndThereIsNoMeterRegistryThenListenerCustomizationBacksOff(KafkaMetricsAutoConfigurationTests.java:92) > {noformat} > The same code worked without changes using Kafka 2.6.0. -- This message was sent by Atlassian Jira (v8.3.4#803005)