Problemas com transações

Bom dia pessoal,

Estou tentando desenvolver uma aplicação multi-thread, e estou tendo problemas com as transações no mysql.

Acontece que 2 threads pegam o mesmo registro.

            conn.setAutoCommit(false);
            Statement stm = conn.createStatement();
            
            stm.addBatch("LOCK TABLES status_mail WRITE");
            stm.addBatch("Update status_mail set status= 'Pronto' WHERE status = 'Aguardando' LIMIT 10");
            stm.addBatch("UNLOCK TABLES");

            stm.executeBatch();
            conn.commit();

Alguem sabe como posso resolver isso???

Agradeço desde já.

Vc pode usar a instrução transaction, ou então usar um framework de persistência, com o hibernate, que ele vai cuidar disso p/ vc.

Falow!

Não rolou nem com BEGIN nem com START TRANSACTION, por isso tentei iniciar a transação com conn.setAutoCommit(false).

Alguma outra sugestão???