mariadb/mysql-test/suite/multi_source
Michael Widenius c4f5326bb7 MDEV-6255 DUPLICATE KEY Errors on SELECT .. GROUP BY that uses temporary and filesort.
The problem was that my_hash_sort didn't properly delete end-space characters properly, so strings that should compare
identically was seen as different strings.  (Space was handled correctly, but not NBSP)
This caused duplicate key errors when a heap table was converted to Aria as part of overflow in group by.

Fixed by removing all characters that compares as end space when creating a hash.

Other things:
- Fixed that --sorted_results also works for errors in mysqltest.
- Speed up hash by not comparing strings that has different hash.
- Speed up many my_hash_sort functions by using registers to calculate hash instead of pointers.
  This was previously done for some functions, but not for all.
- Made a macro of the hash function, to simplify code and to be able to experiment with new hash functions.







client/mysqltest.cc:
  Fixed that --sorted_results also works for error messages.
mysql-test/r/ctype_partitions.result:
  New test to ensure that partitions on hash works
mysql-test/suite/multi_source/gtid.result:
  Updated result
mysql-test/suite/multi_source/gtid.test:
  Test that --sorted_result works for error messages
mysql-test/suite/multi_source/gtid_ignore_duplicates.result:
  Updated result
mysql-test/suite/multi_source/gtid_ignore_duplicates.test:
  Updated result
mysql-test/suite/multi_source/load_data.result:
  Updated result
mysql-test/suite/multi_source/load_data.test:
  Updated result
mysql-test/t/ctype_partitions.test:
  New test to ensure that partitions on hash works
storage/heap/hp_write.c:
  Speed up hash by not comparing strings that has different hash.
storage/maria/ma_check.c:
  Extra debug
strings/ctype-bin.c:
  Use macro for hash function
strings/ctype-latin1.c:
  Use macro for hash function
  Use registers to calculate hash (speedup)
strings/ctype-mb.c:
  Use macro for hash function
  Use registers to calculate hash (speedup)
strings/ctype-simple.c:
  Use macro for hash function
  Use same variable names as in other my_hash_sort functions.
  Update my_hash_sort_simple() to properly remove end space (patch by Bar)
strings/ctype-uca.c:
  Ignore duplicated space inside strings and end space in my_hash_sort_uca(). This fixed MDEV-6255
  Use macro for hash function
  Use registers to calculate hash (speedup)
strings/ctype-ucs2.c:
  Use macro for hash function
  Use registers to calculate hash (speedup)
strings/ctype-utf8.c:
  Use macro for hash function
  Use registers to calculate hash (speedup)
strings/strings_def.h:
  Made a macro of the hash function, to simplify code and to be able to experiment with new hash functions.
2014-09-11 22:42:35 +03:00
..
gtid.cnf MDEV-26: Global Transaction ID. 2013-02-27 18:38:42 +01:00
gtid.result MDEV-6255 DUPLICATE KEY Errors on SELECT .. GROUP BY that uses temporary and filesort. 2014-09-11 22:42:35 +03:00
gtid.test MDEV-6255 DUPLICATE KEY Errors on SELECT .. GROUP BY that uses temporary and filesort. 2014-09-11 22:42:35 +03:00
gtid_ignore_duplicates.cnf MDEV-5804: If same GTID is received on multiple master connections in multi-source replication, the event is double-executed causing corruption or replication failure 2014-03-09 10:27:38 +01:00
gtid_ignore_duplicates.result MDEV-6255 DUPLICATE KEY Errors on SELECT .. GROUP BY that uses temporary and filesort. 2014-09-11 22:42:35 +03:00
gtid_ignore_duplicates.test MDEV-6255 DUPLICATE KEY Errors on SELECT .. GROUP BY that uses temporary and filesort. 2014-09-11 22:42:35 +03:00
info_logs-master.opt MDEV-5277 - Ensure that all MySQL 5.6 options are supported by the 2013-11-25 18:49:40 +04:00
info_logs.result 10.0-base merge 2013-12-16 13:02:21 +01:00
info_logs.test MDEV-4394 Part IIa (missing wait condition for IO thread status in info_logs) 2013-04-15 04:13:26 +04:00
load_data.result MDEV-6255 DUPLICATE KEY Errors on SELECT .. GROUP BY that uses temporary and filesort. 2014-09-11 22:42:35 +03:00
load_data.test MDEV-6255 DUPLICATE KEY Errors on SELECT .. GROUP BY that uses temporary and filesort. 2014-09-11 22:42:35 +03:00
multisource.result 10.0-base merge 2013-12-16 13:02:21 +01:00
multisource.test MDEV-4394 Part II (missing wait condition for IO thread status) 2013-04-15 03:27:21 +04:00
my.cnf Fixed issues found by QA (Elena) 2012-09-28 21:22:24 +03:00
relaylog_events.result MDEV-4475: Replication from MariaDB 10.0 to 5.5 does not work 2013-05-24 22:21:08 +02:00
relaylog_events.test Fixed MDEV-4394 Sporadic failures in multi_source tests 2013-04-14 18:30:05 +03:00
reset_master_slave.inc Merge 10.0-base -> 10.0 2013-05-28 15:39:56 +02:00
reset_slave.result 10.0-base merge 2013-12-16 13:02:21 +01:00
reset_slave.test Fixed MDEV-4394 Sporadic failures in multi_source tests 2013-04-14 18:30:05 +03:00
simple.result 10.0-base merge 2013-12-16 13:02:21 +01:00
simple.test Fixed MDEV-4394 Sporadic failures in multi_source tests 2013-04-14 18:30:05 +03:00
skip_counter.result Fixed test case as gtid events are not counted anymore 2014-02-11 18:45:49 +02:00
skip_counter.test Fixed test case as gtid events are not counted anymore 2014-02-11 18:45:49 +02:00
status_vars.result More tests and test cleanup for MDEV-253 (Multi-source replication) 2012-10-04 08:02:13 +04:00
status_vars.test Fixed MDEV-4394 Sporadic failures in multi_source tests 2013-04-14 18:30:05 +03:00
syntax.result 10.0-base merge 2013-12-16 13:02:21 +01:00
syntax.test MDEV-4865 Change related to --log option/variable was merged partially 2013-08-13 13:35:36 +02:00
wait_for_sql_thread_read_all.inc Extra check for synchronization in the multi-source replication test 2012-10-05 00:36:17 +04:00