Um único EntityManager (Hibernate) pode participar de várias transações simultâneas?
-
21-09-2019 - |
Pergunta
Existe uma maneira de um entityManager poder participar suavemente em várias transações simultâneas?
Bem, não tão concorrente. Algo como:
- Inicie o TX 1
- Faça coisas em TX 1
- Inicie o TX 2
- Faça coisas em TX 2
- Comprometa TX 2
- Junte -se ao TX 1 de volta
- Faça coisas em TX 1
- Comprometa TX 1
com etapas seguidas uma por uma não se sobrepõe.
Solução
Separado transações? Não, eu não posso.
Tentando ligar Entitytransaction.Begin () em uma transação atualmente ativa (que é o que você teria que fazer, de forma direta ou indiretamente) resultará em IllegalStateException
sendo jogado.
Unidade de trabalho / escopo de transação Os conceitos são explicados em detalhes no Manual do Hibernate EntityManager.
Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow