“İşlemde” Sıkışmış Endeksler


24

Magento Yöneticisine göre hem Product URL Rewrites endeksi hem de Kategori / Ürün birliği günlerce çalışıyor Sıkışmış!

Bununla birlikte, çalışan hiçbir reindex php işlemi yoktur, var/locksklasör boştur ve index_processMySQL tablosu tamamen farklı durumlara sahiptir:

+------------+------------------------------+-----------------+---------------------+---------------------+--------+
| process_id | indexer_code                 | status          | started_at          | ended_at            | mode   |
+------------+------------------------------+-----------------+---------------------+---------------------+--------+
|          1 | catalog_product_attribute    | pending         | 2014-01-03 18:17:32 | 2014-01-03 18:17:34 | manual |
|          2 | catalog_product_price        | pending         | 2013-11-06 21:26:32 | 2013-11-06 21:26:32 | manual |
|          3 | catalog_url                  | pending         | 2013-06-05 22:15:24 | 2013-06-05 22:15:24 | manual |
|          4 | catalog_product_flat         | require_reindex | 2013-06-05 22:15:24 | 2013-06-05 22:15:24 | manual |
|          5 | catalog_category_flat        | require_reindex | 2013-08-13 19:55:56 | 2013-08-13 19:55:56 | manual |
|          6 | catalog_category_product     | pending         | 2013-06-05 22:15:24 | 2013-06-05 22:15:24 | manual |
|          7 | catalogsearch_fulltext       | require_reindex | 2014-01-03 15:05:55 | 2013-12-16 22:33:51 | manual |
|          8 | cataloginventory_stock       | pending         | 2014-01-03 18:17:32 | 2014-01-03 18:17:32 | manual |
|          9 | tag_summary                  | pending         | 2014-01-03 15:51:59 | 2014-01-03 15:52:02 | manual |
|         10 | url_redirect                 | pending         | 2013-06-05 22:17:14 | 2013-06-05 22:17:14 | manual |
|         11 | targetrule                   | require_reindex | 2013-07-03 16:37:34 | 2013-07-03 16:37:34 | manual |
|         12 | catalog_url_category         | pending         | 2013-06-05 22:17:15 | 2013-06-05 22:17:15 | manual |
|         13 | catalog_url_product          | pending         | 2013-06-05 22:17:15 | 2013-06-05 22:17:15 | manual |
|         14 | catalog_category_product_cat | pending         | 2013-06-05 22:17:15 | 2013-06-05 22:17:15 | manual |
+------------+------------------------------+-----------------+---------------------+---------------------+--------+

Bu tutarsızlığa ne sebep olabilir? Daha da endişe verici: 1.13.1'e yükseltme işlemini tamamlamamızı engelliyor (endişelenmeyin, bu sadece hazırlama sunucusu!)

Yanıtlar:


28

Bir sunucu zaman aşımı, Magento Admin Reindexing'in sonsuza dek "İşleme" ye sıkışmasına neden olabilir. Yapmanız gereken, sunucunuza SSH erişimi sağlamak ve hangi reindex'in sıkışıp kaldığına bağlı olarak, aşağıdaki komut satırlarını hazırlayın.

php yourmagentofolder/html/shell/indexer.php -reindex catalog_product_attribute
php yourmagentofolder/html/shell/indexer.php -reindex catalogsearch_fulltext
php yourmagentofolder/html/shell/indexer.php -reindex catalog_category_flat
php yourmagentofolder/html/shell/indexer.php -reindex cataloginventory_stock
php yourmagentofolder/html/shell/indexer.php -reindex catalog_category_product
php yourmagentofolder/html/shell/indexer.php -reindex catalog_product_price
php yourmagentofolder/html/shell/indexer.php -reindex tag_summary
php yourmagentofolder/html/shell/indexer.php -reindex catalog_url

1
Sorun indexer.php
reindexing

1
Php konfigürasyonunda Maksimum Uygulama Süresini arttırmayı denediniz mi?
James H.

PHP'nin CLI ini dosyasının her zaman max_execution_timesıfır olarak tanımlandığına inanıyorum . Neyse, ayrı ayrı çalıştırma öneriniz işe yarıyor gibi görünüyor. Sorun aranırken ortaya çıkıyordu php indexer.php reindexall. Teşekkürler!
mpw

O zaman muhtemelen bir hafıza hatasıyla karşılaşıyorsunuzdur.
Paul Hachmang

1
php indexer.php infoDizinlerin tam listesini almak için kullanın .
marblegravy

2

V1.3CE sürümünden v1.9CE sürümüne yükseltme yapıyordum. Kategori Ürünleri reindex olmazdı. Catalog_category_product_index tablosunu v1.9 DB'den bırakmak ve LIVE sitesindeki tabloyla değiştirmek zorunda kaldım.

  1. Tabloyu (catalog_category_product_index) en son (bu durumda aktif) veritabanından dışarı aktarın. “Yabancı anahtar denetimlerini devre dışı bırak” seçeneğini işaretlemelisiniz.
  2. Bu tabloyu alacağınız veritabanını seçin.
  3. SQL sekmesine tıklayın.
  4. Bu kodu giriniz: DROP TABLE catalog_category_product_index
  5. Sonra yedeklenmiş tabloyu alın
  6. SSH'de reindex: -reindex catalog_category_product
  7. Magento admin'i kontrol et. Endeks yönetimi hata göstermez.
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.