Table Structure
CREATE TABLE `orders` ( `order_id` int(11) NOT NULL, `order_addr` varchar(255) DEFAULT NULL ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
SET SESSION TRANSACTION ISOLATION LEVEL REPEATABLE READ;
insert into orders(order_id,order_addr)
select '12345',sleep(10) from dual where not exists
(select order_id from orders where order_id='12345');
SET SESSION TRANSACTION ISOLATION LEVEL REPEATABLE READ;
insert into orders(order_id,order_addr)
select '12345',234 from dual where not exists
(select order_id from orders where order_id='12345');
First implementation of the first, then execute the second, the second success, first there will be a deadlock