Mengapa magento mengindeks ulang harga pada setiap checkout?

8

Jika Anda melihat di dalam Mage_CatalogInventory_Model_Observer :: reindexQuoteInventory () ia memanggil baris berikut: Mage::getResourceSingleton('catalog/product_indexer_price')->reindexProductIds($productIds);

The reindexQuoteInventory()disebut pada peristiwa berikut:

  1. sales_model_service_quote_submit_success
  2. checkout_submit_all_after (via Mage_CatalogInventory_Model_Observer::checkoutAllSubmitAfter())

Ini dikenal sebagai salah satu masalah untuk berkontribusi dalam masalah penguncian di situs sibuk dengan volume pembelian yang tinggi.

Pertanyaan saya adalah:

  1. Mengapa harga untuk produk diindeks ulang pada setiap checkout?
  2. Apa dampaknya dari menghapusnya?
  3. Jika itu digunakan untuk aturan katalog pasti itu hanya aturan yang sangat spesifik?
john-jh
sumber
Yang jelas akan menjadi aturan promo (3.), tapi saya akan (tanpa memeriksa inti) menduga bahwa elemen lain di sekitar tampilan harga dinamis (struktur harga berjenjang, berdasarkan jumlah stok yang tersedia) akan terpengaruh secara merugikan ketika penurunan stok.
Ben Lessani - Sonassi

Jawaban:

4

Keputusan apakah akan menampilkan atau menyembunyikan produk berdasarkan pengaturan ini diimplementasikan oleh Indeks Harga Produk.

Anda dapat memverifikasi ini dengan mengubah pengaturan ke "Ya" dan kemudian melihat kategori dengan produk yang tidak tersedia; Anda melihat produk itu ada. Jika Anda kemudian mengubah pengaturan ke "Tidak" dan melihat kategori lagi Anda akan melihat produk kehabisan stok masih ada. Anda juga akan melihat bahwa kedua indeks ini sekarang perlu disegarkan:

Atribut Produk (catalog_product_attribute) Harga Produk (catalog_product_price)

Jika kemudian Anda me-refresh hanya indeks "Atribut Produk", produk tersebut masih terlihat, jika Anda kemudian me-refresh indeks "Harga Produk", itu menghilang, sehingga indeks "Harga Produk" bertanggung jawab untuk pelaksanaan pengaturan ini.

catalog_product_index_price adalah tabel utama , karena itu adalah satu-satunya yang termasuk dalam pertanyaan ketika memuat kategori atau halaman produk

Jignesh
sumber
Terima kasih atas jawaban yang baik, hanya sedikit kesalahan. Iho catalog_product_index_pricehanya digunakan di kategori / halaman pencarian tetapi tidak di halaman produk
Fra