1
0
mirror of https://github.com/MariaDB/server.git synced 2025-04-24 18:27:21 +03:00

40 Commits

Author SHA1 Message Date
Mattias Jonsson
d82dc6350c merge. Disabled the added test in merge.test from 5.1. 2011-12-15 17:12:04 +01:00
Mattias Jonsson
ea21b3a5ae Post push fix for merge.test and mysqlcheck.test on windows 2011-12-15 16:59:18 +01:00
Jon Olav Hauglid
984988cfbd Bug #11755431 (former 47205)
MAP 'REPAIR TABLE' TO RECREATE +ANALYZE FOR ENGINES NOT
SUPPORTING NATIVE REPAIR

Executing 'mysqlcheck --check-upgrade --auto-repair ...' will first issue
'CHECK TABLE FOR UPGRADE' for all tables in the database in order to check if the
tables are compatible with the current version of MySQL. Any tables that are
found incompatible are then upgraded using 'REPAIR TABLE'.

The problem was that some engines (e.g. InnoDB) do not support 'REPAIR TABLE'.
This caused any such tables to be left incompatible. As a result such tables were
not properly fixed by the mysql_upgrade tool.

This patch fixes the problem by first changing 'CHECK TABLE FOR UPGRADE' to return
a different error message if the engine does not support REPAIR. Instead of
"Table upgrade required. Please do "REPAIR TABLE ..." it will report
"Table rebuild required. Please do "ALTER TABLE ... FORCE ..."

Second, the patch changes mysqlcheck to do 'ALTER TABLE ... FORCE' instead of
'REPAIR TABLE' in these cases.

