我正在使用一个访问oracle数据库的应用程序。有时,数据库中的对象(行)会被应用程序外部的进程锁定。
我遇到的问题是,当事务到达事务超时时,arjuna协调器会尝试回滚事务,但没有成功
堆栈跟踪如下所示
09:15:42,494 WARN [InterceptorsFactory] EJBTHREE-1246: Do not use InterceptorsF
actory with a ManagedObjectAdvisor, InterceptorRegistry should be used via the b
ean container
09:16:12,287 WARN [a
当我运行我的JBOSS时,我得到了如下事务超时错误。
SystemException The following problem occured: null; nested exception is:
java.lang.IllegalStateException: [com.arjuna.ats.internal.jta.transaction.arjunacore.inactive] [com.arjuna.ats.internal.jta.transaction.a
rjunacore.inactive] The transaction is not active!; -
我没有使用Arjuna的经验,但是我的日志文件被填满了:
2011-06-27 09:25:18,021 WARN [com.arjuna.ats.jta] (Periodic Recovery) ARJUNA-16037 Could not find new XAResource to use for recovering non-serializable XAResource formatId=131076, gtrid_length=29, bqual_length=28, tx_uid=0:ffff0a2012b7:126a:4e006635:2ba0, node_name=1,
我有一个查询,我想在其中检索大量基于pk in的行,并通过JDBI中的fluent api使用select .... where id in (<ids>),如下所示:
jdbi(db).withHandle(h --> handle.createQuery(SQL).bindList("ids", listOfIds).mapToMap().list();
只要in的数量不超过数据库(DB2)在in子句中可以处理的数量,这就可以工作。显然,在我的例子中,id的列表比Db2所能处理的更长。因此,我在List<List<Integer>>
当我检查JBoss日志时,我看到很多这样的错误
2012-03-29 12:01:27,358 WARN @ [com.arjuna.ats.jta.logging.loggerI18N] [com.arjuna.ats.internal.jta.resources.arjunacore.norecoveryxa] [com.arjuna.ats.internal.jta.resources.arjunacore.norecoveryxa] Could not find new XAResource to use for recovering non-serializable XAResou
我们有JBoss EAP 4.3.0.GA_CP01环境,我需要修改
TransactionTimeout
属性
com.arjuna.ats.jbossatx.jta.TransactionManagerService
但是,每当我试图通过JMX-Console中的MBean更改该值时,就会出现以下堆栈跟踪:
java.lang.IllegalStateException: Cannot set transaction timeout once MBean has started
com.arjuna.ats.jbossatx.jta.TransactionManagerService.s
我是我的申请从JBoss5.1.0到野生苍蝇8.2。在启动服务器时,我们从数据库中获取数据并存储在应用程序范围内。这在JBoss5.1.0中运行得很好,而在WildFly 8.2上则不起作用。它显示了下面的警告。
15:04:38,152 WARN [com.arjuna.ats.arjuna] (Transaction Reaper) ARJUNA012117: TransactionReaper::check timeout for TX 0:ffff0ab6a4f7:3057cd0:55c9c01b:8 in state RUN
15:04:38,156 WARN [com.arj
我在Jboss 6上使用XA数据源,使用<check-valid-connection-sql>和<background-validation-millis>在其中一个连接失效时自动重新连接。这是有效的,但问题是,在“重新连接”之后,每隔两分钟左右我就会收到这个奇怪的异常,即使我的数据库操作正在工作。
2011-10-13 12:05:22,516 WARN [com.arjuna.ats.jta] (Periodic Recovery) ARJUNA-16027 Local XARecoveryModule.xaRecovery got XA exception X
我想使用JBoss/XA Transacion和Mule 3.7中的数据库连接器组件。
但是一个例外是抛出:Transactional action is ALWAYS_JOIN but there is no active transaction (java.lang.IllegalStateException)。
我的事务性场景是:
池+数据库组件- select表A
VM组件只是为了启动一个事务- ALWAYS_BEGIN
数据库组件- MySQL - insert表B
数据库组件- Oracle - insert表C
我们必须确保插入一起运行和提交,或者一起回滚
这是大多数DAO中使用的典型设置:
@Transactional
@Repository
public class DAO {
@Autowired
SessionFactory sessionFactory;
public void save(Entity o) {
sessionFactory.getCurrentSession().save(o);
}
public Entity load(int id) {
return (Entity)sessionFactory.getCurrentSession().get(Enti
我在我的项目中使用了Spring boot和jpa,mysql。但是@Transaction不工作。如果有下面给出的任何错误代码,它不会回滚所有数据。有什么建议吗?谢谢。 应用程序: @SpringBootApplication
public class Application {
public static void main(String[] args) {
SpringApplication.run(Application.class, args);
}
} 实体产品: @Entity
public class Product extends Base
我正在构建一个Java Spring Boot微服务,它有一个表示业务事务的对象,我正在通过JPA将该业务事务映射到SQL数据库。该对象有一个'state‘属性,有两个值'open’和'completed‘。考虑到与此对象关联的大量数据卷,我希望将状态等于“completed”的对象移动到一个存档表。理想的解决方案是有两个表:一个是打开的或最近才完成的对象的“活动”表,另一个是存档的已完成对象的表。
对于如何使用JPA实现这一点,有什么建议吗?我还希望有一个设施,以连接‘实时’和‘存档’表运行查询所有的数据。
提亚
我在spring应用程序中获取了UnexpectedRollbackException。下面是我的Repository类
@Repository
public class MyDao {
@PersistenceContext
EntityManager em;
public MyData save(MyData myData){
return em.merge(myData)
}
}
这是我的Service类
@Service
public class MyService{
@Autowired
Mydao myDao;