504网关超时错误NodeJs

use*_*361 5 http node.js http-status-code-504 snowflake-cloud-data-platform

我有一个托管在 DC/OS 实例中的应用程序,该应用程序查询雪花数据库并获取结果。我正在使用雪花 sdk来查询雪花数据库,我们也在流式传输我们从雪花获得的结果。

 var statement = connection.execute({
          sqlText: sql,
          complete: function (err, stmt, rows) {
    var stream = stmt.streamRows();
                  callback(err, stream, response);
}}
Run Code Online (Sandbox Code Playgroud)

但是如果查询很大并且在雪花中查询处理需要时间,我会在我的客户端收到 504 网关超时错误。虽然节点服务仍在运行,但假设我从浏览器/邮递员访问 DC/OS,我会得到 504 超时此处出错,但雪花将结果返回到我的节点服务。避免它的正确策略是什么?尽管我的节点服务仍然保持与雪花的连接并从雪花获取结果,但这是我从服务器获取到我的客户端的错误。

joh*_*taa 1

你能检查一下你的语句超时设置是多少吗?

您可以尝试以下方法吗:

https://docs.snowflake.com/en/sql-reference/sql/alter-user.html

# set timeout to 15 minutes
alter user USERNAME set STATEMENT_TIMEOUT_IN_SECONDS = 900;
Run Code Online (Sandbox Code Playgroud)

https://docs.snowflake.com/en/sql-reference/sql/alter-session.html

语句超时_秒=

示例 将会话中执行的语句的锁定超时设置为 1 小时(3600 秒):

alter session set STATEMENT_TIMEOUT_IN_SECONDS = 3600;
Run Code Online (Sandbox Code Playgroud)

将会话中执行的语句的锁定超时设置回默认值:

alter session unset STATEMENT_TIMEOUT_IN_SECONDS;
Run Code Online (Sandbox Code Playgroud)

您是否已寻求雪花支持?