This patch also fixes 'ALTER TABLE ... FORCE' to actually rebuild the table.
This change should be reflected in the documentation. Before this patch,
'ALTER TABLE ... FORCE' was unused (See Bug#11746162)

Test case added to mysqlcheck.test
2011-03-08 09:41:57 +01:00
Alexey Botchkov
6adb077efc Bug#35269 mysqlcheck behaves different depending on order of parameters
Issue an error if user specifies multiple commands to run.
        Also there was an unnoticed bug that DO_CHECK was actually 0 which lead
        to wrong actions in some cases.
        The mysqlcheck.test contained commands with the suspicious meaning
        for the above reason. Extra commands removed from there.

per-file commands:
  client/mysqlcheck.c
Bug#35269      mysqlcheck behaves different depending on order of parameters
        Drop with an error if multiple commands.
  mysql-test/r/mysqlcheck.result
Bug#35269      mysqlcheck behaves different depending on order of parameters
        result completed.
  mysql-test/t/mysqlcheck.test
Bug#35269      mysqlcheck behaves different depending on order of parameters
        testcase added.
        not-working commands removed from some mysqlcheck calls.
2010-10-08 12:09:47 +05:00
Alexander Barkov
99eae48a97 WL#1349 Use operating system localization to send it as a default client character set 2009-10-21 17:59:47 +05:00
Jim Winstead
f8e2402084 mysqlcheck failed to fix table names when using the --fix-table-names
and --all-in-1 options together. (Bug #31821)
2009-05-20 18:31:10 -07:00
Luis Soares
14d4576bfe merge: 5.1 -> 5.1-rpl
conflicts:
  Text conflict in client/mysqltest.cc
  Text conflict in mysql-test/include/wait_until_connected_again.inc
  Text conflict in mysql-test/lib/mtr_report.pm
  Text conflict in mysql-test/mysql-test-run.pl
  Text conflict in mysql-test/r/events_bugs.result
  Text conflict in mysql-test/r/log_state.result
  Text conflict in mysql-test/r/myisam_data_pointer_size_func.result
  Text conflict in mysql-test/r/mysqlcheck.result
  Text conflict in mysql-test/r/query_cache.result
  Text conflict in mysql-test/r/status.result
  Text conflict in mysql-test/suite/binlog/r/binlog_index.result
  Text conflict in mysql-test/suite/binlog/r/binlog_innodb.result
  Text conflict in mysql-test/suite/rpl/r/rpl_packet.result
  Text conflict in mysql-test/suite/rpl/t/rpl_packet.test
  Text conflict in mysql-test/t/disabled.def
  Text conflict in mysql-test/t/events_bugs.test
  Text conflict in mysql-test/t/log_state.test
  Text conflict in mysql-test/t/myisam_data_pointer_size_func.test
  Text conflict in mysql-test/t/mysqlcheck.test
  Text conflict in mysql-test/t/query_cache.test
  Text conflict in mysql-test/t/rpl_init_slave_func.test
  Text conflict in mysql-test/t/status.test
2009-01-23 13:22:05 +01:00
Ramil Kalimullin
2dba01b2fa bug#33094: Error in upgrading from 5.0 to 5.1 when table contains triggers
Post-fix test failure: fixed mysqlcheck.test on Windows platforms.
2009-01-15 00:54:25 +04:00
Ramil Kalimullin
347762946e Fix for
bug#33094: Error in upgrading from 5.0 to 5.1 when table contains
triggers
and
#41385: Crash when attempting to repair a #mysql50# upgraded table
with triggers.

Problem:
1. trigger code didn't assume a table name may have
a "#mysql50#" prefix, that may lead to a failing ASSERT().
2. "ALTER DATABASE ... UPGRADE DATA DIRECTORY NAME" failed
for databases with "#mysql50#" prefix if any trigger.
3. mysqlcheck --fix-table-name didn't use UTF8 as a default
character set that resulted in (parsing) errors for tables with
non-latin symbols in their names and definitions of triggers.

Fix:
1. properly handle table/database names with "#mysql50#" prefix.
2. handle --default-character-set mysqlcheck option;
if mysqlcheck is launched with --fix-table-name or --fix-db-name
set default character set to UTF8 if no --default-character-set
option given.

Note: if given --fix-table-name or --fix-db-name option,
without --default-character-set mysqlcheck option
default character set is UTF8.
2009-01-14 18:50:51 +04:00
Alfranio Correia
3a644f5434 Post-fix merge 5-1 --> 5.1-rpl. Fixed mysqlcheck.test var directories. 2008-12-18 19:37:18 +00:00
Alfranio Correia
3175a06a13 merge 5.1 --> 5.1-rpl 2008-12-13 19:42:12 +00:00
Ramil Kalimullin
de1fe9054f Auto-merge 2008-11-14 13:48:01 +04:00
Ramil Kalimullin
e0d5a6c15f Fix for bug#37527: mysqlcheck fails to report entire database
when InnoDB frm file corruption

Problem: mysqlcheck runs 'SHOW FULL TABLE' queries to get table lists.
The query may fail for some reasons (e.g. null .frm file) then
mysqlcheck doesn't process the database tables.

Fix: try to run 'SHOW TABLES' if 'SHOW FULL TABLES' failed.
2008-11-14 11:40:46 +04:00
Sergey Glukhov
2e4f86af69 5.0-bugteam->5.1-bugteam automerge(bug#39541) 2008-11-13 17:09:22 +04:00
Sergey Glukhov
90548bc697 Bug#39541 CHECK TABLE on information_schema myisam tables produces error
issue 'The storage engine for the table doesn't support check' note for I_S tables
2008-11-13 17:06:48 +04:00
msvensson@pilot.mysql.com
08a901091c Repair any table in mysql database as part of cleaning up from previous runs 2008-03-12 12:19:36 +01:00
msvensson@pilot.mysql.com
06cf8665c5 Fix after merge 2008-02-28 18:55:46 +01:00
tsmith@ramayana.hindu.god
1bf737a152 Fix test case for Bug #25347 so that it actually tests the code fix,
and so that it works correctly on Windows.
2008-01-27 14:28:50 -07:00
tsmith@ramayana.hindu.god
41f288f1b9 Merge ramayana.hindu.god:/home/tsmith/m/bk/maint/50
into  ramayana.hindu.god:/home/tsmith/m/bk/maint/51
2008-01-25 16:02:41 -07:00
tsmith@ramayana.hindu.god
218627aa33 Un-break test case on Windows, for bug #25347 2008-01-25 16:00:15 -07:00
cmiller@zippy.cornsilk.net
71316696a1 Patch contributed by Jocelyn Fournier. CLA received 2007-02-27.
Bug#25347: mysqlcheck -A -r doesn't repair table marked as crashed

mysqlcheck tests nullness of the engine type to know whether the
"table" is a view or not.  That also falsely catches tables that 
are severly damaged.

Instead, use SHOW FULL TABLES to test whether a "table" is a view
or not.

(Don't add new function.  Instead, get original data a smarter way.)

Make it safe for use against databases before when views appeared.
2008-01-23 11:37:46 -05:00
cmiller@zippy.cornsilk.net
edbacd3a99 Merge zippy.cornsilk.net:/home/cmiller/work/mysql/mysql-5.1-forcollapseandmerge
into  zippy.cornsilk.net:/home/cmiller/work/mysql/mysql-5.1-maint
2007-12-14 13:42:09 -05:00
ramil/ram@ramil.myoffice.izhnet.ru
c41f8b65b5 Merge mysql.com:/home/ram/work/mysql-5.1-maint
into  mysql.com:/home/ram/work/b30679/b30679.5.1
2007-10-31 11:40:53 +04:00
ramil/ram@ramil.myoffice.izhnet.ru
0a11bc2a1f Merge mysql.com:/home/ram/work/b30654/b30654.5.0
into  mysql.com:/home/ram/work/b30654/b30654.5.1
2007-10-31 10:57:10 +04:00
ramil/ram@mysql.com/ramil.myoffice.izhnet.ru
38b3b36754 Fix for bug #30654: mysqlcheck fails during upgrade of tables whose
names include backticks or blank

Problem: mysqlcheck doesn't escape backtick characters in the table names.

Fix: escape them.
2007-10-30 12:51:57 +04:00
ramil/ram@mysql.com/ramil.myoffice.izhnet.ru
bb79b4662f Fix for bug #30679: 5.1 name encoding not performed for views during upgrade
Problem: we skip views perfoming --fix-table-names.

Fix: rename views as well.
2007-10-24 22:36:57 +05:00
cmiller@zippy.cornsilk.net
71a0ecee6e Merge zippy.cornsilk.net:/home/cmiller/work/mysql/mysql-5.0-enterprise-formergecomm
into  zippy.cornsilk.net:/home/cmiller/work/mysql/mysql-5.1-unified02
2007-04-27 16:45:01 -04:00
cmiller@zippy.cornsilk.net
bbd8b850cd Bug#25347: mysqlcheck -A -r doesn't repair table marked as crashed
Additional changes to test:  "flush tables" so that Windows releases
the files.
2007-04-16 15:00:16 -04:00
cmiller@zippy.cornsilk.net
17a57e557c Use platform-independent mysqltest language. 2007-04-10 16:47:07 -04:00
cmiller@zippy.cornsilk.net
2e698f8c4e Backport:
Patch contributed by Jocelyn Fournier.  CLA received 2007-02-27.
  
B-g#25347: mysqlcheck -A -r doesn't repair table marked as crashed
  
mysqlcheck tests nullness of the engine type to know whether the
"table" is a view or not.  That also falsely catches tables that 
are severly damaged.
  
Instead, use SHOW FULL TABLES to test whether a "table" is a view
or not.
  
(Don't add new function.  Instead, get original data a smarter way.)

Make it safe for use against databases before when views appeared.
2007-04-03 18:12:31 -04:00
monty@mysql.com/narttu.mysql.fi
410fc81a72 After merge fixes
Removed a lot of compiler warnings
Removed not used variables, functions and labels
Initialize some variables that could be used unitialized (fatal bugs)
%ll -> %l
2007-01-29 01:47:35 +02:00
monty@narttu.mysql.fi
8a80e36ac3 Merge mysql.com:/home/my/mysql-5.0
into  mysql.com:/home/my/mysql-5.1
Merge of 'remove compiler warnings when using -Wshadow'
2007-01-27 03:46:45 +02:00
monty@mysql.com/narttu.mysql.fi
88dd873de0 Fixed compiler warnings detected by option -Wshadow and -Wunused:
- Removed not used variables and functions
- Added #ifdef around code that is not used
- Renamed variables and functions to avoid conflicts
- Removed some not used arguments

Fixed some class/struct warnings in ndb
Added define IS_LONGDATA() to simplify code in libmysql.c

I did run gcov on the changes and added 'purecov' comments on almost all lines that was not just variable name changes
2006-12-15 00:51:37 +02:00
kostja@bodhi.local
5dfdc8bfce Manual merge 5.0->5.1. Post-merge fixes. 2006-08-14 13:27:11 +04:00
kostja@bodhi.local
04c97488f9 Merge bodhi.local:/opt/local/work/tmp_merge
into  bodhi.local:/opt/local/work/mysql-5.1-runtime-merge
2006-08-12 21:06:51 +04:00
jimw@rama.(none)
8489a8db07 Bug #16502: mysqlcheck gets confused with views
Make mysqlcheck skip over views when processing all of the tables in a
  database.
2006-07-24 13:31:20 -07:00
monty@mysql.com
430347f126 After merge fixes
Remove compiler warnings
2006-06-05 06:16:08 +03:00
brian@zim.(none)
cb07d52a7e This patch cleans up two tests which were a bit fragile from other failing tests. It also removes some variables associated with removed RAID support. 2006-02-24 13:20:51 -08:00
cps@outpost.site
ce2eb6d8cb WL1019: complete patch. Reapplied patch to the clean
tree to get rid of multiple typos in CS comments and
unify the patch.
2006-01-19 05:56:06 +03:00
gluh@eagle.intranet.mysql.r18.ru
7ccf861242 Fix for bug#13783 mysqlcheck tries to optimize and analyze information_schema
'information_schema' is excluded from list of databases for mysqlcheck command
2005-10-18 14:25:03 +05:00