[resolvido]Transaction was rolled back in a different thread!

Galera, estou obtendo esse erro:

javax.persistence.PersistenceException: org.hibernate.HibernateException: Transaction was rolled back in a different thread!

tentando executar 140 mil inserts (um por loop) dentro de um loop while. Esse erro dispara por volta do insert numero 85 mil. Parece que tem haver com o timeout da transação. Esse método deve levar uns 8 minutos pra concluir toda operação e retornar. Não consegui resolver esse problema…

Segue o código

//CDI Managed Bean
@Transactional    
public void configBase() {
	
	ConfigBase.inserirRegistros();    	    	
	System.out.println("OK");
}

classe ConfigBase

@TransactionAttribute(value = TransactionAttributeType.REQUIRES_NEW)
@TransactionTimeout(value = 20, unit = TimeUnit.MINUTES)
public static void inserirRegistros() throws Exception {
	
	Scanner reader = new Scanner(arquivo);
	 		
	while(reader.hasNextLine()) {
		//inserindo registros na base
		//por do loop No 85 mil dispara 
		      //javax.persistence.PersistenceException: org.hibernate.HibernateException: Transaction was rolled back in a different thread!
	}
}

Ambiente
WildFly 12
JTA Datasource
CDI 2.0
JPA 2.1
JSF 2.2

obrigado

Você esta salvando um de cada vez?
Esta abrindo 140 mil conexoes?
:scream:

É que só vou usar esse método uma vez, para configurar a base, por isso não liguei muito pra consumo de recursos

resolvi, ví que no painel do WF dá pra aumentar o timeout default da transação

só não sei porque a anotação
@TransactionTimeout(value = 20, unit = TimeUnit.MINUTES)

não teve efeito :thinking:

publiquei a resolução aqui
http://finalexception.blogspot.com/2018/06/wildfly-12-transaction-was-rolled-back.html

Ah blz :+1:

Seguindo o post da caelum seria rapidinho para persistir.

Eu utilizo GlassFish, mas to curioso sobre outros servidores, vou dar uma olhada depois