myisam-repair-options does not work for mysql.proc table
Bug #1473894 reported by
Miguel Angel Nieto
This bug affects 1 person
Affects | Status | Importance | Assigned to | Milestone | ||
---|---|---|---|---|---|---|
MySQL Server |
Unknown
|
Unknown
|
||||
Percona Server moved to https://jira.percona.com/projects/PS | Status tracked in 5.7 | |||||
5.5 |
Triaged
|
Medium
|
Unassigned | |||
5.6 |
Triaged
|
Medium
|
Unassigned | |||
5.7 |
Triaged
|
Medium
|
Unassigned |
Bug Description
Same as bug http://
As a summary, on 5.5 and 5.6 the table mysql.proc is not automatically repaired when running procedure-related DDL. It only starts to work when you run a SELECT on mysql.proc table.
The summary of the issue says it doesn't work with DEFAULT or FORCE but for me it also fails with BACKUP and QUICK.
tags: | added: 56725 |
tags: |
added: i56725 removed: 56725 |
To post a comment you must log in.
This is easy to confirm with the test from upstream bug:
[openxs@centos mysql-test]$ ./mtr --mysqld= --myisam- recover= FORCE bug65786 --myisam- recover= FORCE bug65786
Logging: ./mtr --mysqld=
2015-07-13 16:17:50 2793 [Warning] Buffered warning: Changed limits: max_open_files: 1024 (requested 5000)
2015-07-13 16:17:50 2793 [Warning] Buffered warning: Changed limits: table_cache: 431 (requested 2000)
2015-07-13 16:17:50 2793 [Note] Plugin 'FEDERATED' is disabled. openxs/ dbs/p5. 6/mysql- test/var' ...
2015-07-13 16:17:50 2793 [Note] Binlog end
2015-07-13 16:17:50 2793 [Note] Shutting down plugin 'CSV'
2015-07-13 16:17:50 2793 [Note] Shutting down plugin 'MyISAM'
MySQL Version 5.6.23
Checking supported features...
- SSL connections supported
Collecting tests...
Checking leftover processes...
Removing old var directory...
Creating var directory '/home/
Installing system database...
======= ======= ======= ======= ======= ======= ======= ======= ======= ======= ======= =
TEST RESULT TIME (ms) or COMMENT ------- ------- ------- ------- ------- ------- ------- ------- ------- ----
-------
worker[1] Using MTR_BUILD_THREAD 300, with reserved ports 13000..13009
main.bug65786 [ fail ]
Test ended at 2015-07-13 16:18:06
CURRENT_TEST: main.bug65786 dbs/p5. 6/mysql- test/r/bug65786.result 2015-07-13 16:13:43.855440703 +0300 dbs/p5. 6/mysql- test/var/ log/bug65786.reject 2015-07-13 16:18:06.248440679 +0300
--- /home/openxs/
+++ /home/openxs/
@@ -0,0 +1,19 @@
+CREATE PROCEDURE p1() BEGIN END;
+# Crash and restart server
+# Succeeds with warnings on 5.1, but fails on 5.5:
+CREATE PROCEDURE p2() BEGIN END;
+ERROR HY000: Table './mysql/proc' is marked as crashed and should be repaired
+# Fails on 5.5:
+CREATE PROCEDURE p2() BEGIN END;
+ERROR HY000: Table './mysql/proc' is marked as crashed and should be repaired
+# Throws warnings:
+SELECT 1 FROM mysql.proc WHERE 0;
+1
+Warnings:
+Error 145 Table './mysql/proc' is marked as crashed and should be repaired
+Error 1194 Table 'proc' is marked as crashed and should be repaired
+Error 1034 1 client is using or hasn't closed the table properly
+# Succeeds:
+CREATE PROCEDURE p2() BEGIN END;
+DROP PROCEDURE p1;
+DROP PROCEDURE p2;
...