启动 Airflow 网络服务器失败并出现 sqlalchemy.exc.NoInspectionAvailable:没有可用的检查系统

Posted

技术标签:

【中文标题】启动 Airflow 网络服务器失败并出现 sqlalchemy.exc.NoInspectionAvailable:没有可用的检查系统【英文标题】:Starting Airflow webserver fails with sqlalchemy.exc.NoInspectionAvailable: No inspection system is available 【发布时间】:2020-07-20 22:13:46 【问题描述】:

安装正确。 db 正确启动并尝试启动网络服务器显示以下错误。

我重新安装了所有东西,但仍然无法正常工作。

如果有人帮助我,我将不胜感激。

控制台输出:

$:~/airflow# airflow webserver -p 8080
  ____________       _____________
 ____    |__( )_________  __/__  /________      __
____  /| |_  /__  ___/_  /_ __  /_  __ \_ | /| / /
___  ___ |  / _  /   _  __/ _  / / /_/ /_ |/ |/ /
 _/_/  |_/_/  /_/    /_/    /_/  \____/____/|__/
[2020-04-08 13:14:20,573] __init__.py:51 INFO - Using executor SequentialExecutor
[2020-04-08 13:14:20,574] dagbag.py:403 INFO - Filling up the DagBag from /home/cato_service/airflow/dags
Traceback (most recent call last):
  File "/usr/local/bin/airflow", line 37, in <module>
    args.func(args)
  File "/usr/local/lib/python3.6/dist-packages/airflow/utils/cli.py", line 75, in wrapper
    return f(*args, **kwargs)
  File "/usr/local/lib/python3.6/dist-packages/airflow/bin/cli.py", line 900, in webserver
    app = cached_app_rbac(None) if settings.RBAC else cached_app(None)
  File "/usr/local/lib/python3.6/dist-packages/airflow/www/app.py", line 233, in cached_app
    app = create_app(config, testing)
  File "/usr/local/lib/python3.6/dist-packages/airflow/www/app.py", line 103, in create_app
    models.Chart, Session, name="Charts", category="Data Profiling"))
  File "/usr/local/lib/python3.6/dist-packages/flask_admin/contrib/sqla/view.py", line 330, in __init__
    menu_icon_value=menu_icon_value)
  File "/usr/local/lib/python3.6/dist-packages/flask_admin/model/base.py", line 818, in __init__
    self._refresh_cache()
  File "/usr/local/lib/python3.6/dist-packages/flask_admin/model/base.py", line 913, in _refresh_cache
    self._search_supported = self.init_search()
  File "/usr/local/lib/python3.6/dist-packages/flask_admin/contrib/sqla/view.py", line 581, in init_search
    if tools.is_hybrid_property(self.model, name):
  File "/usr/local/lib/python3.6/dist-packages/flask_admin/contrib/sqla/tools.py", line 209, in is_hybrid_property
    return last_name in get_hybrid_properties(last_model)
  File "/usr/local/lib/python3.6/dist-packages/flask_admin/contrib/sqla/tools.py", line 190, in get_hybrid_properties
    for key, prop in inspect(model).all_orm_descriptors.items()
  File "/usr/local/lib/python3.6/dist-packages/sqlalchemy/inspection.py", line 72, in inspect
    "available for object of type %s" % type_
sqlalchemy.exc.NoInspectionAvailable: No inspection system is available for object of type <class 'method'>

【问题讨论】:

你好,欢迎来到 ***。我建议您通读***.com/help/how-to-ask 或查看其他一些问题以改进您未来的问题。例如:尝试将代码或控制台输出标记为代码或预先格式化的文本,以便于阅读。此外,如果您复制了您运行的确切命令,它可能会帮助人们回答您的问题,而不是 db initiated properly 【参考方案1】:

自己打这个。这是 SQLAlchemy 依赖的问题

为了解决问题,我做了以下操作:

pip3 uninstall SQLAlchemy
pip3 install SQLAlchemy==1.3.15

https://github.com/apache/airflow/issues/8211

【讨论】:

【参考方案2】:

在 Dockerfile 中包含指令pip install SQLAlchemy==1.3.15 并重建镜像已经解决了这个问题。非常感谢@Java Guy!

【讨论】:

【参考方案3】:

我遇到了上述问题。 我在Dockerfile 中添加了以下行

&amp;&amp; pip install SQLAlchemy==1.3.15 \

构建 docker 镜像

docker build --rm -t &lt;tag&gt; .

运行:

docker run -d -p 8080:8080 &lt;tag&gt;

【讨论】:

以上是关于启动 Airflow 网络服务器失败并出现 sqlalchemy.exc.NoInspectionAvailable:没有可用的检查系统的主要内容,如果未能解决你的问题,请参考以下文章

启动气流网络服务器时如何解决“错误:没有名为'airflow.www'的模块”

SQL2008 安装失败,MOF连接WIM失败

如何在 Airflow 上重新启动失败的任务

为啥启动sql server 配置管理器出现请求失败或服务未及时响应

LAMPP 启动失败并出现错误 2

DataFlow 使用 Airflow DataflowHook.start_python_dataflow 失败并返回代码 1