C#

时间:2017-02-19 15:02:36

标签: c# .net odbc amazon-redshift

我在AWS上有一个Redshift实例。 我的应用程序在EC2上作为Windows服务运行,与Redshift群集位于同一区域。我有一个平均约45秒的查询,红色显然默认超时为30秒。因此,在运行此查询约30秒后,我得到:

  

错误:用户的请求取消了查询(SOME_NUMBER);   执行查询时出错

在SQL Workbench / J中运行并完成相同的查询,因此正确配置了集群。我没试过就试过了:

  • 添加" CommandTimeout = 9000; ConnectionTimeout = 9000;"到连接字符串
  • 通过OdbcConnection设置超时参数programmaticaly - > ConnectionTimeout
  • 运行"设置statement_timeout = 900000;"在查询之前
  • 配置群集参数

任何人都知道如何删除或更改默认超时?

1 个答案:

答案 0 :(得分:0)

您需要设置keep alive参数。对于JDBC驱动程序,它是tcpKeepAlive。不确定它是否与ODBC具有相同的名称。