我们正在尝试运行insert语句,它显示如下错误:
ErrorMsg:[Vertica] [VerticaDSII](10)查询准备期间发生错误:没有连接到服务器
有时如果我再次尝试运行它,它会成功执行。 我已经增加了resultbuffersize,并且还为我的资源池增加了maxmemorysize。
让我知道解决这个问题的核心问题和行动是什么。
答案 0 :(得分:0)
由于超时,您的连接很可能已关闭,并且您尝试使用已关闭的连接。使用连接池时,您需要在代码中使用逻辑将连接拉出池以检查连接是否仍处于打开状态。如果不是,则需要将其丢弃并创建并返回新的打开连接。
通常是您的DBMS在指定的超时后断开连接。您可以将DBMS配置为永不断开连接,但这通常是一个坏主意,因为您可能很容易导致连接泄漏,并且您的服务器可能会耗尽连接,导致所有未来的连接都失败,直到服务器重新启动。