Getting Error: "CURLerror (curl_easy_perform() failed) - code=2 msg='Failed initialization'."
Getting Error: "CURLerror (curl_easy_perform() failed) - code=2 msg='Failed initialization'."
(提交以下问答字符串,因为它可能对收到类似错误消息的其他人有所帮助...)
"M"提交的问题:
我有 Windows 7 64 位 ODBC 驱动程序。使用 Attunity Replicate 时,我试图从 Snowflake 读取 1TB 的数据,它在 运行 大约 5 小时后出现以下错误:
结果下载worker错误:Worker错误:[Snowflake][Snowflake] (4)
URLhttps://sfc-va-ds1-2-customer-stage.s3.amazonaws.com/ogn3-s-vass2706/results/018ef7de-01c5-8ec1-0000-2ab10047f27a_0/main/data_1_5_225?x-amz-server-side-encryption-customer-algorithm=AES256&response-content-encoding=gzip&AWSAccessKeyId=AKIAJP5BI3JZEVKDRXDQ&Expires=1568894118&Signature=MoTOQPf5ZiBjX8YNYWJ6J0KaH5Q%3D 的 REST 请求失败:CURL错误(curl_easy_perform() 失败)- code=2 msg='Failed initialization'.
注意:此错误发生在 运行 作业被触发后大约 5 小时。
"KM" 响应 #1:
1) 这个问题是间歇性出现还是一直出现?
2) 这个问题是否发生在小数据集上?
3) 您使用的 Snowflake ODBC 版本是什么?您可以使用最新的 ODBC 驱动程序版本 2.19.14 并告诉我们行为吗?
4) 您是否在网络中使用代理?
5) 请 运行 从 Snowflake Web GUI 或从 SnowSQL 终端执行以下语句,以获取需要列入 firewall/network 白名单的端点列表。 (与您的网络团队分享端点详细信息)
SELECT SYSTEM$WHITELIST();
或者(如果你想要稍微更易读的输出):
select t.value:type::varchar as type, t.value:host::varchar as host, t.value:port as port from table(flatten(input => parse_json(system$whitelist()))) as t;
注意:为了正常运行,Snowflake 必须能够访问一组 HTTP/HTTPS 个地址。如果您的服务器策略拒绝访问大部分或所有外部 IP 地址和网站,您必须将这些地址列入白名单以允许正常的服务操作。
与 Snowflake 的所有通信都通过端口 443 进行。但是,CRL 和 OCSP 认证检查通过端口 80 传输。您组织的网络管理员必须打开防火墙以允许端口 443 和 80 上的流量。
"M" 后续响应 #1:
请在下面找到我对您的问题的回复:
1) 这是间歇性问题。并非总是失败。
2) 小数据集不会出现此问题。对于较大的数据集,作业 运行s 持续 11-12 小时,然后因指定错误而失败。
3) 我们正在使用 ODBC 驱动程序版本:2.19.09.00。将检查更高版本。
4) 不。我们没有在网络中使用任何代理。
5) 好的。
我将检查我们网络中的所有 Snowflake IP 地址并将其列入白名单,安装最新的 ODBC 驱动程序并再次 运行 作业。我会及时通知您结果。
"M" 后续响应 #2:
我已经将ODBC驱动升级到最新版本2.19.14。
现在 运行ning 作业在 运行ning 24 小时后失败并出现不同的错误。
错误信息:
Result download worker error: Worker error: [Snowflake][Snowflake] (4)
REST request for URL https://sfc-va-ds1-2-customer-stage.s3.amazonaws.com/ogn3-s-vass2706/results/018f030a-0164-1b0c-0000-2ab1004b8b96_0/main/data_5_6_219?x-amz-server-side-encryption-customer-algorithm=AES256&response-content-encoding=gzip&AWSAccessKeyId=AKIAJP5BI3JZEVKDRXDQ&Expires=1569308247&Signature=2DSCUhY7DU56cpq6jo31rU5LKRw%3D failed: CURLerror (curl_easy_perform() failed) - code=28 msg='Timeout was reached'.
请问有什么建议吗?
KM 回复#2:
1) 你的操作系统是什么?
2) 这个问题发生在小数据集还是大数据集上?
3) 您能否尝试清除 Windows 服务器示例的 TEMP 位置上的一些 space,它将是 C:\Windows\Temp 和 C:\Users\\AppData\Local\Temp\ 和 linux /tmp.
4) 你能确定 URL https://sfc-va-ds1-2-customer-stage.s3.amazonaws.com 被列入白名单吗
5) 尝试命令检查连通性。
curl -v -k https://sfc-va-ds1-2-customer-stage.s3.amazonaws.com
"M" 后续响应 #3:
1) 操作系统:Windows Server 2012 R2.
2) 这个问题只发生在大数据集上——尤其是当作业 运行s 持续大约 24 小时时。
3) 完成。清除了 space.
4) URL 已列入白名单。
5) 在 windows 电源 shell 上,此命令给出错误:
Invoke-WebRequest:找不到与参数名称匹配的参数 'k'。
在line:1char:9
+ curl -v -k https://sfc-va-ds1-2-customer-stage.s3.amazonaws.com
+ ~~
+ CategoryInfo : InvalidArgument: (:) [Invoke-WebRequest], ParameterBindingException
+ FullyQualifiedErrorId : NamedParameterNotFound,Microsoft.PowerShell.Commands.InvokeWebRequestCommand
KM 响应 #3:
使用 CURL 命令测试与 Snowflake 的连接。 (确保机器上安装了 curl,如果没有那么你可以从第三方下载 curl 例如 https://curl.haxx.se/download.html)
curl -v -k https://sfc-va-ds1-2-customer-stage.s3.amazonaws.com
有时,当 TEMP 位置中 space 所剩无几时,可能会发生此问题。您可以尝试 运行 作业并监控 %TEMP% space.
我不确定 Attunity 工具如何工作,但一些 ETL 工具(如 Informatica ETL 工具)会在服务器上创建临时文件并使用 %TEMP% 位置。
"M" 后续响应 #4:
使用curl命令,现在可以连接成功了。我现在将触发作业并监控 %TEMP% 位置。
还有其他想法、建议或可能的解决方法吗?
(提交以下问答字符串,因为它可能对收到类似错误消息的其他人有所帮助...)
"M"提交的问题:
我有 Windows 7 64 位 ODBC 驱动程序。使用 Attunity Replicate 时,我试图从 Snowflake 读取 1TB 的数据,它在 运行 大约 5 小时后出现以下错误:
结果下载worker错误:Worker错误:[Snowflake][Snowflake] (4)
URLhttps://sfc-va-ds1-2-customer-stage.s3.amazonaws.com/ogn3-s-vass2706/results/018ef7de-01c5-8ec1-0000-2ab10047f27a_0/main/data_1_5_225?x-amz-server-side-encryption-customer-algorithm=AES256&response-content-encoding=gzip&AWSAccessKeyId=AKIAJP5BI3JZEVKDRXDQ&Expires=1568894118&Signature=MoTOQPf5ZiBjX8YNYWJ6J0KaH5Q%3D 的 REST 请求失败:CURL错误(curl_easy_perform() 失败)- code=2 msg='Failed initialization'.
注意:此错误发生在 运行 作业被触发后大约 5 小时。
"KM" 响应 #1:
1) 这个问题是间歇性出现还是一直出现?
2) 这个问题是否发生在小数据集上?
3) 您使用的 Snowflake ODBC 版本是什么?您可以使用最新的 ODBC 驱动程序版本 2.19.14 并告诉我们行为吗?
4) 您是否在网络中使用代理?
5) 请 运行 从 Snowflake Web GUI 或从 SnowSQL 终端执行以下语句,以获取需要列入 firewall/network 白名单的端点列表。 (与您的网络团队分享端点详细信息)
SELECT SYSTEM$WHITELIST();
或者(如果你想要稍微更易读的输出):
select t.value:type::varchar as type, t.value:host::varchar as host, t.value:port as port from table(flatten(input => parse_json(system$whitelist()))) as t;
注意:为了正常运行,Snowflake 必须能够访问一组 HTTP/HTTPS 个地址。如果您的服务器策略拒绝访问大部分或所有外部 IP 地址和网站,您必须将这些地址列入白名单以允许正常的服务操作。
与 Snowflake 的所有通信都通过端口 443 进行。但是,CRL 和 OCSP 认证检查通过端口 80 传输。您组织的网络管理员必须打开防火墙以允许端口 443 和 80 上的流量。
"M" 后续响应 #1:
请在下面找到我对您的问题的回复:
1) 这是间歇性问题。并非总是失败。
2) 小数据集不会出现此问题。对于较大的数据集,作业 运行s 持续 11-12 小时,然后因指定错误而失败。
3) 我们正在使用 ODBC 驱动程序版本:2.19.09.00。将检查更高版本。
4) 不。我们没有在网络中使用任何代理。
5) 好的。
我将检查我们网络中的所有 Snowflake IP 地址并将其列入白名单,安装最新的 ODBC 驱动程序并再次 运行 作业。我会及时通知您结果。
"M" 后续响应 #2:
我已经将ODBC驱动升级到最新版本2.19.14。
现在 运行ning 作业在 运行ning 24 小时后失败并出现不同的错误。
错误信息:
Result download worker error: Worker error: [Snowflake][Snowflake] (4)
REST request for URL https://sfc-va-ds1-2-customer-stage.s3.amazonaws.com/ogn3-s-vass2706/results/018f030a-0164-1b0c-0000-2ab1004b8b96_0/main/data_5_6_219?x-amz-server-side-encryption-customer-algorithm=AES256&response-content-encoding=gzip&AWSAccessKeyId=AKIAJP5BI3JZEVKDRXDQ&Expires=1569308247&Signature=2DSCUhY7DU56cpq6jo31rU5LKRw%3D failed: CURLerror (curl_easy_perform() failed) - code=28 msg='Timeout was reached'.
请问有什么建议吗?
KM 回复#2:
1) 你的操作系统是什么?
2) 这个问题发生在小数据集还是大数据集上?
3) 您能否尝试清除 Windows 服务器示例的 TEMP 位置上的一些 space,它将是 C:\Windows\Temp 和 C:\Users\\AppData\Local\Temp\ 和 linux /tmp.
4) 你能确定 URL https://sfc-va-ds1-2-customer-stage.s3.amazonaws.com 被列入白名单吗
5) 尝试命令检查连通性。
curl -v -k https://sfc-va-ds1-2-customer-stage.s3.amazonaws.com
"M" 后续响应 #3:
1) 操作系统:Windows Server 2012 R2.
2) 这个问题只发生在大数据集上——尤其是当作业 运行s 持续大约 24 小时时。
3) 完成。清除了 space.
4) URL 已列入白名单。
5) 在 windows 电源 shell 上,此命令给出错误:
Invoke-WebRequest:找不到与参数名称匹配的参数 'k'。
在line:1char:9
+ curl -v -k https://sfc-va-ds1-2-customer-stage.s3.amazonaws.com
+ ~~
+ CategoryInfo : InvalidArgument: (:) [Invoke-WebRequest], ParameterBindingException
+ FullyQualifiedErrorId : NamedParameterNotFound,Microsoft.PowerShell.Commands.InvokeWebRequestCommand
KM 响应 #3:
使用 CURL 命令测试与 Snowflake 的连接。 (确保机器上安装了 curl,如果没有那么你可以从第三方下载 curl 例如 https://curl.haxx.se/download.html)
curl -v -k https://sfc-va-ds1-2-customer-stage.s3.amazonaws.com
有时,当 TEMP 位置中 space 所剩无几时,可能会发生此问题。您可以尝试 运行 作业并监控 %TEMP% space.
我不确定 Attunity 工具如何工作,但一些 ETL 工具(如 Informatica ETL 工具)会在服务器上创建临时文件并使用 %TEMP% 位置。
"M" 后续响应 #4:
使用curl命令,现在可以连接成功了。我现在将触发作业并监控 %TEMP% 位置。
还有其他想法、建议或可能的解决方法吗?