首页 > 解决方案 > Kafka FileStreamSinkConnector 在被我删除后重新创建了要写入的文件

问题描述

好吧,这是一个不寻常的。

我制作了一个文件流接收器连接器,如下所示:

curl -X POST http://cpnode.local.lan:8083/connectors -H "Content-Type: application/json" --data '{
  "name":"file-sink-connector-002",
  "config": {
    "tasks.max":"1",
    "batch.size":"1000",
    "batch.max.rows":"1000",
    "poll.interval.ms":"500",
    "connector.class":"org.apache.kafka.connect.file.FileStreamSinkConnector",
    "file":"/kafka/names.txt",    
    "table.name.format":"tb_sensordata",
    "topics":"names",
    "key.converter": "org.apache.kafka.connect.storage.StringConverter",
    "key.converter.schemas.enable":"false",
    "value.converter": "org.apache.kafka.connect.storage.StringConverter",
    "key.converter.schemas.enable":"false"
  }
}'

连接器运行时,我删除了文件names.txt

一个小时左右后......它重新创建了文件......

我启动了控制台生产者并在该主题中生成了一些数据。接收器连接器将数据写入文件中。

任何人都可以解释这种行为....plz。

标签: apache-kafkaapache-kafka-connect

解决方案


根据这个拉取请求(次要:在 FileStreamSinkTask #5406 中附加或创建文件),如果 FileStreamSinkConnector 中提到的文件不存在,它将由 kafka-connect 创建。


推荐阅读