【问题标题】:Teradata 3130 Error in JPA/Hiberate contextJPA/休眠上下文中的 Teradata 3130 错误
【发布时间】:2015-07-24 15:53:27
【问题描述】:

在批处理脚本中,我使用循环来执行一堆 sql (hql) 一个 Teradata 数据库。经过一些迭代后,我收到以下错误:

Teradata databse: 3130 Response limit exceeded

现在文档表明(以及this question 上的答案)这是由于同一会话的许多打开的结果集。

现在 session 和 ResultSet 都由 EntityManager 管理,不知道有没有办法避免在这种情况下通过 jpa/hiberate 关闭和重新打开连接。

我试过 entityManager.clear 或 flush 没有任何效果。

有没有办法更好地处理这个问题?也许我错过了一些东西。我的“批次”符文在 spring 2.5 下。在“cli”模式下。

【问题讨论】:

  • 3130 错误不是结果大小限制错误。由于打开结果集数量的限制,文档建议关闭旧结果集。所以我怀疑这是由于数据大小。顺便说一句,数据几乎什么都不是。
  • 我相信这更多地属于 teradata 方面,我建议让某人删除您为主要帖子添加的额外标签。
  • java 和 jpa 标签是合适的,因为问题是关于在不是通过 jdbc 而是通过 jpa api 连接时如何传递相关参数或关闭会话/结果集
  • 正如@WeareBorg 指出的那样——这确实是数据量的问题。其中一行包含 bll*it 的音调

标签: java spring hibernate jpa teradata


【解决方案1】:

在我的情况下,它原来是一个包含大量 blob 数据的行。经过细化步骤后,我可以在不弹出 3130 的情况下检索数据。

【讨论】:

    猜你喜欢
    • 2012-04-19
    • 1970-01-01
    • 1970-01-01
    • 2016-08-17
    • 1970-01-01
    • 2020-02-12
    • 1970-01-01
    • 2016-01-19
    • 2013-06-19
    相关资源
    最近更新 更多