Kesalahan indeks setelah memutakhirkan ke EE 1.14.2.0: tabel catalog_product_entity_tmp_indexer tidak ada

16

Setelah saya memutakhirkan Magento saya ke EE 1.14.2.0 cron enterprise_refresh_indexselalu mendapatkan kesalahan ini:

pengecualian 'PDOException' dengan pesan 'SQLSTATE [42S02]: Tabel dasar atau tampilan tidak ditemukan: 1146 Tabel' catalog_product_entity_tmp_indexer 'tidak ada' di /var/www/public_html/lib/Zend/Db/Statement/Pdo.php .:28

Saya tidak mengerti mengapa tabel ini tidak ada. Bukankah Magento harus membuatnya dalam proses indeks penyegaran?

Joke Puts
sumber
1
Jika Anda punya EE, saya yakin Anda akan mendapat dukungan?
Richard
Ya, saya bisa mencobanya dengan cara itu.
Joke Puts
1
@Richard yang menunjukkan Anda tidak pernah menggunakan dukungan EE.
user487772
@TimBezhashvyly Hai Tim, tidak, saya juga tidak pernah menggunakan EE
Richard

Jawaban:

5

Kami mengalami kesalahan ini setelah database restart dalam produksi dan setelah pengindeksan ulang pertama pada lingkungan pengembangan lokal, menjalankan EE 1.14.2.3.

Apa yang berhasil bagi kami adalah sebagai berikut:

  1. Nonaktifkan katalog produk flat
  2. Perhatikan bahwa pengindeks berjalan dengan sukses
  3. Aktifkan katalog produk flat
  4. Perhatikan bahwa pengindeks berjalan dengan sukses
Aad Mathijssen
sumber
1
Saya menguji solusi ini dan tampaknya berhasil untuk saya, memungkinkan pekerjaan enterprise_refresh_index berhasil diselesaikan
mttjohnson
Bekerja untuk saya juga.
df2k2
4

Saya belum dapat mengomentari komentar / jawaban yang ada, tetapi saya dapat mengonfirmasi bahwa SUPEE-5984 tampaknya menyelesaikan masalah, setidaknya untuk klien kami yang mengalami masalah ini (mereka memiliki lebih dari satu juta produk, jadi masih belum selesai berjalan, tetapi IS IS running now ...). Kami membuka tiket dengan Magento melalui kontrak dukungan klien kami dengan mereka dan Magento mendapatkan kami tambalan dalam waktu kurang dari satu jam.

Jovughn
sumber
1
Perhatian, jika Anda memperbarui ke 1.14.2.3 setelah menambal, Anda harus menerapkan tambalan lagi karena tidak termasuk dalam rilis terbaru
Fabian Schmengler
Sebagai catatan, dalam 1.14.3 masalah ini tampaknya diperbaiki dengan cara yang berbeda dan tambalan tidak diperlukan lagi
Fabian Schmengler
4

Untuk referensi di masa mendatang: Kesalahan tidak terjadi ketika saya mengembalikan file app/code/core/Enterprise/Catalog/Model/Index/Action/Product/Flat/Refresh.phpke versi kami sebelumnya 1.14.0.1.
Parameter baru $resetFlagdalam fungsi _reindextampaknya menyebabkan masalah.

Joke Puts
sumber
"Luar biasa", hanya mengalami masalah yang sama. Akan mencoba jika itu juga memecahkan masalah kita.
Anna Völkl
Saya dapat mengkonfirmasi bahwa mengembalikan file menyelesaikan kesalahan. Melakukan pembaruan dari 1.14.0.1 hingga 1.14.2.0 dan baru saja membuat file tambalan dengan konten Refresh.php yang dimodifikasi. Berikutnya: menghubungi dukungan EE.
Anna Völkl
@ AnnaVölkl apakah mereka memberi Anda informasi terbaru tentang ini?
Sergei Guk
2
@Sergei Guk: Sejauh ini saya hanya mengatur ulang file dan tidak meminta dukungan atau tambalan resmi. Pembaruan ke 1.14.2.1 (mungkin diselesaikan di sana?) Ada di antrian. Perlu menyelidiki lebih lanjut ketika ada waktu.
Anna Völkl
1
Pembaruan ke 1.14.2.1 tidak memperbaikinya. Dukungan Magento memiliki tambalan untuk itu tetapi saya masih harus mengujinya.
Joke Puts
1

Saya memiliki masalah yang sama dengan Magento EE 1.14.2.3, tetapi solusi di atas tidak bekerja untuk saya. Saya menemukan masalahnya Enterprise_Catalog_Helper_Product::getFlatColumns. Saya menyelesaikannya dengan mengubah jalur

if ($columns !== null) {

untuk

if ($columns !== null && $columns !== false) {

Tentu saja: jangan mengedit file inti secara langsung, tetapi lakukan penulisan ulang.

Andreas von Studnitz
sumber