[ https://issues.apache.org/jira/browse/AIRFLOW-3593?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
will-beta updated AIRFLOW-3593: ------------------------------- Description: The username provided by *Azure Database for PostgreSQL server* has a '@'. But *sql_alchemy_conn* and *result_backend* in the *airflow.cfg* do not allow it. {panel:title=exception info"} (virtualenv-airflow) AirFlowTest@AirFlowTest:~/airflow$ airflow initdb [2018-12-29 11:00:40,925] {settings.py:174} INFO - setting.configure_orm(): Using pool settings. pool_size=5, pool_recycle=1800 [2018-12-29 11:00:41,418] {__init__.py:51} INFO - Using executor CeleryExecutor DB: postgresql+psycopg2://admin%40pg-test1:***@pg-test1.postgres.database.chinacloudapi.cn/airflow [2018-12-29 11:00:41,620] {db.py:338} INFO - Creating tables Traceback (most recent call last): File "/home/AirFlowTest/virtualenv-airflow/bin/airflow", line 32, in <module> args.func(args) File "/home/AirFlowTest/virtualenv-airflow/local/lib/python2.7/site-packages/airflow/bin/cli.py", line 1011, in initdb db_utils.initdb(settings.RBAC) File "/home/AirFlowTest/virtualenv-airflow/local/lib/python2.7/site-packages/airflow/utils/db.py", line 92, in initdb upgradedb() File "/home/AirFlowTest/virtualenv-airflow/local/lib/python2.7/site-packages/airflow/utils/db.py", line 346, in upgradedb command.upgrade(config, 'heads') File "/home/AirFlowTest/virtualenv-airflow/local/lib/python2.7/site-packages/alembic/command.py", line 174, in upgrade script.run_env() File "/home/AirFlowTest/virtualenv-airflow/local/lib/python2.7/site-packages/alembic/script/base.py", line 416, in run_env util.load_python_file(self.dir, 'env.py') File "/home/AirFlowTest/virtualenv-airflow/local/lib/python2.7/site-packages/alembic/util/pyfiles.py", line 93, in load_python_file module = load_module_py(module_id, path) File "/home/AirFlowTest/virtualenv-airflow/local/lib/python2.7/site-packages/alembic/util/compat.py", line 79, in load_module_py mod = imp.load_source(module_id, path, fp) File "/home/AirFlowTest/virtualenv-airflow/local/lib/python2.7/site-packages/airflow/migrations/env.py", line 91, in <module> run_migrations_online() File "/home/AirFlowTest/virtualenv-airflow/local/lib/python2.7/site-packages/airflow/migrations/env.py", line 78, in run_migrations_online with connectable.connect() as connection: File "/home/AirFlowTest/virtualenv-airflow/local/lib/python2.7/site-packages/sqlalchemy/engine/base.py", line 2091, in connect return self._connection_cls(self, **kwargs) File "/home/AirFlowTest/virtualenv-airflow/local/lib/python2.7/site-packages/sqlalchemy/engine/base.py", line 90, in __init__ if connection is not None else engine.raw_connection() File "/home/AirFlowTest/virtualenv-airflow/local/lib/python2.7/site-packages/sqlalchemy/engine/base.py", line 2177, in raw_connection self.pool.unique_connection, _connection) File "/home/AirFlowTest/virtualenv-airflow/local/lib/python2.7/site-packages/sqlalchemy/engine/base.py", line 2151, in _wrap_pool_connect e, dialect, self) File "/home/AirFlowTest/virtualenv-airflow/local/lib/python2.7/site-packages/sqlalchemy/engine/base.py", line 1465, in _handle_dbapi_exception_noconnection exc_info File "/home/AirFlowTest/virtualenv-airflow/local/lib/python2.7/site-packages/sqlalchemy/util/compat.py", line 203, in raise_from_cause reraise(type(exception), exception, tb=exc_tb, cause=cause) File "/home/AirFlowTest/virtualenv-airflow/local/lib/python2.7/site-packages/sqlalchemy/engine/base.py", line 2147, in _wrap_pool_connect return fn() File "/home/AirFlowTest/virtualenv-airflow/local/lib/python2.7/site-packages/sqlalchemy/pool.py", line 328, in unique_connection return _ConnectionFairy._checkout(self) File "/home/AirFlowTest/virtualenv-airflow/local/lib/python2.7/site-packages/sqlalchemy/pool.py", line 768, in _checkout fairy = _ConnectionRecord.checkout(pool) File "/home/AirFlowTest/virtualenv-airflow/local/lib/python2.7/site-packages/sqlalchemy/pool.py", line 516, in checkout rec = pool._do_get() File "/home/AirFlowTest/virtualenv-airflow/local/lib/python2.7/site-packages/sqlalchemy/pool.py", line 1140, in _do_get self._dec_overflow() File "/home/AirFlowTest/virtualenv-airflow/local/lib/python2.7/site-packages/sqlalchemy/util/langhelpers.py", line 66, in __exit__ compat.reraise(exc_type, exc_value, exc_tb) File "/home/AirFlowTest/virtualenv-airflow/local/lib/python2.7/site-packages/sqlalchemy/pool.py", line 1137, in _do_get return self._create_connection() File "/home/AirFlowTest/virtualenv-airflow/local/lib/python2.7/site-packages/sqlalchemy/pool.py", line 333, in _create_connection return _ConnectionRecord(self) File "/home/AirFlowTest/virtualenv-airflow/local/lib/python2.7/site-packages/sqlalchemy/pool.py", line 461, in __init__ self.__connect(first_connect_check=True) File "/home/AirFlowTest/virtualenv-airflow/local/lib/python2.7/site-packages/sqlalchemy/pool.py", line 651, in __connect connection = pool._invoke_creator(self) File "/home/AirFlowTest/virtualenv-airflow/local/lib/python2.7/site-packages/sqlalchemy/engine/strategies.py", line 105, in connect return dialect.connect(*cargs, **cparams) File "/home/AirFlowTest/virtualenv-airflow/local/lib/python2.7/site-packages/sqlalchemy/engine/default.py", line 393, in connect return self.dbapi.connect(*cargs, **cparams) File "/home/AirFlowTest/virtualenv-airflow/local/lib/python2.7/site-packages/psycopg2/__init__.py", line 130, in connect conn = _connect(dsn, connection_factory=connection_factory, **kwasync) sqlalchemy.exc.OperationalError: (psycopg2.OperationalError) FATAL: password authentication failed for user "admin" FATAL: password authentication failed for user "admin" {panel} was: The username provided by *Azure Database for PostgreSQL server* has a '@'. But *sql_alchemy_conn* and *result_backend* in the *airflow.cfg* do not allow it. (virtualenv-airflow) AirFlowTest@AirFlowTest:~/airflow$ airflow initdb [2018-12-29 11:00:40,925] {settings.py:174} INFO - setting.configure_orm(): Using pool settings. pool_size=5, pool_recycle=1800 [2018-12-29 11:00:41,418] {__init__.py:51} INFO - Using executor CeleryExecutor DB: postgresql+psycopg2://admin%40pg-test1:***@pg-test1.postgres.database.chinacloudapi.cn/airflow [2018-12-29 11:00:41,620] {db.py:338} INFO - Creating tables Traceback (most recent call last): File "/home/AirFlowTest/virtualenv-airflow/bin/airflow", line 32, in <module> args.func(args) File "/home/AirFlowTest/virtualenv-airflow/local/lib/python2.7/site-packages/airflow/bin/cli.py", line 1011, in initdb db_utils.initdb(settings.RBAC) File "/home/AirFlowTest/virtualenv-airflow/local/lib/python2.7/site-packages/airflow/utils/db.py", line 92, in initdb upgradedb() File "/home/AirFlowTest/virtualenv-airflow/local/lib/python2.7/site-packages/airflow/utils/db.py", line 346, in upgradedb command.upgrade(config, 'heads') File "/home/AirFlowTest/virtualenv-airflow/local/lib/python2.7/site-packages/alembic/command.py", line 174, in upgrade script.run_env() File "/home/AirFlowTest/virtualenv-airflow/local/lib/python2.7/site-packages/alembic/script/base.py", line 416, in run_env util.load_python_file(self.dir, 'env.py') File "/home/AirFlowTest/virtualenv-airflow/local/lib/python2.7/site-packages/alembic/util/pyfiles.py", line 93, in load_python_file module = load_module_py(module_id, path) File "/home/AirFlowTest/virtualenv-airflow/local/lib/python2.7/site-packages/alembic/util/compat.py", line 79, in load_module_py mod = imp.load_source(module_id, path, fp) File "/home/AirFlowTest/virtualenv-airflow/local/lib/python2.7/site-packages/airflow/migrations/env.py", line 91, in <module> run_migrations_online() File "/home/AirFlowTest/virtualenv-airflow/local/lib/python2.7/site-packages/airflow/migrations/env.py", line 78, in run_migrations_online with connectable.connect() as connection: File "/home/AirFlowTest/virtualenv-airflow/local/lib/python2.7/site-packages/sqlalchemy/engine/base.py", line 2091, in connect return self._connection_cls(self, **kwargs) File "/home/AirFlowTest/virtualenv-airflow/local/lib/python2.7/site-packages/sqlalchemy/engine/base.py", line 90, in __init__ if connection is not None else engine.raw_connection() File "/home/AirFlowTest/virtualenv-airflow/local/lib/python2.7/site-packages/sqlalchemy/engine/base.py", line 2177, in raw_connection self.pool.unique_connection, _connection) File "/home/AirFlowTest/virtualenv-airflow/local/lib/python2.7/site-packages/sqlalchemy/engine/base.py", line 2151, in _wrap_pool_connect e, dialect, self) File "/home/AirFlowTest/virtualenv-airflow/local/lib/python2.7/site-packages/sqlalchemy/engine/base.py", line 1465, in _handle_dbapi_exception_noconnection exc_info File "/home/AirFlowTest/virtualenv-airflow/local/lib/python2.7/site-packages/sqlalchemy/util/compat.py", line 203, in raise_from_cause reraise(type(exception), exception, tb=exc_tb, cause=cause) File "/home/AirFlowTest/virtualenv-airflow/local/lib/python2.7/site-packages/sqlalchemy/engine/base.py", line 2147, in _wrap_pool_connect return fn() File "/home/AirFlowTest/virtualenv-airflow/local/lib/python2.7/site-packages/sqlalchemy/pool.py", line 328, in unique_connection return _ConnectionFairy._checkout(self) File "/home/AirFlowTest/virtualenv-airflow/local/lib/python2.7/site-packages/sqlalchemy/pool.py", line 768, in _checkout fairy = _ConnectionRecord.checkout(pool) File "/home/AirFlowTest/virtualenv-airflow/local/lib/python2.7/site-packages/sqlalchemy/pool.py", line 516, in checkout rec = pool._do_get() File "/home/AirFlowTest/virtualenv-airflow/local/lib/python2.7/site-packages/sqlalchemy/pool.py", line 1140, in _do_get self._dec_overflow() File "/home/AirFlowTest/virtualenv-airflow/local/lib/python2.7/site-packages/sqlalchemy/util/langhelpers.py", line 66, in __exit__ compat.reraise(exc_type, exc_value, exc_tb) File "/home/AirFlowTest/virtualenv-airflow/local/lib/python2.7/site-packages/sqlalchemy/pool.py", line 1137, in _do_get return self._create_connection() File "/home/AirFlowTest/virtualenv-airflow/local/lib/python2.7/site-packages/sqlalchemy/pool.py", line 333, in _create_connection return _ConnectionRecord(self) File "/home/AirFlowTest/virtualenv-airflow/local/lib/python2.7/site-packages/sqlalchemy/pool.py", line 461, in __init__ self.__connect(first_connect_check=True) File "/home/AirFlowTest/virtualenv-airflow/local/lib/python2.7/site-packages/sqlalchemy/pool.py", line 651, in __connect connection = pool._invoke_creator(self) File "/home/AirFlowTest/virtualenv-airflow/local/lib/python2.7/site-packages/sqlalchemy/engine/strategies.py", line 105, in connect return dialect.connect(*cargs, **cparams) File "/home/AirFlowTest/virtualenv-airflow/local/lib/python2.7/site-packages/sqlalchemy/engine/default.py", line 393, in connect return self.dbapi.connect(*cargs, **cparams) File "/home/AirFlowTest/virtualenv-airflow/local/lib/python2.7/site-packages/psycopg2/__init__.py", line 130, in connect conn = _connect(dsn, connection_factory=connection_factory, **kwasync) sqlalchemy.exc.OperationalError: (psycopg2.OperationalError) FATAL: password authentication failed for user "admin" FATAL: password authentication failed for user "admin" > Allow '@' in usernames. > ----------------------- > > Key: AIRFLOW-3593 > URL: https://issues.apache.org/jira/browse/AIRFLOW-3593 > Project: Apache Airflow > Issue Type: Bug > Components: configuration > Affects Versions: 1.10.1 > Reporter: will-beta > Priority: Major > > The username provided by *Azure Database for PostgreSQL server* has a '@'. > But *sql_alchemy_conn* and *result_backend* in the *airflow.cfg* do not allow > it. > {panel:title=exception info"} > (virtualenv-airflow) AirFlowTest@AirFlowTest:~/airflow$ airflow initdb > [2018-12-29 11:00:40,925] {settings.py:174} INFO - setting.configure_orm(): > Using pool settings. pool_size=5, pool_recycle=1800 > [2018-12-29 11:00:41,418] {__init__.py:51} INFO - Using executor > CeleryExecutor > DB: > postgresql+psycopg2://admin%40pg-test1:***@pg-test1.postgres.database.chinacloudapi.cn/airflow > [2018-12-29 11:00:41,620] {db.py:338} INFO - Creating tables > Traceback (most recent call last): > File "/home/AirFlowTest/virtualenv-airflow/bin/airflow", line 32, in > <module> > args.func(args) > File > "/home/AirFlowTest/virtualenv-airflow/local/lib/python2.7/site-packages/airflow/bin/cli.py", > line 1011, in initdb > db_utils.initdb(settings.RBAC) > File > "/home/AirFlowTest/virtualenv-airflow/local/lib/python2.7/site-packages/airflow/utils/db.py", > line 92, in initdb > upgradedb() > File > "/home/AirFlowTest/virtualenv-airflow/local/lib/python2.7/site-packages/airflow/utils/db.py", > line 346, in upgradedb > command.upgrade(config, 'heads') > File > "/home/AirFlowTest/virtualenv-airflow/local/lib/python2.7/site-packages/alembic/command.py", > line 174, in upgrade > script.run_env() > File > "/home/AirFlowTest/virtualenv-airflow/local/lib/python2.7/site-packages/alembic/script/base.py", > line 416, in run_env > util.load_python_file(self.dir, 'env.py') > File > "/home/AirFlowTest/virtualenv-airflow/local/lib/python2.7/site-packages/alembic/util/pyfiles.py", > line 93, in load_python_file > module = load_module_py(module_id, path) > File > "/home/AirFlowTest/virtualenv-airflow/local/lib/python2.7/site-packages/alembic/util/compat.py", > line 79, in load_module_py > mod = imp.load_source(module_id, path, fp) > File > "/home/AirFlowTest/virtualenv-airflow/local/lib/python2.7/site-packages/airflow/migrations/env.py", > line 91, in <module> > run_migrations_online() > File > "/home/AirFlowTest/virtualenv-airflow/local/lib/python2.7/site-packages/airflow/migrations/env.py", > line 78, in run_migrations_online > with connectable.connect() as connection: > File > "/home/AirFlowTest/virtualenv-airflow/local/lib/python2.7/site-packages/sqlalchemy/engine/base.py", > line 2091, in connect > return self._connection_cls(self, **kwargs) > File > "/home/AirFlowTest/virtualenv-airflow/local/lib/python2.7/site-packages/sqlalchemy/engine/base.py", > line 90, in __init__ > if connection is not None else engine.raw_connection() > File > "/home/AirFlowTest/virtualenv-airflow/local/lib/python2.7/site-packages/sqlalchemy/engine/base.py", > line 2177, in raw_connection > self.pool.unique_connection, _connection) > File > "/home/AirFlowTest/virtualenv-airflow/local/lib/python2.7/site-packages/sqlalchemy/engine/base.py", > line 2151, in _wrap_pool_connect > e, dialect, self) > File > "/home/AirFlowTest/virtualenv-airflow/local/lib/python2.7/site-packages/sqlalchemy/engine/base.py", > line 1465, in _handle_dbapi_exception_noconnection > exc_info > File > "/home/AirFlowTest/virtualenv-airflow/local/lib/python2.7/site-packages/sqlalchemy/util/compat.py", > line 203, in raise_from_cause > reraise(type(exception), exception, tb=exc_tb, cause=cause) > File > "/home/AirFlowTest/virtualenv-airflow/local/lib/python2.7/site-packages/sqlalchemy/engine/base.py", > line 2147, in _wrap_pool_connect > return fn() > File > "/home/AirFlowTest/virtualenv-airflow/local/lib/python2.7/site-packages/sqlalchemy/pool.py", > line 328, in unique_connection > return _ConnectionFairy._checkout(self) > File > "/home/AirFlowTest/virtualenv-airflow/local/lib/python2.7/site-packages/sqlalchemy/pool.py", > line 768, in _checkout > fairy = _ConnectionRecord.checkout(pool) > File > "/home/AirFlowTest/virtualenv-airflow/local/lib/python2.7/site-packages/sqlalchemy/pool.py", > line 516, in checkout > rec = pool._do_get() > File > "/home/AirFlowTest/virtualenv-airflow/local/lib/python2.7/site-packages/sqlalchemy/pool.py", > line 1140, in _do_get > self._dec_overflow() > File > "/home/AirFlowTest/virtualenv-airflow/local/lib/python2.7/site-packages/sqlalchemy/util/langhelpers.py", > line 66, in __exit__ > compat.reraise(exc_type, exc_value, exc_tb) > File > "/home/AirFlowTest/virtualenv-airflow/local/lib/python2.7/site-packages/sqlalchemy/pool.py", > line 1137, in _do_get > return self._create_connection() > File > "/home/AirFlowTest/virtualenv-airflow/local/lib/python2.7/site-packages/sqlalchemy/pool.py", > line 333, in _create_connection > return _ConnectionRecord(self) > File > "/home/AirFlowTest/virtualenv-airflow/local/lib/python2.7/site-packages/sqlalchemy/pool.py", > line 461, in __init__ > self.__connect(first_connect_check=True) > File > "/home/AirFlowTest/virtualenv-airflow/local/lib/python2.7/site-packages/sqlalchemy/pool.py", > line 651, in __connect > connection = pool._invoke_creator(self) > File > "/home/AirFlowTest/virtualenv-airflow/local/lib/python2.7/site-packages/sqlalchemy/engine/strategies.py", > line 105, in connect > return dialect.connect(*cargs, **cparams) > File > "/home/AirFlowTest/virtualenv-airflow/local/lib/python2.7/site-packages/sqlalchemy/engine/default.py", > line 393, in connect > return self.dbapi.connect(*cargs, **cparams) > File > "/home/AirFlowTest/virtualenv-airflow/local/lib/python2.7/site-packages/psycopg2/__init__.py", > line 130, in connect > conn = _connect(dsn, connection_factory=connection_factory, **kwasync) > sqlalchemy.exc.OperationalError: (psycopg2.OperationalError) FATAL: password > authentication failed for user "admin" > FATAL: password authentication failed for user "admin" > {panel} -- This message was sent by Atlassian JIRA (v7.6.3#76005)