1
--source include/master-slave.inc
4
CREATE TABLE type_conversions (
5
TestNo INT AUTO_INCREMENT PRIMARY KEY,
16
# Checking strict interpretation of type conversions
18
SET GLOBAL SLAVE_TYPE_CONVERSIONS='';
20
SET GLOBAL SLAVE_TYPE_CONVERSIONS_ERROR_ON_TRUNCATE=OFF;
21
let $if_is_non_lossy=0;
22
let $if_is_lossy_truncate=0;
24
source include/percona_type_conversions.inc;
26
SET GLOBAL SLAVE_TYPE_CONVERSIONS_ERROR_ON_TRUNCATE=ON;
27
let $if_is_non_lossy=0;
28
let $if_is_lossy_truncate=0;
30
source include/percona_type_conversions.inc;
33
SET GLOBAL SLAVE_TYPE_CONVERSIONS='ALL_NON_LOSSY';
35
SET GLOBAL SLAVE_TYPE_CONVERSIONS_ERROR_ON_TRUNCATE=OFF;
36
let $if_is_non_lossy=1;
37
let $if_is_lossy_truncate=0;
39
source include/percona_type_conversions.inc;
41
SET GLOBAL SLAVE_TYPE_CONVERSIONS_ERROR_ON_TRUNCATE=ON;
42
let $if_is_non_lossy=1;
43
let $if_is_lossy_truncate=0;
45
source include/percona_type_conversions.inc;
48
SET GLOBAL SLAVE_TYPE_CONVERSIONS='ALL_LOSSY';
50
SET GLOBAL SLAVE_TYPE_CONVERSIONS_ERROR_ON_TRUNCATE=OFF;
51
let $if_is_non_lossy=0;
52
let $if_is_lossy_truncate=1;
54
source include/percona_type_conversions.inc;
56
SET GLOBAL SLAVE_TYPE_CONVERSIONS_ERROR_ON_TRUNCATE=ON;
57
let $if_is_non_lossy=0;
58
let $if_is_lossy_truncate=0;
60
source include/percona_type_conversions.inc;
63
--echo **** Result of conversions ****
65
SELECT RPAD(Source, 15, ' ') AS Source_Type,
66
RPAD(Target, 15, ' ') AS Target_Type,
67
RPAD(Flags, 25, ' ') AS All_Type_Conversion_Flags,
68
RPAD(Truncate, 3, ' ') AS Lossy_error_on_truncate,
69
IF(Compare IS NULL AND Error IS NOT NULL, '<Correct error>',
70
IF(Compare, '<Correct value>',
71
CONCAT("'", On_Slave, "' != '", Expected, "'")))
73
FROM type_conversions;
75
DROP TABLE type_conversions;
79
sync_slave_with_master;
82
set global slave_type_conversions = '';
83
set global slave_type_conversions_error_on_truncate = OFF;