mirror of
https://github.com/MariaDB/server.git
synced 2025-07-30 16:24:05 +03:00
MDEV-7477: Make innochecksum work on compressed tables
This patch ports the work that facebook has performed to make innochecksum handle compressed tables. the basic idea is to use actual innodb-code to perform checksum verification rather than duplicating in innochecksum.cc. to make this work, innodb code has been annotated with lots of #ifndef UNIV_INNOCHECKSUM so that it can be compiled outside of storage/innobase. A new testcase is also added that verifies that innochecksum works on compressed/non-compressed tables. Merged from commit fabc79d2ea976c4ff5b79bfe913e6bc03ef69d42 from https://code.google.com/p/google-mysql/ The actual steps to produce this patch are: take innochecksum from 5.6.14 apply changes in innodb from facebook patches needed to make innochecksum compile apply changes in innochecksum from facebook patches add handcrafted testcase The referenced facebook patches used are:91e25120e7
847fe76ea5
1135628a5a
4dbf7c240c
This commit is contained in:
@ -2491,6 +2491,17 @@ sub environment_setup {
|
||||
"$bindir/sql$opt_vs_config/mysql_tzinfo_to_sql");
|
||||
$ENV{'MYSQL_TZINFO_TO_SQL'}= native_path($exe_mysql_tzinfo_to_sql);
|
||||
|
||||
# ----------------------------------------------------
|
||||
# innochecksum
|
||||
# ----------------------------------------------------
|
||||
my $exe_innochecksum=
|
||||
mtr_exe_maybe_exists("$bindir/extra$opt_vs_config/innochecksum",
|
||||
"$path_client_bindir/innochecksum");
|
||||
if ($exe_innochecksum)
|
||||
{
|
||||
$ENV{'INNOCHECKSUM'}= native_path($exe_innochecksum);
|
||||
}
|
||||
|
||||
# Create an environment variable to make it possible
|
||||
# to detect that valgrind is being used from test cases
|
||||
$ENV{'VALGRIND_TEST'}= $opt_valgrind;
|
||||
|
Reference in New Issue
Block a user