यह ज्यादातर SQL सर्वर समस्या नहीं होने की संभावना है, लेकिन सेटअप केवल SQL सर्वर को BULK INSERTS को प्रभावित कर रहा है।
हमने हाल ही में VM हार्डवेयर को स्थानांतरित किया है और जो भी अतिथि आए थे, उनके वर्चुअल स्विच मानक से वितरित किए गए थे।
मैंने तब प्राप्त करना शुरू किया
नेटवर्क से इनपुट स्ट्रीम को पढ़ते समय एक घातक त्रुटि हुई। सत्र समाप्त हो जाएगा (इनपुट त्रुटि: 64, आउटपुट त्रुटि: 0)
बल्क INSERT संचालन के दौरान एक दो SQL सर्वर पर। SQL सर्वरों में से एक नया कॉन्फ़िगरेशन वाला VM था और दूसरा एक भौतिक सर्वर था। BULK INSERT दोनों ऑपरेशन की शुरुआत नए कॉन्फ़िगरेशन के साथ VM से हुई थी। बल्क इंसर्ट हर बार विफल नहीं होगा, यह बहुत यादृच्छिक था जब यह होगा।
जब हमने वर्चुअल स्विच को एक स्विच के बजाय एक मानक स्विच होने के लिए बदल दिया तो समस्या दूर हो जाती है।
मैं एक स्पष्टीकरण की अधिक तलाश कर रहा हूं कि यह एक संकल्प के बजाय एक वितरित स्विच के साथ काम क्यों नहीं करता है। मेरा अनुमान है कि BULK INSERT ऑपरेशन धारावाहिक है और एक वितरित स्विच के साथ पैकेट अलग-अलग होस्ट के माध्यम से रूट किए जा रहे हैं, जिनमें से कुछ दूसरों की तुलना में व्यस्त हो सकते हैं, और कुछ विलंबता सीमा से परे गंतव्य सर्वर पर पहुंच रहे हैं। (नोट: स्रोत या गंतव्य सर्वर पर त्रुटियों के समय में विंडोज़ इवेंट लॉग में कुछ भी नहीं है)
अद्यतन: NIC के कारण समस्या का पता चलता है। हमारे सभी वीएम एक E1000 एनआईसी के साथ कॉन्फ़िगर किए गए थे जो मानक स्विच पर पर्याप्त रूप से कार्य करते थे। एक बार जब हम वितरित स्विच में चले गए, तो हमने बड़े डेटा ट्रांसफ़र के मुद्दों को देखना शुरू कर दिया, न कि केवल एसक्यूएल प्रश्नों को। NIC को VMXNET3 में बदलने से लगता है कि समस्या का समाधान हो गया है।