diff options
author | unknown <mattiasj@witty.local> | 2008-02-07 12:28:38 +0100 |
---|---|---|
committer | unknown <mattiasj@witty.local> | 2008-02-07 12:28:38 +0100 |
commit | b2f0ed637171a1658699e3084c3a68710fefac93 (patch) | |
tree | 1c23bc4f74fcd6be5eb117b8f31a59c4893684a9 /sql/field.h | |
parent | 324d54170144dc8926258a13ef514a77ce170506 (diff) | |
download | mariadb-git-b2f0ed637171a1658699e3084c3a68710fefac93.tar.gz |
Bug#33379: valgrind error in parts/partition_bit_myisam
Problem was that Field_bit used Field::hash() function that did not
know about using null-byte for storing bits.
Resulting in wrong length, which was caught by valgrind.
Solution: created a Field_bit::hash() that uses Field_bit::val_int()
and my_charset_bin-collation function hash_sort.
Also use the store function for platform independs
mysql-test/r/partition_datatype.result:
Bug#33379: valgrind error in parts/partition_bit_myisam
result file
enabled bit datatype test
mysql-test/t/partition_datatype.test:
Bug#33379: valgrind error in parts/partition_bit_myisam
test file
enabled bit datatype test
sql/field.cc:
Bug#33379: valgrind error in parts/partition_bit_myisam
Problem was that Field_bit used Field::hash() function that did not
know about using null-byte for storing bits.
Resulting in wrong length.
Solution: created a Field_bit::hash() that uses Field_bit::val_int()
and my_charset_bin-collation function hash_sort.
Also use the store function for platform independens.
sql/field.h:
Bug#33379: valgrind error in parts/partition_bit_myisam
Problem was that Field_bit used Field::hash() function that did not
know about using null-byte for storing bits.
Resulting in wrong length.
Solution: created a Field_bit::hash().
Diffstat (limited to 'sql/field.h')
-rw-r--r-- | sql/field.h | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/sql/field.h b/sql/field.h index a6a1d8bfabc..38a0b1d5bbd 100644 --- a/sql/field.h +++ b/sql/field.h @@ -1904,6 +1904,7 @@ public: Field::move_field_offset(ptr_diff); bit_ptr= ADD_TO_PTR(bit_ptr, ptr_diff, uchar*); } + void hash(ulong *nr, ulong *nr2); private: virtual size_t do_last_null_byte() const; |