हमने हाल ही में एक मुद्दा देखा है कि एसएसआईएस पैकेजों को फिर से तैनात किए गए नवीनतम परिवर्तनों में शामिल नहीं लगता है ... जब मैं नोटपैड का उपयोग करके डीटीएसएक्स खोजता हूं तो मुझे कोड में संशोधित स्क्रिप्ट दिखाई देती है ताकि परिवर्तन निश्चित रूप से वहां हों।एसएसआईएस पैकेज को पुन: नियोजित करना - कैश?
मेरी धारणा थी कि एसएसआईएस पैकेज के स्क्रिप्ट घटक अंततः प्रक्रिया में कहीं भी एक असेंबली में संकलित किए जाते हैं - यह काफी संभावना है क्योंकि मुझे लगता है कि सी # कोड पहले संकलित किए बिना कुछ नहीं चला सकता है। तो सिद्धांत रूप में यदि इन विधानसभाओं को तब कैश किया जा रहा है और तत्काल ओवरराइट नहीं किया गया है (किसी कारण से) जो इस मुद्दे को समझाएगा।
केवल "सबूत" जो मुझे सोचता है कि मेरा सिद्धांत सही है अगर मैं किसी बिंदु पर पैकेज चलाता रहता हूं तो यह अचानक नए कोड में बदल जाता है।
हालांकि, अब तक मुझे नहीं मिला है कि यह क्यों और कैसे हो रहा है, यदि है ... क्या कोई मदद कर सकता है?
अद्यतन: MSDN कहते हैं: "पहले के संस्करणों जहां से संकेत मिलता है कर सकता था कि स्क्रिप्ट precompiled रहे थे विपरीत, सभी स्क्रिप्ट एसक्यूएल सर्वर 2008 एकीकरण सेवाओं (SSIS) और बाद के संस्करणों में precompiled कर रहे हैं।" - द्वारा प्री-संकलित का मतलब है कि वास्तविक पैकेज की बजाय एक पूर्व-संकलित संस्करण चलता है (मुझे ऐसा लगता है क्योंकि कोड को नोटपैड में कोड दिखाई देने के बाद संकलित नहीं लगता है) वहां एक तरीका होना चाहिए पूर्व-संकलित असेंबली को ओवरराइट करने के लिए इंजन को मजबूर करें ... लेकिन कैसे?
अद्यतन: लघु उद्योगों के चार मुख्य घटक में से एक एसक्यूएल ServerIntegration सेवाएं सेवा है, जो एक खिड़कियों सेवा है। स्पष्ट रूप से यह सेवा घटक/कार्य मेटाडेटा को कैश करेगी ताकि एसएसआईएस रनटाइम इंजन कैश को स्थापित कर सके, यह देखने के लिए कि कौन सा स्थापित है, जो पैकेज लोड समय को तेज करने में मदद कर सकता है। हालांकि, यदि पैकेज फ़ाइल सिस्टम (SQL एकीकरण सेवाओं में नहीं) में संग्रहीत हैं और एजेंट जॉब्स द्वारा निष्पादित किया गया है, तो एजेंट जॉब पैकेज को निष्पादित करने के लिए DTEXEC के 64 बिट संस्करण का उपयोग करेगा। मुझे अभी तक सबूत नहीं मिला है कि किसी भी कैशिंग में शामिल होगा, लेकिन निष्पादन के सत्यापन चरण में कई पैरामीटर जांचने के लिए निश्चित रूप से विकल्प हैं, जैसे कि संस्करण संख्या - एक कारण के लिए हो सकती है।
बस कहना है कि आज हमारे पास एक ही सटीक समस्या है। एजेंट को पुनरारंभ करना और न ही SQLSISS मदद करता है। –
चाल एक तालिका से कॉलम जोड़ने और हटाने के लिए क्या किया गया था। जाहिर है, यह जाने का कोई तरीका नहीं है और हम निश्चित रूप से इस प्रश्न के उत्तर में रुचि रखते हैं –
इसके अलावा: मुझे लगता है कि कैश डिस्क पर कहीं भी संग्रहीत है क्योंकि यह सर्वर से बच गया –