0

I have just created new products and try to view on the store i checked that a re-index process is pending so i tried to re-index but its giving me error as follows:

There was a problem with reindexing process.

I have tried to fixed it by clearing the cache and assign a base product category to store but still the problem presents.

Please any help on this.

1
  • There are few basic step at there, first all file from var/report,var/locks. Then enable the log setting check the log when you will try to reindex
    – Amit Bera
    Apr 21, 2016 at 14:30

1 Answer 1

0

You just need to start indexing with different way to get what is the error.

Try to create a file named test.php, Then add below code

< ?php
//Following 3 lines will load the magento admin environment.
require_once 'app/Mage.php';
$app = Mage::app('admin');
umask(0);

// to reindex the processes we require their ids
// for default magento there are 9 processes to reindex, numbered 1 to 9. 
$ids = array(1,2,3,4,5,6,7,8,9);

// Sometimes there are processes from our custom modules that also require reindexing
// We need to add those ids to our existing array of ids
// To know the id of process, just hover on each process in your
// admin panel-> System-> Index Management
// You will get a url : admin/process/some_id/......
// this id corresponds to the process

$ids = array(1,2,3,4,5,6,7,8,9,390,391,478);
foreach($ids as $id)
{
//load each process through its id
try
{
$process = Mage::getModel('index/process')->load($id);
$process->reindexAll();
echo "Indexing for Process ID # ".$id." Done<br />";
}
catch(Exception $e)
{
echo $e->getMessage();
}
}
?>

Then add the file on root and run it by entering www.yourdomain.com/text.php to the url.

Also if you have ssh access then run php -f shell/indexer.php –reindex all from root directory.

Using this way you can find what the actual problem is.

Hope this will help you solve your problem.

1
  • Indexing for Process ID # 1 Done SQLSTATE[42000]: Syntax error or access violation: 1064 You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '= 'abs', ( - i.price), IF( = 'fixed', , ROUND(i.price * ( / 100), 4)))), 0) AS `' at line 1 Indexing for Process ID # 3 Done Indexing for Process ID # 4 Done Indexing for Process ID # 5 Done Indexing for Process ID # 6 Done Indexing for Process ID # 7 Done Indexing for Process ID # 8 Done Indexing for Process ID # 9 Done I got this output.. what to do with it @Asish Hira
    – Xabby
    Apr 21, 2016 at 15:10

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.