Airflow - alembic.util.exc.CommandError: Can't locate revision identified by 'a13f7613ad25'
Airflow - alembic.util.exc.CommandError: Can't locate revision identified by 'a13f7613ad25'
webserver_1 | The above exception was the direct cause of the following exception:
webserver_1 |
webserver_1 | Traceback (most recent call last):
webserver_1 | File "/usr/local/bin/airflow", line 8, in <module>
webserver_1 | sys.exit(main())
webserver_1 | File "/usr/local/lib/python3.7/site-packages/airflow/__main__.py", line 40, in main
webserver_1 | args.func(args)
webserver_1 | File "/usr/local/lib/python3.7/site-packages/airflow/cli/cli_parser.py", line 48, in command
webserver_1 | return func(*args, **kwargs)
webserver_1 | File "/usr/local/lib/python3.7/site-packages/airflow/cli/commands/db_command.py", line 31, in initdb
webserver_1 | db.initdb()
webserver_1 | File "/usr/local/lib/python3.7/site-packages/airflow/utils/db.py", line 549, in initdb
webserver_1 | upgradedb()
webserver_1 | File "/usr/local/lib/python3.7/site-packages/airflow/utils/db.py", line 684, in upgradedb
webserver_1 | command.upgrade(config, 'heads')
webserver_1 | File "/usr/local/lib/python3.7/site-packages/alembic/command.py", line 294, in upgrade
webserver_1 | script.run_env()
webserver_1 | File "/usr/local/lib/python3.7/site-packages/alembic/script/base.py", line 490, in run_env
webserver_1 | util.load_python_file(self.dir, "env.py")
webserver_1 | File "/usr/local/lib/python3.7/site-packages/alembic/util/pyfiles.py", line 97, in load_python_file
webserver_1 | module = load_module_py(module_id, path)
webserver_1 | File "/usr/local/lib/python3.7/site-packages/alembic/util/compat.py", line 184, in load_module_py
webserver_1 | spec.loader.exec_module(module)
webserver_1 | File "<frozen importlib._bootstrap_external>", line 728, in exec_module
webserver_1 | File "<frozen importlib._bootstrap>", line 219, in _call_with_frames_removed
webserver_1 | File "/usr/local/lib/python3.7/site-packages/airflow/migrations/env.py", line 108, in <module>
webserver_1 | run_migrations_online()
webserver_1 | File "/usr/local/lib/python3.7/site-packages/airflow/migrations/env.py", line 102, in run_migrations_online
webserver_1 | context.run_migrations()
webserver_1 | File "<string>", line 8, in run_migrations
webserver_1 | File "/usr/local/lib/python3.7/site-packages/alembic/runtime/environment.py", line 813, in run_migrations
webserver_1 | self.get_context().run_migrations(**kw)
webserver_1 | File "/usr/local/lib/python3.7/site-packages/alembic/runtime/migration.py", line 549, in run_migrations
webserver_1 | for step in self._migrations_fn(heads, self):
webserver_1 | File "/usr/local/lib/python3.7/site-packages/alembic/command.py", line 283, in upgrade
webserver_1 | return script._upgrade_revs(revision, rev)
webserver_1 | File "/usr/local/lib/python3.7/site-packages/alembic/script/base.py", line 370, in _upgrade_revs
webserver_1 | for script in reversed(list(revs))
webserver_1 | File "/usr/local/lib/python3.7/contextlib.py", line 130, in __exit__
webserver_1 | self.gen.throw(type, value, traceback)
webserver_1 | File "/usr/local/lib/python3.7/site-packages/alembic/script/base.py", line 203, in _catch_revision_errors
webserver_1 | compat.raise_(util.CommandError(resolution), from_=re)
webserver_1 | File "/usr/local/lib/python3.7/site-packages/alembic/util/compat.py", line 296, in raise_
webserver_1 | raise exception
webserver_1 | alembic.util.exc.CommandError: Can't locate revision identified by 'a13f7613ad25'
这个错误目前导致我们对 Airflow 部署产生各种挫败感。我们 运行 气流在 docker 中,奇怪的是,这个问题发生在我自己身上而不是我的同事身上,这使得调试变得非常具有挑战性。我们找到了 ,但是还不是很清楚我们可以做些什么来解决这个错误。
您应该擦除数据库并从头开始重新创建它 (airflow db reset
)。显然你的数据库已经损坏 - 如果你使用了一些开发版本的 Arirflow 或 运行 Airflow 2 上的一些旧版本的 airflow 1.10 或相反,这可能会发生。
我想(因为你在谈论 co-worker's
和 your
数据库 - 这些都是开发数据库,所以你应该能够从头开始重置它们。
如果这是一个使用 sqlite 的开发数据库,删除 sqlite3 文件也有帮助(你会在 ${AIRFLOW_HOME}
目录中找到它。这将删除数据库,airflow 将从头开始创建一个启动时自动。
如果卷是通过 docker-compose
创建的,您应该使用 docker-compose down --volumes
webserver_1 | The above exception was the direct cause of the following exception:
webserver_1 |
webserver_1 | Traceback (most recent call last):
webserver_1 | File "/usr/local/bin/airflow", line 8, in <module>
webserver_1 | sys.exit(main())
webserver_1 | File "/usr/local/lib/python3.7/site-packages/airflow/__main__.py", line 40, in main
webserver_1 | args.func(args)
webserver_1 | File "/usr/local/lib/python3.7/site-packages/airflow/cli/cli_parser.py", line 48, in command
webserver_1 | return func(*args, **kwargs)
webserver_1 | File "/usr/local/lib/python3.7/site-packages/airflow/cli/commands/db_command.py", line 31, in initdb
webserver_1 | db.initdb()
webserver_1 | File "/usr/local/lib/python3.7/site-packages/airflow/utils/db.py", line 549, in initdb
webserver_1 | upgradedb()
webserver_1 | File "/usr/local/lib/python3.7/site-packages/airflow/utils/db.py", line 684, in upgradedb
webserver_1 | command.upgrade(config, 'heads')
webserver_1 | File "/usr/local/lib/python3.7/site-packages/alembic/command.py", line 294, in upgrade
webserver_1 | script.run_env()
webserver_1 | File "/usr/local/lib/python3.7/site-packages/alembic/script/base.py", line 490, in run_env
webserver_1 | util.load_python_file(self.dir, "env.py")
webserver_1 | File "/usr/local/lib/python3.7/site-packages/alembic/util/pyfiles.py", line 97, in load_python_file
webserver_1 | module = load_module_py(module_id, path)
webserver_1 | File "/usr/local/lib/python3.7/site-packages/alembic/util/compat.py", line 184, in load_module_py
webserver_1 | spec.loader.exec_module(module)
webserver_1 | File "<frozen importlib._bootstrap_external>", line 728, in exec_module
webserver_1 | File "<frozen importlib._bootstrap>", line 219, in _call_with_frames_removed
webserver_1 | File "/usr/local/lib/python3.7/site-packages/airflow/migrations/env.py", line 108, in <module>
webserver_1 | run_migrations_online()
webserver_1 | File "/usr/local/lib/python3.7/site-packages/airflow/migrations/env.py", line 102, in run_migrations_online
webserver_1 | context.run_migrations()
webserver_1 | File "<string>", line 8, in run_migrations
webserver_1 | File "/usr/local/lib/python3.7/site-packages/alembic/runtime/environment.py", line 813, in run_migrations
webserver_1 | self.get_context().run_migrations(**kw)
webserver_1 | File "/usr/local/lib/python3.7/site-packages/alembic/runtime/migration.py", line 549, in run_migrations
webserver_1 | for step in self._migrations_fn(heads, self):
webserver_1 | File "/usr/local/lib/python3.7/site-packages/alembic/command.py", line 283, in upgrade
webserver_1 | return script._upgrade_revs(revision, rev)
webserver_1 | File "/usr/local/lib/python3.7/site-packages/alembic/script/base.py", line 370, in _upgrade_revs
webserver_1 | for script in reversed(list(revs))
webserver_1 | File "/usr/local/lib/python3.7/contextlib.py", line 130, in __exit__
webserver_1 | self.gen.throw(type, value, traceback)
webserver_1 | File "/usr/local/lib/python3.7/site-packages/alembic/script/base.py", line 203, in _catch_revision_errors
webserver_1 | compat.raise_(util.CommandError(resolution), from_=re)
webserver_1 | File "/usr/local/lib/python3.7/site-packages/alembic/util/compat.py", line 296, in raise_
webserver_1 | raise exception
webserver_1 | alembic.util.exc.CommandError: Can't locate revision identified by 'a13f7613ad25'
这个错误目前导致我们对 Airflow 部署产生各种挫败感。我们 运行 气流在 docker 中,奇怪的是,这个问题发生在我自己身上而不是我的同事身上,这使得调试变得非常具有挑战性。我们找到了
您应该擦除数据库并从头开始重新创建它 (airflow db reset
)。显然你的数据库已经损坏 - 如果你使用了一些开发版本的 Arirflow 或 运行 Airflow 2 上的一些旧版本的 airflow 1.10 或相反,这可能会发生。
我想(因为你在谈论 co-worker's
和 your
数据库 - 这些都是开发数据库,所以你应该能够从头开始重置它们。
如果这是一个使用 sqlite 的开发数据库,删除 sqlite3 文件也有帮助(你会在 ${AIRFLOW_HOME}
目录中找到它。这将删除数据库,airflow 将从头开始创建一个启动时自动。
如果卷是通过 docker-compose
创建的,您应该使用 docker-compose down --volumes