mirror of
https://github.com/MariaDB/server.git
synced 2025-02-02 12:01:42 +01:00
c4298a3fb9
Refactoring code to add parameter to pack() and unpack() functions with purpose of indicating if data should be packed in little-endian or native order. Using new functions to always pack data for binary log in little-endian order. The purpose of this refactoring is to allow proper implementation of endian-agnostic pack() and unpack() functions. Eliminating several versions of virtual pack() and unpack() functions in favor for one single virtual function which is overridden in subclasses. Implementing pack() and unpack() functions for some field types that packed data in native format regardless of the value of the st_table_share::db_low_byte_first flag. The field types that were packed in native format regardless are: Field_real, Field_decimal, Field_tiny, Field_short, Field_medium, Field_long, Field_longlong, and Field_blob. Before the patch, row-based logging wrote the rows incorrectly on big-endian machines where the storage engine defined its own low_byte_first() to be FALSE on big-endian machines (the default is TRUE), while little-endian machines wrote the fields in correct order. The only known storage engine that does this is NDB. In effect, this means that row-based replication from or to a big-endian machine where the table was using NDB as storage engine failed if the other engine was either non-NDB or on a little-endian machine. With this patch, row-based logging is now always done in little-endian order, while ORDER BY uses the native order if the storage engine defines low_byte_first() to return FALSE for big-endian machines. In addition, the max_data_length() function available in Field_blob was generalized to the entire Field hierarchy to give the maximum number of bytes that Field::pack() will write.
24 lines
1.1 KiB
Modula-2
24 lines
1.1 KiB
Modula-2
##############################################################################
|
|
#
|
|
# List the test cases that are to be disabled temporarily.
|
|
#
|
|
# Separate the test case name and the comment with ':'.
|
|
#
|
|
# <testcasename> : BUG#<xxxx> <date disabled> <disabler> <comment>
|
|
#
|
|
# Do not use any TAB characters for whitespace.
|
|
#
|
|
##############################################################################
|
|
|
|
|
|
rpl_ndb_2innodb : BUG#19227 2006-04-20 pekka pk delete apparently not replicated
|
|
rpl_ndb_2myisam : BUG#19227 Seems to pass currently
|
|
rpl_ndb_dd_partitions : BUG#19259 2006-04-21 rpl_ndb_dd_partitions fails on s/AMD
|
|
rpl_ndb_ddl : BUG#28798 2007-05-31 lars Valgrind failure in NDB
|
|
rpl_ndb_mix_innodb : BUG#28123 rpl_ndb_mix_innodb.test casue slave to core on sol10-sparc-a
|
|
rpl_ndb_ctype_ucs2_def : BUG#27404 util thd mysql_parse sig11 when mysqld default multibyte charset
|
|
|
|
|
|
# the below testcase have been reworked to avoid the bug, test contains comment, keep bug open
|
|
|
|
#rpl_ndb_dd_advance : Bug#25913 rpl_ndb_dd_advance fails randomly
|