2010-11-03 14 views
11

मैं अनुक्रमण प्रक्रिया को कैसे रोक सकता हूं? मैंने 15,000 उत्पादों का आयात किया था और अनुक्रमण शुरू किया था, लेकिन अब यह "श्रेणी खोज सूचकांक" के लिए प्रसंस्करण पर फंस गया है। यह दो दिनों के लिए प्रसंस्करण पर फंस गया है, मैं इंडेक्सिंग प्रक्रिया को कैसे रोक सकता हूं?Magento अनुक्रमण प्रक्रिया को रोकना

किसी भी मदद की सराहना की जाएगी, अग्रिम धन्यवाद।

+0

आप किस ऑपरेटिंग सिस्टम का उपयोग कर रहे हैं? –

उत्तर

3

शायद अपाचे को पुनरारंभ करना सबसे आसान तरीका है। यह किसी भी खुले विज़िटर कनेक्शन को गर्व से बंद कर देगा, और PHP प्रक्रिया को समाप्त करना चाहिए।

--------- संपादित ----------

डेटाबेस में तालिकाओं अनुक्रमण, index_process और index_process_event से संबंधित होना देखने का एक सेट कर रहे हैं। आप लंबित होने के लिए प्रासंगिक रिकॉर्ड की स्थिति को वापस करने का प्रयास कर सकते हैं और पुनः प्रयास कर सकते हैं ...

+0

मैंने अपाचे को दोबारा शुरू किया लेकिन फिर भी यह कैटलॉग सर्च इंडेक्स – jarus

+1

पर "प्रोसेसिंग" दिखा रहा है, यह वास्तव में प्रसंस्करण नहीं कर रहा है लेकिन उस छवि पर फंस गया है। मुझे लगता है कि इंडेक्सिंग लटका होने से पहले मैंने ऐसा किया था। मुझे लगता है कि आप इंडेक्स को भागना चाहते हैं ताकि आप इसे फिर से कोशिश कर सकें। –

+5

अपनी खुद की सैनिटी के लिए मैं Magento की खोल निर्देशिका में indexer.php खोल php स्क्रिप्ट का उपयोग करने की अनुशंसा करता हूं। यदि त्रुटियां हैं तो यह उस त्रुटि को प्रदर्शित करेगी जिसमें यह भाग गया था (संभवतः आपको एक फ़ाइल लॉकिंग समस्या का कुछ प्रकार मिलेगा)। दान सही है। जब एक अनुक्रमण प्रक्रिया विफल हो जाती है तो यह वास्तव में नहीं होने पर प्रसंस्करण के रूप में फंस जाती है। –

10

जब Magento 'इंडेक्स प्रबंधन' सूची में प्रत्येक आइटम का अनुक्रमण शुरू करता है तो यह 'index_process' के सहसंबंधित संपूर्ण 'स्थिति' फ़ील्ड सेट करता है टेबल 'काम करने' के लिए। अगर अनुक्रमण प्रक्रिया स्क्रिप्ट के दौरान त्रुटि होती है और स्थिति 'काम' के रूप में बनी हुई है। नतीजतन 'प्रसंस्करण' छवि 'इंडेक्स प्रबंधन' पृष्ठ पर लटकती है। निस्संदेह यह सुनिश्चित करने का कोई तरीका नहीं है कि अनुक्रमण प्रक्रिया अभी भी नहीं चल रही है लेकिन आपके सर्वर की प्रक्रिया सूची (या क्रूर पुनरारंभ या आपके अपाचे) की जांच कर रही है।

इस समस्या को हल करने के लिए मुझे पता है कि एकमात्र बुद्धिमान तरीका यह पता लगाने के लिए है कि यह त्रुटि क्या है और इसे ठीक करें। आप इसे अपने खोल से अनुक्रमण चलाने और आउटपुट की तलाश करके कर सकते हैं। यहाँ आदेश है:

php shell/indexer.php reindexall 

आप एक SSH का उपयोग आप भी अपने सर्वर त्रुटि लॉग से इस त्रुटि का पता लगाने की कोशिश कर सकते नहीं है, तो।

तुम सिर्फ 'प्रसंस्करण' छवि तुम सिर्फ निम्नलिखित MySQL क्वेरी चला सकते हैं निकालना चाहते हैं:

UPDATE `index_process` SET `status` = 'pending' WHERE `status` = 'working' 

हालांकि इस समस्या का समाधान नहीं होगा, लेकिन केवल उत्पादन छिपाना।

+0

दिलचस्प पढ़ना! इसे जाने के लिए जा रहे हैं क्योंकि हम 12 घंटे से अधिक समय तक इंडेक्स प्रक्रिया चला रहे हैं, जो कहता है कि यह अभी भी फ्रंट एंड पर प्रसंस्करण कर रहा है लेकिन हमारे संदेह हैं कि यह अभी भी चल रहा है! –

1

ध्यान रखें, यदि आप वर्तमान में उपयोग कर रहे किसी अन्य उपयोगकर्ता के तहत Magento चला रहे हैं (www-data बनाम mySshLoginUser), तो आप लॉक फ़ाइलों पर अनुमति समस्याओं को स्वयं खोल सकते हैं। यदि आपने मैन्युअल रूप से शेल इंडेक्सर चलाया है, तो उन लॉक फाइलें आपके एसएसएच उपयोगकर्ता से संबंधित होंगी।

सबसे खराब स्थिति परिदृश्य, उन लॉक फ़ाइलों को var/locks/* में हटाएं और इसे आज़माएं।

संबंधित मुद्दे