Got Error 124 When Reading Table Mysql
Status: Not a Bug Impact on me: None Category:MySQL Server Severity:S2 (Serious) Version:mysql-server-5.0.45-7.el5-x86_64 OS:Linux (RHEL Server release 5.3 (Tikanga)) Assigned to: Tags: 124, error, Got, Reading, table, WHEN View Add Comment Files Developer Edit Submission View Progress Log Contributions [1 Aug 2011 9:21] Devang Modi Description: Dear Sir; Suddenly without any previous notification or symptom on last 07-22-2011 at 9:07:05 AM MySQL log file was logged below error. 110722 9:07:05 [ERROR] Got error 124 when reading table './cvta0018/routedrawaccounting' This is a dedicated database production , red hat enterprise based server, the server hardware is performing fine. Available Cpu , disk and memory is higher respect to requirement. The said table in error message is belonging to MyISAM. After occurrence of this error the table is perfect and fully readable. But for precaution we ran "repair table" statement which completed without any error. For your reference I am sharing mysql log file here with this mail. Can you please tell us whether it is a bug or something else? thanks Devang How to repeat: Not know Suggested fix: NA [1 Aug 2011 10:19] Valerii Kravchuk Execute CHECK TABLE ... EXTENDED and/or myisamchk -e -vvv for that table. See http://dev.mysql.com/doc/refman/5.1/en/myisamchk-check-options.html for the details. Also I'd suggest to upgrade to recent 5.x.y (5.0.92 at least), as many bugs were fixed since 5.0.45. [1 Aug 2011 17:20] Valerii Kravchuk Please, send the output of: show create table routedrawaccounting\G [2 Aug 2011 3:20] Devang Modi Dear Sir; Kindly find below the out of command that you suggested. *************************** 1. row *************************** Table: routedrawaccounting Create Table: CREATE TABLE `routedrawaccounting` ( `recid` bigint(20) NOT NULL auto_increment, `clientlocid` bigint(20) NOT NULL default '0', `specificrouteid` bigint(20) NOT NULL default '0', `actspecificproductid` bigint(20) NOT NULL default '0', `type` char(2) NOT NULL default 'SD', `repspecificproductid` bigint(20) default NULL, `qtyissued` float default NULL, `qtysked` float default NULL, `qtyactual` float default NULL, `qtyretd` float default NULL, `qtyundelivered` float default NULL, `p
14:53 Reporter: Shane Bester (Platinum Quality Contributor) Email Updates: Status: Closed Impact on me: None Category:MySQL Server: Merge storage engine Severity:S3 (Non-critical) Version:5.1.24, 5.6.99, 5.5.5 OS:Any Assigned to: Sergey Vojtovich Tags: error 124, merge union Triage: D4 (Minor) View Add Comment Files Developer Edit Submission View Progress Log Contributions [13 Mar 2008 17:24] Shane Bester Description: the docs at http://dev.mysql.com/doc/refman/5.1/en/merge-storage-engine.html state you *must* specify a "union=(list-of-tables)" clause when creating a merge table. It seems https://bugs.mysql.com/bug.php?id=62043 you don't really have to: mysql> create table `m1`(`a` int,key(`a`))engine=mrg_myisam; Query OK, 0 rows affected (0.01 sec) mysql> select * from `m1`; ERROR 1030 (HY000): Got error 124 from storage engine error log contained: 080313 19:08:18 [ERROR] Got error 124 when reading table '.\test\m1' How to repeat: drop table if exists `m1`; create table `m1`(`a` int,key(`a`))engine=mrg_myisam; https://bugs.mysql.com/bug.php?id=35274 select * from `m1`; Suggested fix: not sure if this is a docs request, parser bug, or merge bug [13 Mar 2008 20:48] Sveta Smirnova Thank you for the report. I believe it is documentation request, because MERGE does not check existance of underlying tables and if they are same. But I left this report in same category to let team to decide. [24 Mar 2008 11:16] Bugs System A patch for this bug has been committed. After review, it may be pushed to the relevant source trees for release in the next version. You can access the patch from: http://lists.mysql.com/commits/44359 ChangeSet@1.2600, 2008-03-24 15:12:46+04:00, svoj@mysql.com +3 -0 BUG#35274 - merge table doesn't need any base tables, gives error 124 when key accessed SELECT queries that use index against a merge table with empty underlying tables list may return with error "Got error 124 from storage engine". The problem was in wrong error being returned. [25 Mar 2008 15:27] Ingo Strüwing Ok to push from me. [
came across an interesting error. The particulars are below. OS: Windows Server 2008 MySQL Version: 5.1.31 64bit Usage: Supports an application Vendor Support: No After migrating the https://sqlfreebies.wordpress.com/2013/02/13/mysql-5-1-error-1030-storage-engine/ application connections to the new hardware and fresh MySQL 5.1 server, the next part of the migration was to export the data from old system into a half filled table on the new system. http://grokbase.com/t/mysql/mysql/021c27tk4f/error-1030-got-error-124-from-table-handler The servers are load balanced so data can go into the least busy server, but this does not affect anything. I should mention at this point, everything was tested and signed off on got error the development servers and we created a particular mysqldump command to do the job. As things goes there was a delay and the client continued with our original mysqldump command. When the DBA executed the command between 40 and 70 percent of the rows were rejected and mysql client stopped the import. This was acceptable to the client because the records were duplicates and not required. The application got error 124 developer noticed that the application admin page was complaining about a database connection error. The application engine was however, using the database and was happily processing new records. The application developer started up a mysql client logged in and issued two commands; SELECT COUNT(*) FROM tablename' +-------------+ | count(*) | +-------------+ | 17070556 | +-------------+ SELECT MAX(datestamp) FROM tablename; ERROR 1030 (HY000): Got error 124 from storage engine That generate a mixture of panic, amusement and confusion. The part of application was working processing records but it was also moaning about database issue and not helpfully providing the same message as the database. The table was increasing in size but issuing a SELECT MAX died while SELECT COUNT worked. That was when I got the call. It turns out that, there was another part of the application that uses the SELECT MAX statement. This along with the "changes" to the migration process, that led me to the mysqldump script as the cause. So I copied the initial datafiles to development servers and moved the 701Mb mysqldump file across. A quick search in the mysql.com libraries and I found two links. One for MySQL 4.1 and the other for MySQL 5.1.12. Out of curiosity
document_id_1, d2.document_id as document_id_2, sum(d1.weight * d2.weight) as similarity FROM dw_merge as d1 INNER JOIN dw_merge as d2 ON d1.word_id=d2.word_id WHERE d1.document_id=5 AND d1.weight > 0.05 AND d2.weight > 0.05 GROUP BY document_id_1, document_id_2 ORDER BY similarity DESC limit 0,50;"dw_merge table is a MERGE table, it reference to 100 tables.The total number of records of the 100 tables is about 400,000 records.How-To-Repeat:the table schema of the 100 tables is"CREATE TABLE document_word (document_id int(11) DEFAULT '0' NOT NULL,word_id int(11) DEFAULT '0' NOT NULL,freq int(6) DEFAULT '0' NOT NULL,weight float(7,5) DEFAULT '0.00000' NOT NULL,PRIMARY KEY (document_id, word_id),KEY word_id (word_id),KEY document_id (document_id),KEY weight (weight));"Fix:Submitter-Id: