set tokudb_enable_fast_upsert=1;
set session sql_mode=(select replace(@@sql_mode,'STRICT_TRANS_TABLES',''));
Warnings:
Warning	3135	'NO_ZERO_DATE', 'NO_ZERO_IN_DATE' and 'ERROR_FOR_DIVISION_BY_ZERO' sql modes should be used with strict mode. They will be merged with strict mode in a future release.
set session sql_mode=(select replace(@@sql_mode,'STRICT_ALL_TABLES',''));
Warnings:
Warning	3135	'NO_ZERO_DATE', 'NO_ZERO_IN_DATE' and 'ERROR_FOR_DIVISION_BY_ZERO' sql modes should be used with strict mode. They will be merged with strict mode in a future release.
create table t (id bigint primary key, b bigint not null default 0)
engine = tokudb;
SET SESSION sql_mode=(SELECT REPLACE(@@sql_mode,'STRICT_TRANS_TABLES',''));
Warnings:
Warning	3135	'NO_ZERO_DATE', 'NO_ZERO_IN_DATE' and 'ERROR_FOR_DIVISION_BY_ZERO' sql modes should be used with strict mode. They will be merged with strict mode in a future release.
SET SESSION sql_mode=(SELECT REPLACE(@@sql_mode,'STRICT_ALL_TABLES',''));
Warnings:
Warning	3135	'NO_ZERO_DATE', 'NO_ZERO_IN_DATE' and 'ERROR_FOR_DIVISION_BY_ZERO' sql modes should be used with strict mode. They will be merged with strict mode in a future release.
set tokudb_enable_fast_upsert=1;
begin;
insert into t (id) values (1) on duplicate key update b=b+1;
begin;
insert into t (id) values (2) on duplicate key update b=b-1;
insert into t (id) values (2) on duplicate key update b=b+1;
insert into t (id) values (1) on duplicate key update b=b-1;
Got one of the listed errors
rollback;
commit;
select * from t;
id	b
1	0
2	0
drop table t;
