यम सूचकांक क्यों भ्रष्ट हो जाता है?


10

कभी-कभी यम का कैश दूषित हो जाता है और हम इस तरह की त्रुटियों को देखते हैं:

error: db3 error(-30974) from dbenv->failchk: DB_RUNRECOVERY: Fatal error, run database recovery
error: cannot open Packages index using db3 -  (-30974)
error: cannot open Packages database in /var/lib/rpm

वर्कअराउंड है rm -f /var/lib/rpm/__db*और फिर अगला "यम" कमांड डेटा को पुन: बनाता है।

मेरा सवाल है: क्या इस कारण होने की संभावना है? क्या कुछ सामान्य कार्य है जो ताले को अनदेखा करता है या अन्य समस्या है जो इसका कारण बनती है?

हमारे पास सैकड़ों CentOS मशीनें हैं और इस समस्या को देखने के लिए कोई पैटर्न नहीं है। यह "एक मिलियन में एक" मुद्दा हो सकता है, जो बड़े पैमाने पर अक्सर देखा जाता है।

नोट: मुझे लगता है कि यह एक बहुत ही "ओपन एंडेड" प्रश्न है, लेकिन यदि कोई कारण का पता चलता है, तो मैं वापस जाऊंगा और प्रश्न को कुछ अधिक विहित में बदल दूंगा जो सीधे विशिष्ट मुद्दे से संबंधित है।


मुझे याद है कि वर्षों पहले कुछ कीड़े थे जो इसकी वजह थे। क्या मशीनें अप टू डेट हैं?
माइकल हैम्पटन

सैकड़ों CentOS मशीनें? क्या यह स्टेक्सएक्सचेंज के लिए है? मुझे नहीं लगता था कि उनके पास कई लिनक्स सिस्टम थे।
ज़ोराडेक

@Zoredache अधिकांश आभासी हैं। कई सेवारत अनुरोधों की सीधी रेखा में नहीं हैं, लेकिन कई हैं।
टॉमऑन टाइम

जवाबों:


6

सामान्य स्थिति में, यह तब होता है जब rpmdb को अपडेट करते समय rpm (या yum) क्रैश हो जाता है, जो कि बर्कले DB DB-value स्टोर है, और बहुत संवेदनशील है। जब ऐसी दुर्घटना होती है, तो rpmdb को असंगत स्थिति में छोड़ दिया जाता है और यह त्रुटि होती है। अन्य सभी फ़ाइलों में /var/lib/rpmसमान जानकारी होती है, हालांकि कम कुशल प्रारूप में, इसलिए डेटाबेस को आसानी से बनाया जाता है।

दो उल्लेखनीय बग जिन्हें आपने पुराने CentOS सिस्टम पर देखा हो सकता है। चेंजगॉग में दिखाई देने वाला बड़ा , "साझा mmap'ed पेज राइटबैक में एक बुरा और सूक्ष्म दौड़", 2007 में एक कर्नेल अपडेट में चुपचाप तय किया गया था । यह एक अपनी रिपोर्ट की तुलना में खुद को थोड़ा अलग रूप में प्रस्तुत करता है , हालांकि।

एक आप 2009 से देख सकते हैं हुआ जब PackageKit एक बेवक़्त समय पर यम मार डालेंगे, और भी तय किया गया था । यह एक GUI के साथ डेस्कटॉप सिस्टम या सर्वर को प्रभावित करने की अधिक संभावना होगी, हालांकि।

ये सभी बग ईएल 6 से संबंधित हैं, और आपको लगभग कभी भी ईएल 6 या 7 पर यह नहीं देखना चाहिए, और न ही यह देखना चाहिए कि क्या आपके ईएल 5 सिस्टम अप टू डेट हैं। (मुझे ईएल 4 के बारे में कोई जानकारी नहीं है। यदि आपके पास एक है, तो इसे फैलने से पहले मार डालें।) जिसमें कहा गया था, आरपीएमडीबी के साथ काम करने के दौरान यम या आरपीएम के कारण कुछ भी मर सकता है। यह शामिल है कि आप इन दिनों सबसे अधिक संभावना देख रहे हैं, यादृच्छिक ब्रह्मांडीय किरणों की झपकियां बिट्स, या किसी के साथ अति हो रही हैं kill -9

RHEL 7 में, यम वास्तविक लेनदेन चलाने के दौरान अधिक संकेतों को फंसाता है, और आपको संदेश दिखाई देगा (shutdown inhibited)। यह उन स्थितियों को रोकने में मदद करता है जिनमें कोई व्यक्ति या कोई व्यक्ति लेन-देन में बाधा डालता है और इस समस्या का कारण बनता है।


2
मेरी शर्त है कि समस्या "किल -9" का अत्यधिक उपयोग है। धन्यवाद!
टॉमऑन टाइम
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.