Search error: table is full

I get the following error:



Database error: The table ‘_search’ is full (1114)



when I perform a search in the client area of my cs-cart site.

This happens only if the search contains none or only one letter. But, still, I can’t let that error be displayed to the customers.



p.s.The site has a lot of products, since we are moving an existing e-shop (oscommerce) to cs-cart latest version. Actually we made a clean install of cs-cart, created a new skin and imported via .csv the products and their features. We have 28000 products (in 700 categories and subcategories). We also have a feature called ‘actors’, since we sell movies, that every movie has a few actors. We have about 40000 actors. Since the import of the products, the site has been really slow in some places, especially the ones where it has to calculate the product features list (actors).

Getting this too,



I switched from file cache to sql to improve speed,



We currently have 60 - 150 people online, but ramping up for over 1000 in the next week,



Any ideas?

I have the same problem and its crashing my mysql server:



Database error: The table ‘_search’ is full (1114)

Invalid query: INSERT INTO _search (id, object, sort_field) SELECT cscart_pages.page_id, ‘pages’, cscart_page_descriptions.page FROM cscart_pages as cscart_pages LEFT JOIN cscart_page_descriptions ON cscart_pages.page_id = cscart_page_descriptions.page_id AND cscart_page_descriptions.lang_code = ‘EN’ WHERE 1 AND ((cscart_page_descriptions.page LIKE ‘%white%’ OR cscart_page_descriptions.description LIKE ‘%white%’) OR (cscart_page_descriptions.page LIKE ‘%widow%’ OR cscart_page_descriptions.description LIKE ‘%widow%’)) AND cscart_pages.status IN (‘A’) AND (cscart_pages.usergroup_ids = ‘’ OR FIND_IN_SET(0, cscart_pages.usergroup_ids) OR FIND_IN_SET(1, cscart_pages.usergroup_ids)) AND (use_avail_period = ‘N’ OR (use_avail_period = ‘Y’ AND avail_from_timestamp <= 1292845525 AND avail_till_timestamp >= 1292845525)) GROUP BY cscart_pages.page_id

also so many tables without indexes. any idea how to solve these mysql performance issues.



my best bet was to clear all stats, logs and cache…



anyways, its still a problem…

It seems to be a SQL size limitation for tables. Others who came across that just emptied the table and it fixed their problems. Before you do that, make sure the data in that table is not something important. It looks like it’s just storing search strings that people entered on the site.



If it is, then +1 for Cron jobs to clean this stuff up

It is intended to be a temporary table. The ttemporary items for the search should be removed when the search completes and the results displayed. Note the lack of a table PREFX of ‘cscart’ in the table name…