Tôi đã đặt một số nghiên cứu trong thời gian này trước đây vì chúng tôi cũng có vấn đề với bảng đó.
report_viewed_product_indexđược sử dụng cho các sản phẩm được xem gần đây. Nếu bạn không sử dụng tính năng này: Đi và cắt ngắn :-)
Nếu bạn sử dụng chức năng xem sản phẩm gần đây, hãy kiểm tra xem cron của bạn đã được thiết lập đúng chưa. Các mục nhập cho khách truy cập không còn tồn tại trong log/visitorbảng nên được xóa tự động tại log_log_clean_aftersự kiện.
Phương pháp sạch được kế thừa Mage_Reports_Model_Resource_Product_Index_Viewedtừ Mage_Reports_Model_Resource_Product_Index_Abstractnơi điều này xảy ra.
/**
* Clean index (visitor)
*
* @return Mage_Reports_Model_Resource_Product_Index_Abstract
*/
public function clean()
{
while (true) {
$select = $this->_getReadAdapter()->select()
->from(array('main_table' => $this->getMainTable()), array($this->getIdFieldName()))
->joinLeft(
array('visitor_table' => $this->getTable('log/visitor')),
'main_table.visitor_id = visitor_table.visitor_id',
array())
->where('main_table.visitor_id > ?', 0)
->where('visitor_table.visitor_id IS NULL')
->limit(100);
$indexIds = $this->_getReadAdapter()->fetchCol($select);
if (!$indexIds) {
break;
}
$this->_getWriteAdapter()->delete(
$this->getMainTable(),
$this->_getWriteAdapter()->quoteInto($this->getIdFieldName() . ' IN(?)', $indexIds)
);
}
return $this;
}