summaryrefslogtreecommitdiff
path: root/sql/sql_select.cc
diff options
context:
space:
mode:
authorMats Kindahl <mats@sun.com>2009-12-18 11:12:27 +0100
committerMats Kindahl <mats@sun.com>2009-12-18 11:12:27 +0100
commite4de9401d647a6653dd74c02594ab1f76dee9292 (patch)
tree41638b1abe22070db26e94033cd74412cbaaf484 /sql/sql_select.cc
parent821ff8501ca6820a4acbe550ed511290dffeb2a6 (diff)
downloadmariadb-git-e4de9401d647a6653dd74c02594ab1f76dee9292.tar.gz
WL#5151: Conversion between different types
when replicating The function create_virtual_tmp_table does not set db_low_byte_first in the same way as create_tmp_table does, causing copying from the virtual table to a real table to get strange values for SET types on big-endian machines. mysql-test/extra/rpl_tests/type_conversions.test: Adding tests for converting between different-sized sets. sql/sql_select.cc: Settng dh_low_byte_first for tables created with create_virtual_tmp_table.
Diffstat (limited to 'sql/sql_select.cc')
-rw-r--r--sql/sql_select.cc1
1 files changed, 1 insertions, 0 deletions
diff --git a/sql/sql_select.cc b/sql/sql_select.cc
index 3e57d384192..ef055202eae 100644
--- a/sql/sql_select.cc
+++ b/sql/sql_select.cc
@@ -10398,6 +10398,7 @@ TABLE *create_virtual_tmp_table(THD *thd, List<Create_field> &field_list)
share->blob_field= blob_field;
share->fields= field_count;
share->blob_ptr_size= portable_sizeof_char_ptr;
+ share->db_low_byte_first=1; // True for HEAP and MyISAM
setup_tmp_table_column_bitmaps(table, bitmaps);
/* Create all fields and calculate the total length of record */