如何解决雪花 python 连接器在 6 小时后抛出 403 禁止
我有一段代码可以从雪花下载大量数据(> 200M)并将其写入我的本地数据库。我正在使用 Python Snowflake 连接器 v2.1.3 来提取我的数据。它可以正常运行约 6 个小时,之后它开始从雪花中抛出 403 错误并最终关闭。我尝试使用推荐的参数,例如“insecure_mode=True”和“client_session_keep_alive=True”,但没有任何效果
2021-05-12 09:45:40,061 [INFO/ForkPoolWorker-2/pid(26)][/app/.venv/lib/python3.7/site-packages/snowflake/connector/ssl_wrap_socket.py:427] THIS CONNECTION IS IN INSECURE MODE. IT MEANS THE CERTIFICATE WILL BE VALIDATED BUT THE CERTIFICATE REVOCATION STATUS WILL NOT BE CHECKED.
2021-05-12 09:45:40,279 [DEBUG/ForkPoolWorker-2/pid(26)][/app/.venv/lib/python3.7/site-packages/urllib3/connectionpool.py:393] https://sfc-va-ds1-2-customer-stage.s3.amazonaws.com:443 "GET /9jz1-s-vass3666/results/019c2ffa-0502-21c7-0000-39b10525bbee_0/main/data_0_0_18?x-amz-server-side-encryption-customer-algorithm=AES256&response-content-encoding=gzip&AWSAccessKeyId=<key_id>&Expires=1620808614&Signature=<signature> HTTP/1.1" 403 None
2021-05-12 09:45:40,280 [DEBUG/ForkPoolWorker-2/pid(26)][/app/.venv/lib/python3.7/site-packages/snowflake/connector/network.py:822] HTTP 403: Forbidden. Retrying...
2021-05-12 09:45:40,281 [ERROR/ForkPoolWorker-2/pid(26)][/app/.venv/lib/python3.7/site-packages/snowflake/connector/network.py:678] HTTP 403: Forbidden
Traceback (most recent call last):
File "/app/.venv/lib/python3.7/site-packages/snowflake/connector/network.py",line 652,in _request_exec_wrapper
**kwargs)
File "/app/.venv/lib/python3.7/site-packages/snowflake/connector/network.py",line 913,in _request_exec
raise err
File "/app/.venv/lib/python3.7/site-packages/snowflake/connector/network.py",line 824,in _request_exec
raise RetryRequest(exi)
snowflake.connector.network.RetryRequest: HTTP 403: Forbidden
2021-05-12 09:45:40,282 [DEBUG/ForkPoolWorker-2/pid(26)][/app/.venv/lib/python3.7/site-packages/snowflake/connector/network.py:953] Active requests sessions: 1,idle: 3
2021-05-12 09:45:40,282 [ERROR/ForkPoolWorker-2/pid(26)][/app/.venv/lib/python3.7/site-packages/snowflake/connector/chunk_downloader.py:148] Failed to fetch the large result set chunk 18/2035
Traceback (most recent call last):
File "/app/.venv/lib/python3.7/site-packages/snowflake/connector/network.py",in _request_exec
raise RetryRequest(exi)
snowflake.connector.network.RetryRequest: HTTP 403: Forbidden
During handling of the above exception,another exception occurred:
Traceback (most recent call last):
File "/app/.venv/lib/python3.7/site-packages/snowflake/connector/chunk_downloader.py",line 125,in _download_chunk
result_data = self._fetch_chunk(self._chunks[idx].url,headers)
File "/app/.venv/lib/python3.7/site-packages/snowflake/connector/chunk_downloader.py",line 258,in _fetch_chunk
binary_data_handler=handler)
File "/app/.venv/lib/python3.7/site-packages/snowflake/connector/network.py",line 612,in fetch
**kwargs)
File "/app/.venv/lib/python3.7/site-packages/snowflake/connector/network.py",line 692,in _request_exec_wrapper
Error.errorhandler_wrapper(conn,None,cause)
File "/app/.venv/lib/python3.7/site-packages/snowflake/connector/errors.py",line 100,in errorhandler_wrapper
connection.errorhandler(connection,cursor,errorclass,errorvalue)
File "/app/.venv/lib/python3.7/site-packages/snowflake/connector/errors.py",line 73,in default_errorhandler
done_format_msg=errorvalue.get(u'done_format_msg'))
snowflake.connector.errors.ForbiddenError: HTTP 403: Forbidden
之后你所知道的就是
2021-05-12 09:45:46,405 [DEBUG/ForkPoolWorker-2/pid(26)][/app/.venv/lib/python3.7/site-packages/urllib3/connectionpool.py:393] https://sfc-va-ds1-2-customer-stage.s3.amazonaws.com:443 "GET /9jz1-s-vass3666/results/019c2ffa-0502-21c7-0000-39b10525bbee_0/main/data_0_0_19?x-amz-server-side-encryption-customer-algorithm=AES256&response-content-encoding=gzip&AWSAccessKeyId=<key>&Expires=1620808614&Signature=<signature> HTTP/1.1" 403 None
2021-05-12 09:45:46,406 [DEBUG/ForkPoolWorker-2/pid(26)][/app/.venv/lib/python3.7/site-packages/snowflake/connector/network.py:822] HTTP 403: Forbidden. Retrying...
2021-05-12 09:45:46,407 [DEBUG/ForkPoolWorker-2/pid(26)][/app/.venv/lib/python3.7/site-packages/snowflake/connector/network.py:706] retrying: errorclass=<class 'snowflake.connector.errors.ForbiddenError'>,error=HTTP 403: Forbidden,counter=136,sleeping=16(s)
在我看来,与雪花的连接是活动的,但与舞台的连接已过期,有什么办法可以解决这个问题吗?
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。