TDS stops responding after a few weeks

Problem Description

When Talend Data Stewardship (TDS) is installed on Windows the GUI stops responding after a few weeks. The TDS logs display the following error:

org.apache.kafka.clients.NetworkClient : [Producer clientId=producer-1] Connection to node 0 could not be established. Broker may not be available.

The following error appears in the Kafka, server.log file:

2019-07-29 11:41:05,268] ERROR Failed to clean up log for __consumer_offsets-9 in dir Z:\Talend\7.1.1\kafka\logs due to IOException (kafka.server.LogDirFailureChannel)
java.nio.file.FileSystemException: Z:\Talend\7.1.1\kafka\logs\__consumer_offsets-9\00000000000000000000.log.cleaned: The process cannot access the file because it is being used by another process.

at sun.nio.fs.WindowsException.translateToIOException(WindowsException.java:86)
at sun.nio.fs.WindowsException.rethrowAsIOException(WindowsException.java:97)
at sun.nio.fs.WindowsException.rethrowAsIOException(WindowsException.java:102)
at sun.nio.fs.WindowsFileSystemProvider.implDelete(WindowsFileSystemProvider.java:269)
at sun.nio.fs.AbstractFileSystemProvider.deleteIfExists(AbstractFileSystemProvider.java:108)
at java.nio.file.Files.deleteIfExists(Files.java:1165)
at kafka.log.Cleaner.deleteCleanedFileIfExists$1(LogCleaner.scala:488)
at kafka.log.Cleaner.cleanSegments(LogCleaner.scala:493)
at kafka.log.Cleaner$$anonfun$doClean$4.apply(LogCleaner.scala:462)
at kafka.log.Cleaner$$anonfun$doClean$4.apply(LogCleaner.scala:461)
at scala.collection.immutable.List.foreach(List.scala:392)
at kafka.log.Cleaner.doClean(LogCleaner.scala:461)
at kafka.log.Cleaner.clean(LogCleaner.scala:438)

 

Root Cause

This is a known Kafka bug. For more information, see the GitHub, KAFKA-2170 [WIP]: Updated Fixes For Windows Platform #3283 page.

 

Solution

To resolve this issue, perform one of the following:

  • Run Kafka on the Linux platform (this issue only occurs on Windows).

  • Disable the Kafka log rotator, by adding log.cleaner.enable = false to the kafka/config/server.properties file. Then, every few weeks, manually delete all of the files in the Kafka logs folder.

Version history
Revision #:
2 of 2
Last update:
‎10-15-2019 11:43 AM
Updated by:
 
Contributors