Jump to content
  • Checkout
  • Login
  • Get in touch

osCommerce

The e-commerce.

** Please read re: phpmyadmin update.


wizardsandwars

Recommended Posts

If your host updates to the latest version of phpmyadmin, it is very likily that you will receive the following error:

 

1016 - Can't open file: 'whos_online.MYI'. (errno: 145)



delete from whos_online where time_last_click < '1049664849'

 

It is caused by auto update scripts from phpmyadmin that most web hosts are using. Somehow, it is corrupting the who's online table. Probably becasue it is trying to write to the table at the same time the update is initiated.

 

To fix this problem, you will need to drop and re-create your whos_online table. Just to be safe, I highly reccomend everyone should make sure they backup the table structure of this table.

 

This has already been reported by several OSC users whos hosts have already run the updates.

-------------------------------------------------------------------------------------------------------------------------

NOTE: As of Oct 2006, I'm not as active in this forum as I used to be, but I still work with osC quite a bit.

If you have a question about any of my posts here, your best bet is to contact me though either Email or PM in my profile, and I'll be happy to help.

Link to comment
Share on other sites

Correction, the update was to cpanel and MySQL.

-------------------------------------------------------------------------------------------------------------------------

NOTE: As of Oct 2006, I'm not as active in this forum as I used to be, but I still work with osC quite a bit.

If you have a question about any of my posts here, your best bet is to contact me though either Email or PM in my profile, and I'll be happy to help.

Link to comment
Share on other sites

My host just upgraded today... after reading your post... so it wasn't that much of a shock. Thanks!

 

For those who don't know how to drop the table and recreate it, just paste the following code into the phpMyAdmin SQL box and press 'Go'.

drop table if exists whos_online;

create table whos_online (

 customer_id int(11) ,

 full_name varchar(64) not null ,

 session_id varchar(128) not null ,

 ip_address varchar(15) not null ,

 time_entry varchar(14) not null ,

 time_last_click varchar(14) not null ,

 last_page_url varchar(64) not null 

);

Cheers,

Tony

"The price of success is perseverance. The price of failure comes much cheaper."

Link to comment
Share on other sites

Sure glad I removed Who's Online from my stores. Don't know why this is a standard feature. A store is not a community.

Link to comment
Share on other sites

I agree with your point about not showing it in the store... just the same as a hit counter... why would you want to let someone know how popular... or unpopular your store is by displaying the figures.

 

I mainly use it for the Admin side so I know if there's anyone online for general interest and whilst doing file upgrades etc.

"The price of success is perseverance. The price of failure comes much cheaper."

Link to comment
Share on other sites

I ran the above fix which worked - but now the error is back.

Why might it have happened again?

 

How can I disable whos online whilst I try to fix it?

Link to comment
Share on other sites

You can comment our the require line in the catalog/includes/application_top.php to skip the error, however, then users that are browsing your shop are not entered into the talbe, and therefore will not be displayed in the admin 'whos online' section.

 

 

 

Sure glad I removed Who's Online from my stores. Don't know why this is a standard feature. A store is not a community.

 

Because shop owners like to see who is browsing their shop. This feature is not necessarily meant to be displayed in the catalog.

 

 

 

I ran the above fix which worked - but now the error is back.  

Why might it have happened again?  

Typically, this would happen because the host did not stop the MySQL services before initiating hte upgrade, and your shop was writing to the who's online' table at that exact moment. This resulted in corrupting the table. Since the table does not represent historical data, you can safely drop and re-create it. If the error returned, then I would speculate the somehow, the update was re-initiated. You can simply drop and re-create it again.

-------------------------------------------------------------------------------------------------------------------------

NOTE: As of Oct 2006, I'm not as active in this forum as I used to be, but I still work with osC quite a bit.

If you have a question about any of my posts here, your best bet is to contact me though either Email or PM in my profile, and I'll be happy to help.

Link to comment
Share on other sites

I thought who's online is only available on the admin side ?

 

is it available for all to see in MS1 or other snapshots ?

