我使用的是具有主架构的mysql ndb集群。我的理解是,如果我搜索一些非基于id的数据,这将命中所有ndb节点。如果一个节点无法获取锁,因为行被另一个事务锁定并且等待时间已过,我将得到一个“lock wait timeout”异常。
连接到这个数据库的应用程序是带有hibernate的标准spring引导(数据库平台:org.hibernate.dialect.mysql5innodbdialect数据库:mysql)
有些事务是只读的。执行读取的事务具有before或after值(相对于其他事务)。根据这一点,如果我不添加“锁定共享模式”,这将很自然地发生。
我的方法注解如下: @Transactional(readOnly = true)
我还应该做些什么来确保我的应用程序在不等待或阻止其他事务的情况下读取?
暂无答案!
目前还没有任何答案,快来回答吧!