سؤال

أعاني من قضية غريبة للغاية هنا، لقد قمت بإنشاء بنية Solr الخاصة بي لأنني من المفترض هنا وكل شيء يعمل بشكل جيد إلا لأن جهاز الرقيق Solr الخاص بي يحصل الفاسد. الإعداد (الاختبار) هو كما يلي:

solr setup

  • سيد سولر واحد مع اثنين من النوى (reindex and live)
  • عبد أحد سولر الرقيق مع اثنين من النوى (reindex and live)
  • pollinterval مجموعة إلى 00:00:02
  • متماثل بعد تحسين أو الالتزام
  • تشغيل Solr تحت Ubuntu (11.10) الإصدار 1.4.0.

العملية

proces كله يذهب مثل هذا:

  1. نحن قمنا بمسح الفهرس على Master Reindex Core
  2. li> نحن تعطيل النسخ المتماثل on the master for reindex core
  3. نبدأ DataIcporThandler استيراد بيانات MySQL في أقرات 10.000 مستندات (لمنع أقفال MySQL طويلة)
  4. vother يتم dataimporthandler (4 ملايين سجل) يمكننا تمكين النسخ المتماثل على السيد
  5. سوف يجلب العبيد كور Reindex الجديد من السيد
  6. مرة واحدة تتم جلب من خلال البحث عن "isreplicating" الخاصية نحن المشكلة مبادلة الأساسية
  7. دعونا نفترض أن النواة الحية لديها 5000 وثيقة و Reindex Core 20000 بعد إعادة بناء كاملة.

    النتيجة (الخطأ)

    بعد المبادلة هذه هي النتيجة:

    ماجستير: Live (20000)، Reindex (5000) العبد: Live (20000)، Reindex (20000)

    يبدو وكأنه العبد نسخ رأسه Reindex Core إلى النواة الحية ولكنه لا يتبادل النواة المباشرة باستخدام Reindex Core مثل Master. المشكلة هي أنني أعتقد أن العبد يعتقد أنه أحدث ثم الماجستير والنتيجة هو تكرار ميت في Reindex Core.

    فيما يلي بعض رسائل السجل بالضبط بعد إصدار مبادلة:

    giveacodicetagpre.

    حتى الخطوة 6 كل شيء على ما يرام إذا فعلت كل شيء يدويا. كل شيء يندلع بعد المبادلة الأساسية.

    آمل أن يساعدني شخص ما أو أخبرني ما أفعله خطأ .. يجب تعطيل النسخ المتماثل عند قيامك بتبديل أساسي؟ أي نصائح؟

هل كانت مفيدة؟

المحلول

تمكنت من حل هذه المشكلة، كانت المشكلة هي أن كلا النوى تستخدم نفس Datadir.عن طريق تعيين Datadir في ملف Solr.xml إلى كل من الدلائل المختلفة حل المشكلة!

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top