Kafka FileStreamSinkConnector 被我删除后重新创建文件写入
Kafka FileStreamSinkConnector recreated the file to write in after it was deleted by me
好的,这很不寻常。
我做了一个文件流接收器连接器如下:
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
大约一个小时后......它重新创建了文件......
我启动了console producer,并在topic中生产了一些数据。接收器连接器将数据写入文件。
任何人都可以解释这种行为....请。
根据此 pull request(次要:在 FileStreamSinkTask #5406 中附加或创建文件)如果 FileStreamSinkConnector 中提到的文件不存在,将由 kafka-connect 创建。
好的,这很不寻常。
我做了一个文件流接收器连接器如下:
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
大约一个小时后......它重新创建了文件......
我启动了console producer,并在topic中生产了一些数据。接收器连接器将数据写入文件。
任何人都可以解释这种行为....请。
根据此 pull request(次要:在 FileStreamSinkTask #5406 中附加或创建文件)如果 FileStreamSinkConnector 中提到的文件不存在,将由 kafka-connect 创建。