After I've upgraded my Magento to EE the cron enterprise_refresh_index always gets this error:

exception 'PDOException' with message 'SQLSTATE[42S02]: Base table or view not found: 1146 Table 'catalog_product_entity_tmp_indexer' doesn't exist' in /var/www/public_html/lib/Zend/Db/Statement/Pdo.php:228

I don't get why this table doesn't exist. Shouldn't Magento create it in the process of the refresh index?

  • 1
    If you've got EE I believe you'll get support? – Richard Aug 6 '15 at 15:39
  • Yes, I could try it that way. – Joke Puts Aug 7 '15 at 8:12
  • 1
    @Richard which shows you never used EE support. – user487772 Jun 24 '16 at 8:04
  • @TimBezhashvyly Hi Tim, no, I've never used EE either though – Richard Jun 24 '16 at 8:27

There's a Magento patch SUPEE-5984, which addresses these kind of Enterprise Refresh Index problems.

| improve this answer | |

We encountered this error after a database restart in production and after a first reindex on a local development environment, running EE

What worked for us was the following:

  1. Disable the flat product catalog
  2. Observe that the indexer runs successfully
  3. Enable the flat product catalog
  4. Observe that the indexer runs successfully
| improve this answer | |
  • 1
    I tested this workaround and it appeared to work for me, allowing the enterprise_refresh_index job to complete successfully – mttjohnson Feb 10 '16 at 17:56
  • Works for me too. – df2k2 Nov 17 '16 at 23:03

I can't comment yet on the existing comments/answers, but I can confirm that SUPEE-5984 appears to resolve the issue, at least for our client who encountered this issue (they have over a million products, so it still hasn't finished running, but it IS running now... ). We opened a ticket with Magento through our client's support contract with them and Magento got us the patch in less than an hour.

| improve this answer | |
  • 1
    Caution, if you updated to after patching, you have to apply the patch again because it is not included in the latest release – Fabian Schmengler Jan 25 '16 at 10:30
  • For the record, in 1.14.3 the issue seems to be fixed in a different way and the patch is not needed anymore – Fabian Schmengler Jul 13 '17 at 13:35

For future reference: The error doesn't occur when I revert the file app/code/core/Enterprise/Catalog/Model/Index/Action/Product/Flat/Refresh.php to our previous version
The new parameter $resetFlag in the function _reindex seems to cause the problem.

| improve this answer | |
  • "Awesome", just ran into the same issue. Will try if that solves also our problem. – Anna Völkl Aug 10 '15 at 15:13
  • I can confirm that reverting the file solves the error. Did an update from to and just created a patch file with the modified content of Refresh.php. Next: contacting EE support. – Anna Völkl Aug 10 '15 at 15:38
  • @AnnaVölkl did they provide you any update on this? – Sergei Guk Aug 18 '15 at 14:26
  • 2
    @Sergei Guk: So far I did only reset the file and did not ask for official support or patch. An Update to (maybe solved there?) is in the queue. Need to investigate further when there is time to. – Anna Völkl Aug 18 '15 at 14:28
  • 1
    An update to does not fix this. The Magento support has a patch for it but I still have to test it. – Joke Puts Aug 19 '15 at 19:51

I had the same problem with Magento EE, but the above solutions didn't work for me. I found out the problem was in Enterprise_Catalog_Helper_Product::getFlatColumns. I solved it by changing the line

if ($columns !== null) {


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

Of course: don't edit the core file directly, but do a rewrite.

| improve this answer | |

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.