2013-08-28 10 views
11

स्वत: EXPLAIN पुनः सक्षम करें। यह सुविधा रेल 4 से हटा दी गई है।धीमी-चल रहे SQL क्वेरी पर रेल 4 ऑटो-एक्सप्लिन

config.active_record.auto_explain_threshold_in_seconds = 0.5 

हम इसे नियंत्रित परिस्थितियों में उपयोगी पाते हैं। मैं निम्नलिखित सवालों के जवाब खोजने में छोटा आया।

  1. स्वत: EXPLAIN को हटाने के लिए अंतर्निहित तर्क क्या था?
    (मुझे यकीन है कि कारणों ध्वनि कर रहे हैं, लेकिन मैं नहीं मिल सकता है कि वे क्या कर रहे हैं।)

  2. वहाँ reintroduce करने के लिए मेरी रेल में ऑटो-व्याख्या 4 codebase कोई तरीका है?

उत्तर

19

Here कि हटाया प्रतिबद्ध auto_explain है (एक मणि, और न ही किसी भी ऑनलाइन जानकारी नहीं मिल सका)। ऐसा लगता है कि तर्क यह है कि इसका शायद ही कभी इस्तेमाल किया गया था और थोड़ा समस्याग्रस्त w/संपत्ति पाइपलाइन थी। प्रतिबद्ध नोट्स के रूप में आप अभी भी व्याख्या क्वेरी उत्पन्न करने के लिए ActiveRecord::Relation#explain का उपयोग कर सकते हैं, लेकिन यदि आप इसे स्वचालित रूप से कॉल करना चाहते हैं तो आपको इसे स्वयं लागू करना होगा। इस प्रतिबद्धता में हटाए गए कोड को देखते हुए आपको सही रास्ते पर जाने में मदद करनी चाहिए।