stop slave; drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9; reset master; reset slave; drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9; start slave; DROP FUNCTION IF EXISTS test.f1; DROP TABLE IF EXISTS test.t1; CREATE TABLE test.t1 (a INT NOT NULL AUTO_INCREMENT, c CHAR(16),PRIMARY KEY(a))ENGINE=NDB; create function test.f1() RETURNS CHAR(16) BEGIN DECLARE tmp CHAR(16); DECLARE var_name FLOAT; SET var_name = RAND(); IF var_name > .6 THEN SET tmp = 'Texas'; ELSE SET tmp = 'MySQL'; END IF; RETURN tmp; END| INSERT INTO test.t1 VALUES (null,test.f1()),(null,test.f1()),(null,test.f1()); INSERT INTO test.t1 VALUES (null,test.f1()),(null,test.f1()),(null,test.f1()); SET AUTOCOMMIT=0; START TRANSACTION; INSERT INTO test.t1 VALUES (null,test.f1()); ROLLBACK; SET AUTOCOMMIT=1; DROP FUNCTION test.f1; DROP TABLE test.t1;