मुझे कंफ्लुएंट जेडीबीसी कनेक्टर के साथ काम करने में काफी अजीब व्यवहार का अनुभव हो रहा है। मुझे पूरा यकीन है कि यह कंफ्लुएंट स्टैक से संबंधित नहीं है, लेकिन कफका-कनेक्ट फ्रेमवर्क से ही संबंधित है।काफ्का-कनेक्ट सिंक कार्य फ़ाइल ऑफ़सेट स्टोरेज प्रॉपर्टी को अनदेखा करता है
तो, मैं offset.storage.file.filename
संपत्ति को /tmp/connect.offsets
डिफ़ॉल्ट रूप से परिभाषित करता हूं और अपना सिंक कनेक्टर चलाता हूं। जाहिर है, मैं कनेक्टर को दी गई फ़ाइल में ऑफ़सेट जारी रखने की अपेक्षा करता हूं (यह फ़ाइल सिस्टम पर मौजूद नहीं है, लेकिन इसे स्वचालित रूप से बनाया जाना चाहिए, है ना?)। प्रलेखन कहते हैं:
offset.storage.file.filename
फ़ाइल में कनेक्टर ऑफसेट स्टोर करने के लिए डिस्क पर ऑफसेट भंडारण करके, एक स्टैंडअलोन प्रक्रिया को रोका जा सकता है और एक ही नोड पर शुरू कर दिया और फिर से शुरू है, जहां यह पहले से रोका गया था।।
लेकिन काफ्का पूरी तरह से अलग तरीके से व्यवहार करता है।
- यह जांचता है कि दी गई फ़ाइल मौजूद है या नहीं।
- यह नहीं है, कफका सिर्फ इसे अनदेखा करता है और काफ्का विषय में ऑफसेट रखता है।
- यदि मैं मैन्युअल रूप से दी गई फ़ाइल बना देता हूं, तो पढ़ना विफल रहता है (EOFException) और ऑफसेट को फिर से विषय में रखा जा रहा है।
क्या यह एक बग है या अधिक संभावना है, मुझे समझ में नहीं आता कि इस कॉन्फ़िगरेशन के साथ कैसे काम करना है? मैं ऑफ़सेट जारी रखने के लिए दो दृष्टिकोणों के बीच अंतर समझता हूं और फाइल स्टोरेज मेरी आवश्यकताओं के लिए अधिक सुविधाजनक है।
क्या आपने कभी इसे हल किया है? मैं एक वही व्यवहार देख रहा हूं जिसमें एक लोचदार खोज कफका कनेक्ट सिंक स्टैंडअलोन मोड में चल रहा है। – John
@ जॉन, दुर्भाग्य से नहीं, मैं किसी भी अद्यतन – bsiamionau