Tôi đang gặp phải hành vi khá lạ khi làm việc với đầu nối Confluent JDBC. Tôi khá chắc chắn rằng nó không liên quan đến ngăn xếp Confluent, nhưng với chính khung công tác kết nối Kafka.Nhiệm vụ chìm kết nối Kafka bỏ qua thuộc tính lưu trữ tập tin bù đắp
Vì vậy, tôi xác định offset.storage.file.filename
thuộc tính làm mặc định /tmp/connect.offsets
và chạy đầu nối bồn rửa của tôi. Rõ ràng, tôi mong đợi kết nối để tồn tại offsets trong tập tin cho trước (nó không tồn tại trên hệ thống tập tin, nhưng nó sẽ được tự động tạo ra, phải không?). Tài liệu cho biết:
offset.storage.file.filename
Các tập tin để lưu trữ offsets kết nối trong Bằng cách lưu trữ offset trên đĩa, một quá trình độc lập có thể được dừng lại và bắt đầu vào một nút duy nhất và tiếp tục nơi nó trước đó rời đi..
Nhưng Kafka hoạt động theo cách hoàn toàn khác.
- Kiểm tra xem tệp đã tồn tại chưa.
- Nó không phải là, Kafka chỉ bỏ qua nó và vẫn tồn tại vị trí trong chủ đề Kafka.
- Nếu tôi tạo tệp đã cho theo cách thủ công, hãy đọc không thành công (EOFException) và bù trừ được tiếp tục tồn tại trong chủ đề một lần nữa.
Có phải là lỗi hoặc, nhiều khả năng, tôi không hiểu cách làm việc với cấu hình này? Tôi hiểu sự khác biệt giữa hai cách tiếp cận tồn tại và lưu trữ tệp thuận tiện hơn cho các nhu cầu của tôi.
Bạn đã bao giờ giải quyết vấn đề này chưa? Tôi nhìn thấy hành vi tương tự với một bồn rửa Elasticsearch Kafka Connect đang chạy trong chế độ độc lập. – John
@John, rất tiếc, tôi không có bất kỳ cập nhật nào – bsiamionau