数据库更新问题-发布记录列表时,很少更新记录-使用Spring JPA,Jersey Rest,Postgresql DB

问题描述

用例是:我有2个spring boot微服务,带有jersey休息和带有postgres DB的spring jpa。在这里,一项服务是按顺序将要更新的记录列表发布到其他服务。在90-100条记录中,有1条或2条记录数据未得到更新(这里有另一个api创建了该数据,问题发生在更新期间)。

即使对于未更新数据的记录,其子数据也会得到正确持久化。只有一个表存在此问题。 更新的代码流:

hospRepository.saveFlush(hospital); 
hospBranches.forEach(branch -> hospBranchRepo.saveAndFlush(branch));
hospPatients.forEach(patient -> hospPatientRepo.saveAndFlush(patient));

在这里,医院有患者列表和分支机构列表,它们是孩子,并且这些分支正在更新,只有父级没有更新。在这种情况下,没有启用缓存。

我看不到任何异常被抛出。使用tcpdump能够查看查询贯穿JDBC的所有过程。并使用返回的对象(如果我尝试打印能够看到的更新数据),但是在DB中仍然可以使用旧数据。

尝试保持2个请求之间的延迟,添加了同步块,并尝试对该特定实体使用纯jdbc更新,但问题仍然存在。

请有人提供您对此的见识。

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)