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/visitor
bảng nên được xóa tự động tại log_log_clean_after
sự kiện.
Phương pháp sạch được kế thừa Mage_Reports_Model_Resource_Product_Index_Viewed
từ Mage_Reports_Model_Resource_Product_Index_Abstract
nơ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;
}