Наше потоковое приложение kafka продолжает открывать новые файловые дескрипторы, пока они являются новыми входящими сообщениями, даже не закрывая старые. Это в конечном итоге приводит к исключению. Мы увеличили лимит открытых fds до 65k, но, похоже, это не помогает.
Как брокер Kafka, так и библиотека потоков Kafka версии 2.1
Сообщение об ошибке, которое продолжает появляться в журналах:
org.apache.kafka.streams.processor.internals.StreamThread.run
StreamThread.java: 747
org.apache.kafka.streams.processor.internals.StreamThread.runLoop
StreamThread.java: 777
org.apache.kafka.streams.processor.internals.StreamThread.runOnce
StreamThread.java: 883
org.apache.kafka.streams.processor.internals.StreamThread.maybeCommit
StreamThread.java: 1029
org.apache.kafka.streams.processor.internals.TaskManager.commitAll
TaskManager.java: 405
org.apache.kafka.streams.processor.internals.AssignedTasks.commit
AssignedTasks.java: 346
org.apache.kafka.streams.processor.internals.StreamTask.commit
StreamTask.java: 431
org.apache.kafka.streams.processor.internals.StreamTask.commit
StreamTask.java: 443
org.apache.kafka.streams.processor.internals.StreamTask.flushState
StreamTask.java: 491
org.apache.kafka.streams.processor.internals.AbstractTask.flushState
AbstractTask.java: 204
org.apache.kafka.streams.processor.internals.ProcessorStateManager.flush
ProcessorStateManager.java: 217
org.apache.kafka.streams.state.internals.MeteredKeyValueStore.flush
MeteredKeyValueStore.java: 226
org.apache.kafka.streams.state.internals.WrappedStateStore $ AbstractStateStore.flush
WrappedStateStore.java: 85
org.apache.kafka.streams.state.internals.RocksDBStore.flush
RocksDBStore.java: 388
org.apache.kafka.streams.state.internals.RocksDBStore.flushInternal
RocksDBStore.java: 395 org.rocksdb.RocksDB.flush RocksDB.java: 1743
org.rocksdb.RocksDB.flush RocksDB.java org.rocksdb.RocksDBException:
Пока открыть файл для добавления:
/tmp/kafka-streams/s4l-notifications-test/5_1/rocksdb/main-store/002052.sst:
Статус слишком большого количества открытых файлов: #object [org.rocksdb.Status 0x1cca4c5c
"Org.rocksdb.Status@1cca4c5c"]
org.apache.kafka.streams.errors.ProcessorStateException: ошибка при
выполнение флеша из магазина main-store
Есть идеи, как его отладить?