Dette kunne være hvad som helst . Den
fejl opstår, når en PHP-undtagelse bobler op til overfladen fra reindexProcessAction
handling. Du kan se den kode her.
#File: app/code/core/Mage/Index/controllers/Adminhtml/ProcessController.php
public function reindexProcessAction()
{
$process = $this->_initProcess();
if ($process) {
try {
Varien_Profiler::start('__INDEX_PROCESS_REINDEX_ALL__');
$process->reindexEverything();
Varien_Profiler::stop('__INDEX_PROCESS_REINDEX_ALL__');
$this->_getSession()->addSuccess(
Mage::helper('index')->__('%s index was rebuilt.', $process->getIndexer()->getName())
);
} catch (Mage_Core_Exception $e) {
$this->_getSession()->addError($e->getMessage());
} catch (Exception $e) {
$this->_getSession()->addException($e,
Mage::helper('index')->__('There was a problem with reindexing process.')
);
}
} else {
$this->_getSession()->addError(
Mage::helper('index')->__('Cannot initialize the indexer process.')
);
}
$this->_redirect('*/*/list');
}
Nærmere bestemt denne linje
Mage::helper('index')->__('There was a problem with reindexing process.')
Den hurtigste vej til bunden af denne fejl er at midlertidigt ændre ovenstående linje, så den udskriver undtagelsesmeddelelsen. Magento undertrykker standard undtagelsesmeddelelsen - sandsynligvis i et forsøg på at forhindre slutbrugere i at se en "grim" PHP-fejl. Skift ovenstående til det lyder
Mage::helper('index')->__('There was a problem with reindexing process. ' . $e->getMessage())
Og så genindeksere igen. PHP-fejlmeddelelsen, som skal pege på problemkoden, vil blive inkluderet i din fejlmeddelelse. Dette skulle hjælpe med at pege på det nøjagtige problem, der får dit indeks til at fejle.