Lambda error: no module found. Cryptography.hamtaz.bindings._constant_time

旧巷老猫 提交于 2019-12-23 13:16:20

问题


I created a lambda function which upload data to snowflake. I installed a all requirements in folder and zipped along with my main python file. While running in AWS it shows an error:

no module found. Cryptography.hamtaz.bindings._constant_time.

But I have this module at specified path. I don't know why it shows an error. I don't know why the error is arise.

Here is the code:

main(event, context):
  import snowflake.connector
  cnx = snowflake.connector.connect( user='xxx', password='yyyyy', account='zzzz', database="db Name", schema = "schema Name" )
  try:
    query = "SELECT * FROM Table_Name"
    cnx.cursor().execute(query)
  finally:
    cnx.close()

回答1:


I faced same issue recently and found it is a problem with windows environment, try to create linux environment, install Python, packages, zip your code with all libraries and then throw back to AWS lambda, hopefully it will work.




回答2:


i needed to set up a virtualenv for my lambda package to work. i also found pip install snowflake-connector-python did not install some cryptography libraries, although if i navigated to the directory i wanted them to be put in, adding --target . did cause those libraries to get installed.




回答3:


For python 3.6, when I encountered the error "Unable to import module 'main': No module named '_cffi_backend'" in an AWS Lambda Function, I was able to run mv _cffi_backend.cpython-36m-x86_64-linux-gnu.so _cffi_backend.so in my linux docker image with virtualenv and the issue was resolved. Like mentioned above, some dependencies might be better placed with --target, to get them where you need them



来源:https://stackoverflow.com/questions/53583089/lambda-error-no-module-found-cryptography-hamtaz-bindings-constant-time

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!