একটি প্রোডাকশন অ্যাপ্লিকেশনে (সি # এসকিউএল সার্ভার 2014 স্ট্যান্ডার্ডের সাথে কথা বলছে) নীচে নীচের মতো দেখতে এমন একটি কোয়েরি রয়েছে। বেশিরভাগ সময় এটি মিলিসেকেন্ডে চালিত হয়। তবে মাঝে মাঝে (নির্দিষ্ট মানের জন্য @Id
) এটি বাদাম হয়ে যায় এবং এক মিনিট বা তার বেশি সময় নেয় takes এটি অ্যাপের সময়সীমা চেয়ে দীর্ঘ, সুতরাং অ্যাপ্লিকেশনটি ব্যবহারকারীর জন্য ব্যর্থ।
"যায় বাদাম" ক্ষেত্রে, প্রত্যাবর্তিত ফলাফল সেটটি সঠিকভাবে খালি, কারণ এটি অনেকের মধ্যে রয়েছে তবে অন্যান্য সমস্ত ক্ষেত্রে নয়।
ভাগ্যক্রমে এটি উত্পাদন এবং বিকাশ পরিবেশ উভয়ই পুনরুত্পাদনযোগ্য।
বিকাশকারী কোয়েরি থেকে "TOP 1" মুছে ফেলার কথা বলছেন, তারপরে অ্যাপটি ফলাফল সেটটির অতিরিক্ত সারিগুলি গ্রাস করেছে তা নিশ্চিত করে, পারফরম্যান্স সমস্যাটি পরিষ্কার করে।
ক্যোয়ারির পরিকল্পনাকারী TOP 1
উপস্থিত থাকাকালীন কোনও সূচকের পরামর্শ দেয় না । (দেব মধ্যে)
ক্যোয়ারী পরিবর্তন এবং অ্যাপ্লিকেশন ঠিক করার প্রক্রিয়া চলছে। রোলআউট কিছুটা সময় নেয়।
আমার প্রশ্ন: নতুন ক্যোয়ারি রোল আউট হওয়ার সাথে সাথে অ্যাপ্লিকেশন পরিবর্তনের আগে এই সমস্যাটি কাটিয়ে ওঠার জন্য প্রোডাকশন এসকিউএল সার্ভারের উদাহরণটি সুর বা টুইট করার কোনও ডিবিএ-অ্যাক্সেসযোগ্য উপায় আছে?
SELECT TOP 1
subscription_id
FROM subscription AS sub
JOIN billing_info AS bi ON bi.billing_info_id = sub.billing_info_id
JOIN person_group AS apg ON apg.person_id = bi.person_id
JOIN pplan ON pplan.plan_id = sub.plan_id
JOIN product ON product.product_id = [plan].product_id
JOIN product_attribute ON product_attribute.product_id = product.product_id
WHERE apg.group_id = @Id
AND apg.start_date < GETDATE()
AND (apg.end_date IS NULL OR apg.end_date > GETDATE())
AND (sub.end_date IS NULL OR sub.end_date > GETDATE())
AND product_attribute.attribute_type = 'special feature'
AND product_attribute.attribute_data = '1'
ORDER BY sub.start_date ASC;
@ID
সর্বদা একই মূল্যবোধগুলি এটিকে "বাদামে" পরিণত করে? যদি তা হয়, তবে সেই মানগুলির মধ্যে একটি ব্যবহার করে পরীক্ষা করুন এবং প্রকৃত ক্যোয়ারী প্ল্যান ক্যাপচার করুন। এটি আপনাকে বলবে যে কী ভুল হচ্ছে। যদি "খারাপ" মানগুলি সামঞ্জস্যপূর্ণ না হয় তবে সম্ভবত মনে হয় এটি হয় প্যারামিটার-স্নিফিং (সমাধানের জন্য @ মার্টিনস্মিতের উত্তর দেখুন), অথবা অন্যথায় ক্লায়েন্ট কীভাবে অনুরোধ করে ফলাফল সেটটি গ্রাস করে তাতে জড়িত একটি লকিং সমস্যা।