PostgreSQL和Hibernate java.io.IOException:试图将超出范围的整数作为2字节值发送

问题描述 投票:1回答:2

我有hibernate查询:

getSession()                     
        .createQuery("from Entity where id in :ids") 
        .setParameterList("ids", ids)
        .list();

其中id是Collection ids,可以包含很多id。目前,当集合非常大时我得到了异常:java.io.IOException:试图发送一个超出范围的整数作为一个2字节的值我听说postgre有一些问题。但是我找不到解决方法如何在hql上重写它。

postgresql hibernate exception ioexception
2个回答
0
投票

尝试在qazxsw poi周围添加括号,即:

:ids

0
投票

发生异常的原因是PostgreSQL对每个语句的32767绑定变量的限制。作为一种可能的解决方法,尝试将大型查询拆分为较小的查询。

© www.soinside.com 2019 - 2024. All rights reserved.