-
Committer:
Alexey Kopytov
-
Date:
2013-04-20 16:24:22 UTC
-
mto:
This revision was merged to the branch mainline in
revision
544.
-
Revision ID:
akopytov@gmail.com-20130420162422-wpjctmt6zq2tvk1m
Bug #1169169: xtrabackup_56 crashes when preparing a backup with
partitioned tables
The problem was that xtrabackup_56 used the implementation of
innobase_convert_identifier() provided by the InnoDB code, rather than a
lightweight replacement provided in xtrabackup.cc for other build
flavors. The full-blown implementation may call explain_filename() which
requires MySQL localization subsystem to be initialized (which is
normally initialized in init_common_variables() on server startup). In
particular, it crashed when explain_filename() was called on a
partitioned table.
Since xtrabackup_56 links with ha_innodb.cc containing the full-blown
implementation of innobase_convert_identifier(), the bug was fixed by
replicating the lightweight version used by xtrabackup/xtrabackup_55 in
innodb56.patch.
An alternative approach would be to mimic localization subsystem
initialization performed in mysqld.cc, but that pulls way too many
dependencies.
This revision also fixes bug #1170340 "require_partitioning in
test/inc/ib_part.sh does not work with 5.6" (which was the reason why
bug #1169169 have not been caught by the test suite).