我目前正在尝试将部分 SELECT 查询从主数据库移动到我们的只读副本。这些查询主要用于统计信息和类似的东西,并且如上所述都是只读的。
我将副本数据库添加到我的 application.conf 中,并修改了要使用的查询
JPA.getJPAConfig("replica").getJPAContext().em().createNativeQuery(query)
每次我在复制品上打电话时,玩!给我以下错误:
JPA error
A JPA error occurred (No JPAConfig is found with the name replica)
我发现防止此错误的唯一方法是在其上添加一些带有 @PersistenceUnit(name="replica") 的无用类,以强制为副本创建 JPA conf。
我确实相信这更像是一个肮脏的黑客而不是一个干净的修复,并且由于副本数据库是只读的,因此在其上创建新表,即使是空的也很烦人。
如果有人找到解决此问题的另一种方法,我会很高兴听到它!
祝你早/晚/午/晚愉快!