كيفية إصلاح "فشل في الحصول على قفل" خطأ في Endeca؟
سؤال
لا يبدو أن EndeCA شائعة هنا ، على أي حال
المشكلة:
اقتل عن طريق الخطأ عملية تحديث خط الأساس الجري ، والقفل يبقى في مكان ما.
أرغب في معرفة مكان قفل المتبقي ، وإزالة ذلك يدويًا.
ليست رسالة مفيدة يتم إرجاعها بواسطة نص تحديث الخط الأساسي:
INFO: Checking definition from AppConfig.xml against existing EAC provisioning. INFO: Definition has not changed. INFO: Starting baseline update script. WARNING: Failed to obtain lock. ...ended
بدلاً من ذلك ، يمكن لأي شخص تقديم بعض الروابط على وثائق Endeca (بدون بيانات اعتماد تسجيل الدخول) سيكون مفيدًا أيضًا.
المحلول
RTFM
إذا انطلق البرنامج النصي لقالب النشر قيد التشغيل في منتصف الطريق من خلال تنفيذه بسبب استثناء غير معقول ، أو يتم مقاطعة يدويًا بواسطة مستخدم يضغط على CTRL-C أثناء تشغيله ، يظل القفل محددًا داخل EAC.
على Windows: .\runcommand.bat LockManager releaseLock update_lock
على يونيكس: ./runcommand.sh LockManager releaseLock update_lock
سيعمل كلا ما ورد أعلاه إذا لم يتغير اسم القفل الافتراضي (update_lock)
نصائح أخرى
على افتراض أنك تستخدم قالب النشر الخاص بهم ، أحتفظ بملف .bat في "التحكم" dir لأنه يأتي في متناول يدي أحيانًا.
على سبيل المثال على جهاز Windows ، قم بإنشاء ملف .bat w/ هذا كمحتوياته:
rem runcommand.bat/sh LockManager releaseLock update_lock
call %~dp0..\config\script\set_environment.bat
call %~dp0runcommand.bat LockManager releaseLock update_lock
بقدر ما يذهب وثائقهم ... عليك التسجيل في موقع الدعم الخاص بهم. لم أرها في مكان آخر.
لتطبيق ATG (أو "Oracle Web Commerce") المدمج مع Endeca ، يمكن أن يحدث هذا الموقف عند إلغاء تشغيل فهرس خط الأساس قيد التشغيل عبر زر الإلغاء في واجهة المستخدم الرسومية لمكون ProductCatalogSimpleIndexingMin في مسؤول Dyn. ستفشل التحديثات الأساسية اللاحقة حتى يتم اتخاذ الإجراء اليدوي على جانب Endeca لإصدار القفل.
(لقد رأيت هذا مع ATG 10.1.2 متكاملة مع Endeca 3.1.1.)
في محادثة أجريت مع Oracle Support ، يعتبر هذا خطأ - "Bug 17298595 - إلغاء خط الأساس من SimpleIndexingAdmin لا يصدر قفل تحديث" - ويتوفر الإصلاح الساخن ATG.
يركض release_update_locks.sh
(أو .bat
في حالة Windows) البرنامج النصي من control
مجلد التطبيق.