Error 28

From XMBdocs

This "How To" will give you some tips on how to deal with the "Got error 28 from table handler" error.

Scenario

"Everything was great with my forum last night but this morning I logged in and I instead of seeing my forums I see "Got error 28 from table handler" instead! What happended? What can I do!"

Explanation

This is a MySQL error: Error code 28: No space left on device.

This is usually a serverside MySQL configuration issue and you will need to contact your host's support department and report this to them. They will need to make adjustments to allow MySQL more disc space.

"So I contacted my host but is there anything I can do?"

Yes, while this is ultimately a server issue there are a few things you can try to get your forum back online, albeit temporarily, until your host can make the necessary adjustments to your account. The following steps may or may not help...

If you can access your Administration Panel

Go to Admin Panel/Upgrade and paste the following code into the text box and click "Submit Changes"

(Note: make sure that your tables use the prefix "xmb_" if not change the commands below to reflect the prefix you use. You can determine your $tablepre by checking the "Table Settings" in your config.php file)

(Note2: If you get an error when running both the REAIR and OPTIMIZE lines together - try running them separately.)

REPAIR TABLE xmb_attachments, xmb_banned, xmb_buddys, xmb_favorites,
xmb_forums, xmb_members, xmb_posts,xmb_ranks,
xmb_restricted, xmb_settings, xmb_smilies, xmb_templates,
xmb_themes, xmb_threads, xmb_u2u, xmb_whosonline,
xmb_words;

OPTIMIZE TABLE xmb_attachments, xmb_banned, xmb_buddys, xmb_favorites, xmb_forums, xmb_members, xmb_posts, xmb_ranks, xmb_restricted, xmb_settings, xmb_smilies, xmb_templates, xmb_themes, xmb_threads, xmb_u2u, xmb_whosonline, xmb_words;

If you can not access your Administration Panel

If, because of the error you can not access to your Administration Panel the following steps will need to be taken from your site's control/management panel - Like Cpanel, Ensim, Plesk, etc....

To run a repair/optimize in phpMyAdmin: Look for and click on the phpMyAdmin link in the MYSql access section of your Cpanel, or other site control panel.

Once in phpMyAdmin:

Select your forums database from the meu on the left. Click the "SQL" tab

Paste the code below into the text box and click "Go"

(Note: make sure that your tables use the prefix "xmb_" if not change the commands below to reflect the prefix you use. You can determine your $tablepre by checking the "Table Settings" in your config.php file)

(Note 2: If you get an error when running both the REPAIR and OPTIMIZE lines together - try running them separately.)

REPAIR TABLE xmb_attachments,xmb_banned,xmb_buddys,xmb_favorites,
xmb_forums,xmb_members,xmb_posts,xmb_ranks,xmb_restricted,
xmb_settings,xmb_smilies,xmb_templates,xmb_themes,
xmb_threads,xmb_u2u,xmb_whosonline,xmb_words

OPTIMIZE TABLE xmb_attachments, xmb_banned, xmb_buddys, xmb_favorites, xmb_forums, xmb_members, xmb_posts, xmb_ranks, xmb_restricted, xmb_settings, xmb_smilies, xmb_templates, xmb_themes, xmb_threads, xmb_u2u, xmb_whosonline, xmb_words

Running the REPAIR and OPTIMIZE commands will repair and reclaim lost space in the database, thus possibly creating enough space for MySQL to continue running the queries necessary to get your forum back online for awhile.

Final notes

Another thing you can try is to delete any/ all attachments you can stand to do without then run the REPAIR/OPTIMIZE commands. You can delete attachments from Administration Panel / Attachments or from the attachments table (usually xmb_attachments) in phpMyAdmin.

Additionally you may receive a "Got error -1 from table handler" after resolving the "error 28" issue. This is a permissions error and may be due to your "temp-dir" being full - this is not resolved by the steps above and may require you to free up some space. Again, contact your host if you have need of assistance with this error as well.