(I'm using a jan 2003 snapshot).

 

It is a very usefull feature as you can track users and notice where they are leaving your store. Someone once realised there shipping charges were putting people off. So changed it !

 

regards

Special Effects / 3d + Flash

Link to comment
Share on other sites

If you are having this problem and it keeps repeating even after you have repaired the table, it is due to a cron tab in cpanel 6.20 which causes mysql to update every day.

the best thing to do is comment out the requires (two lines at about line 839-841) in catalog/includes/application_top.

To disable the who's online function.

This obviously means that if you use this function from the admin area or the extended whos online contribution, then it will no longer work, but at least the rest of your site will.

In the mean time scream at your hosts.

Don't know about you guys but I'm getting really fed up with hosts that upgrade services without warning, this problem just cost me two days turnover until I noticed the lack of orders over the weekend.

Sites at

www.martial-art-shop.com

www.combatgear.co.uk

www.shop-for-gifts.co.uk

www.cbl-drinks.co.uk

www.ye-olde-ferrie-inne.co.uk

www.martialartsnews.co.uk

Link to comment
Share on other sites

I think Cpanel my be the culprit on my site as well, I have been testing

MS1 and all worked fine until today....now when I go to my OSC shop it

does not open, but instead it gives me a dialog box titled "File Download"

with options to Open, Save, Cancel or More Info --has anyone seen this?

I have other sites running on the same shared server and the sites with

mysql and php are giving this dialog box and not opening but the plain

html site is opening and runing smooth. Any suggestions as to what may

be occurring?

Link to comment
Share on other sites

I was checking my site yesterday and I got an error message when I went to one product page. I thought it might have been a problem with that one product, so I deleted it from the control panel. Now I get the error message on the front page below:

 

1016 - Can't open file: 'products_description.MYI'. (errno: 145)

 

select products_name from products_description where products_id = '92' and language_id = '1'

 

[TEP STOP]

 

Is there a way to fix this similar to the whose_online table problem or do I have to restore from a backup? If I do restore a backup, am I going to have the same problem again?

 

Carla

Link to comment
Share on other sites

Im getting loads of customers complaining about this issue, which i have to admit caught me out as well.

 

And to make matters worse some of my stores have not been affected, while others needed a quick table fix and others have failed to work even after repeatedly replacing the whois tables.

 

I just removed the store sessions in mysql setting from the configure files to get around the problem for now.

Link to comment
Share on other sites

I've put '//' infront of the require line already, also I've droped the whos_online and recreated it.

 

What if I leave the '//' there?

Can I do that?

I don't need the whos_online function anyway.

Thanks

Link to comment
Share on other sites

This was a persistant problem for me. Every timer the auto update ran, I was getting this error.

 

After talking to my host some more, I talked him into re-compiling Apache.

 

This appears to have solved the problem, as it has been several days, and I have not seen the error again.

-------------------------------------------------------------------------------------------------------------------------

NOTE: As of Oct 2006, I'm not as active in this forum as I used to be, but I still work with osC quite a bit.

If you have a question about any of my posts here, your best bet is to contact me though either Email or PM in my profile, and I'll be happy to help.

Link to comment
Share on other sites

While your host not stopping MySQL when doing an update is a bad thing, the folks over at CPanel are really the ones to blame for the trouble. The cron job to update MySQL is hard-coded and cannot be modified by your host without some serious modifications (read a lot of time).

 

I do not know about your host, but mine is definitely not sitting around waiting for something stupid like this to come along and give them something to do, along with answering all of the eMails and helpdesk tickets coming from upset customers.

 

For those that like to get on the horn, I would suggest going to CPanel's website and giving them a nice message on their forums about how much you appreciate their foresight and testing. :)

"Great spirits have always found violent opposition from mediocre minds. The latter cannot understand it when a man does not thoughtlessly submit to hereditary prejudices but honestly and courageously uses his intelligence." - A. Einstein

Link to comment
Share on other sites

I tried dropping the table and recreating the table. Everytime same error comes up, can anyone suggest the best solution to fix this error currently because I am losing alot of business. Also, does anyone have proble going to checkout_shipping.php after clicking checkout from the site.

 

Thanks in advance

Link to comment
Share on other sites

I had my hosting guy pop in and explain the error and fix that you need to do on the server to fix the update.

 

If you look for posts by Jim Barry you will find information.

Link to comment
Share on other sites

Archived

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

×
×
  • Create New...