【发布时间】:2023-03-29 11:48:01
【问题描述】:
我有一个包含一些图像的 @Lob 字段很少的实体。当我执行以下方法时,
entityManager.persist(myEnity);
此方法会产生以下查询,由于我的表很大,因此需要很长时间才能执行。
SELECT id, img_1, img_2 FROM my_entity WHERE (ID = :1) FOR UPDATE;
我不希望执行此查询,因为我只想插入一行。
仅供参考,我有以下应用程序环境。
EJB 3.0
EclipseLink 2.3.0
JDK 1.6
WebLogic 10.3
Oracle 11g
【问题讨论】:
-
需要多长时间?如果
id是主键,它也是一个索引,应该需要几毫秒。 -
其实这个查询是在做负载测试的时候发现的。我还有其他插入/选择查询与此一起运行,并且与其他查询相比,这个查询非常慢。例如,其他插入查询每个占总负载的 5% 左右,而这个占 25%。
标签: jpa ejb-3.0 eclipselink