0
votes

I use All-In-One Confluent Platform https://docs.confluent.io/current/quickstart/ce-docker-quickstart.html

I performed the steps described in the documentation above and was able to run Confluent Platform on Windows 10 machine via docker-compose up -d command on the following docker-compose.yml https://github.com/confluentinc/cp-docker-images/tree/master/examples/cp-all-in-one.

Everything is working fine except the error message I see in the console of my application:

java.nio.file.DirectoryNotEmptyException: \tmp\kafka-streams\testStreams\0_3
    at sun.nio.fs.WindowsFileSystemProvider.implDelete(WindowsFileSystemProvider.java:266) ~[na:1.8.0_171]
    at sun.nio.fs.AbstractFileSystemProvider.delete(AbstractFileSystemProvider.java:103) ~[na:1.8.0_171]
    at java.nio.file.Files.delete(Files.java:1126) ~[na:1.8.0_171]
    at org.apache.kafka.common.utils.Utils$1.postVisitDirectory(Utils.java:651) ~[kafka-clients-1.1.0.jar:na]
    at org.apache.kafka.common.utils.Utils$1.postVisitDirectory(Utils.java:634) ~[kafka-clients-1.1.0.jar:na]
    at java.nio.file.Files.walkFileTree(Files.java:2688) ~[na:1.8.0_171]
    at java.nio.file.Files.walkFileTree(Files.java:2742) ~[na:1.8.0_171]
    at org.apache.kafka.common.utils.Utils.delete(Utils.java:634) ~[kafka-clients-1.1.0.jar:na]
    at org.apache.kafka.streams.processor.internals.StateDirectory.cleanRemovedTasks(StateDirectory.java:287) [kafka-streams-1.1.0.jar:na]
    at org.apache.kafka.streams.processor.internals.StateDirectory.cleanRemovedTasks(StateDirectory.java:250) [kafka-streams-1.1.0.jar:na]
    at org.apache.kafka.streams.KafkaStreams$2.run(KafkaStreams.java:777) [kafka-streams-1.1.0.jar:na]
    at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511) [na:1.8.0_171]
    at java.util.concurrent.FutureTask.runAndReset(FutureTask.java:308) [na:1.8.0_171]
    at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$301(ScheduledThreadPoolExecutor.java:180) [na:1.8.0_171]
    at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:294) [na:1.8.0_171]
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) [na:1.8.0_171]
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) [na:1.8.0_171]
    at java.lang.Thread.run(Thread.java:748) [na:1.8.0_171]

What may be the reason of this error and how to fix it?

1

1 Answers

1
votes

It's not clear what "you're application" means , but \tmp\ obviously doesn't exist on Windows machines

I'm not sure how those paths are translated from *nix addresses into Windows Containers or if there's a property to set the data location for Kafka Streams (?)

You can try setting KAFKA_LOG_DIRS on the broker, but that's still a Unix path, not windows

As mentioned on the Confluent documentation, Windows isn't really tested, and Docker machine should be used (at least, it used to say that)