Jump to content
  • Checkout
  • Login
  • Get in touch

osCommerce

The e-commerce.

Large store problem


iizzo

Recommended Posts

Posted

Just finished inserting more then 3000 products using easypopulate.

My main page is getting all sort of errors including of loosing connection to the DB.

 

there is not problem with easypopulate because I whe I used it with 300 products there was no problem, but not it takes forever for index.php to load. (I'm saing index.php because products_info.php loads more or less or less ok but not as it used to.)

 

 

I don't know if it has anything to do with it but when looking in phpMyAdmin "Show processes" it tells me on some queryies "Copying to tmp table ".

Posted

Just an update ...

 

From test that I condacted the problem is when the database or should i say mysql tries to create tmp table. mysql seems to hang up when trying that.

Posted

Could it be OSC trying to work out the category counts that's slowing you down?

 

Check out the speed tips in the various forums..

Posted

I consulted with my hosting support and they replied that this might happen due to the complexity of the query.

 

the query that takes more then one minute is:

select p.products_id, p.products_image, p.products_tax_class_id, if(s.status, s.specials_new_products_price, p.products_price) as products_price from products p left join specials s on p.products_id = s.products_id where products_status = '1' order by p.products_date_added desc limit 6

 

so what I did is i took out the "left join" (since I'm planing to have specials on all products, but that can not be a permanent solution. :unsure:

  • 2 years later...
Posted
I consulted with my hosting support and they replied that this might happen due to the complexity of the query.

 

the query that takes more then one minute is:

select p.products_id, p.products_image, p.products_tax_class_id, if(s.status, s.specials_new_products_price, p.products_price) as products_price from products p left join specials s on p.products_id = s.products_id where products_status = '1' order by p.products_date_added desc limit 6

 

so what I did is i took out the "left join" (since I'm planing to have specials on all products, but that can not be a permanent solution. :unsure:

 

A customer is having the exactly same problem and the load on the shared server is very low. It happens now and then when you click on a product to check it out. Server just hangs (mysq 99.9% cpu) and mysqladmin processlist shows that it is copying to tmp table.

 

Any advice on this?

Posted

I had a similar problem loading 500 products.

 

It turned out that the server where my website was hosted would automatically stop any script that took more than 30 seconds to execute (timed out after 30 secs). The reason for this is that some scripts get in to a loop and can run for ever if not stopped. My host had set the limit to 30 seconds per script in order to avoid bad scripts from causing the server to grind to a halt (a very wise think to do).

 

So the solution is really easy:

 

Split your easypopulate file in to smaller bits eg, so that you have 6 files each containing 500 products (or smaller if nessesary - I had to split mine into two files each with 250 products) and let us know how you get on.

 

Regards

 

Gareth

Posted
So the solution is really easy:

 

Split your easypopulate file in to smaller bits eg, so that you have 6 files each containing 500 products (or smaller if nessesary - I had to split mine into two files each with 250 products) and let us know how you get on.

 

Then upload each file one at a time....

Archived

This topic is now archived and is closed to further replies.

×
×
  • Create New...