Tenho varios arquivos para serem processados simultaneamente separados em grupo
Cada grupo de arquivo receberá um numero de lote so que estou com o seguinte problema
Em alguns caso tenho o seguinte cenário.
O arquivo A e B são do mesmo grupo e ambos iniciam o processamento.
O arquivo A irá verificar se existe um numero de lote para seu grupo, ao mesmo tempo o arquivo B tambem faz essa verificação.
Nem o arquivo A nem o B encontra um número entao A cria o número iniciando do 1 e grava na tabela, porem o B tambem faz a mesma coisa e ao gravar estoura um erro de contraint no banco pois ele tanta salvar um numero para um grupo que ja existe (número que o arquivo A gravou).
Preciso dar uma especie de Lock na tabela enquanto A trabalha, to usando JPA no EJB3 como faço ?