[ https://issues.apache.org/jira/browse/AIRFLOW-2799?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Ash Berlin-Taylor updated AIRFLOW-2799: --------------------------------------- Affects Version/s: (was: 2.0.0) 1.10.0 Fix Version/s: 1.10.1 > Filtering UI objects by datetime is broken > ------------------------------------------- > > Key: AIRFLOW-2799 > URL: https://issues.apache.org/jira/browse/AIRFLOW-2799 > Project: Apache Airflow > Issue Type: Bug > Components: ui, webserver > Affects Versions: 1.10.0 > Environment: Debian Stretch, Python 3.5.3 > Reporter: Kevin Campbell > Priority: Major > Fix For: 1.10.1 > > > On master (49fd23a3ee0269e2b974648f4a823c1d0b6c12ec) searching objects via > the user interface is broken for datetime fields. > Create a new installation > Create a test dag (example_bash_operator) > Start webserver and scheduler > Enable dag > On web UI, go to Browse > Task Instances > Search for task instances with execution_date greater than 5 days ago > You will get an exception > {code:java} > ____/ ( ( ) ) \___ > /( ( ( ) _ )) ) )\ > (( ( )( ) ) ( ) ) > ((/ ( _( ) ( _) ) ( () ) ) > ( ( ( (_) (( ( ) .((_ ) . )_ > ( ( ) ( ( ) ) ) . ) ( ) > ( ( ( ( ) ( _ ( _) ). ) . ) ) ( ) > ( ( ( ) ( ) ( )) ) _)( ) ) ) > ( ( ( \ ) ( (_ ( ) ( ) ) ) ) )) ( ) > ( ( ( ( (_ ( ) ( _ ) ) ( ) ) ) > ( ( ( ( ( ) (_ ) ) ) _) ) _( ( ) > (( ( )( ( _ ) _) _(_ ( (_ ) > (_((__(_(__(( ( ( | ) ) ) )_))__))_)___) > ((__) \\||lll|l||/// \_)) > ( /(/ ( ) ) )\ ) > ( ( ( ( | | ) ) )\ ) > ( /(| / ( )) ) ) )) ) > ( ( ((((_(|)_))))) ) > ( ||\(|(|)|/|| ) > ( |(||(||)|||| ) > ( //|/l|||)|\\ \ ) > (/ / // /|//||||\\ \ \ \ _) > ------------------------------------------------------------------------------- > Node: wave.diffractive.io > ------------------------------------------------------------------------------- > Traceback (most recent call last): > File > "/home/kev/.virtualenvs/airflow/local/lib/python3.5/site-packages/sqlalchemy/engine/base.py", > line 1116, in _execute_context > context = constructor(dialect, self, conn, *args) > File > "/home/kev/.virtualenvs/airflow/local/lib/python3.5/site-packages/sqlalchemy/engine/default.py", > line 649, in _init_compiled > for key in compiled_params > File > "/home/kev/.virtualenvs/airflow/local/lib/python3.5/site-packages/sqlalchemy/engine/default.py", > line 649, in <genexpr> > for key in compiled_params > File > "/home/kev/.virtualenvs/airflow/local/lib/python3.5/site-packages/sqlalchemy/sql/type_api.py", > line 1078, in process > return process_param(value, dialect) > File > "/home/kev/.virtualenvs/airflow/local/lib/python3.5/site-packages/sqlalchemy_utc/sqltypes.py", > line 30, in process_bind_param > raise ValueError('naive datetime is disallowed') > ValueError: naive datetime is disallowed > The above exception was the direct cause of the following exception: > Traceback (most recent call last): > File > "/home/kev/.virtualenvs/airflow/local/lib/python3.5/site-packages/flask/app.py", > line 1982, in wsgi_app > response = self.full_dispatch_request() > File > "/home/kev/.virtualenvs/airflow/local/lib/python3.5/site-packages/flask/app.py", > line 1614, in full_dispatch_request > rv = self.handle_user_exception(e) > File > "/home/kev/.virtualenvs/airflow/local/lib/python3.5/site-packages/flask/app.py", > line 1517, in handle_user_exception > reraise(exc_type, exc_value, tb) > File > "/home/kev/.virtualenvs/airflow/local/lib/python3.5/site-packages/flask/_compat.py", > line 33, in reraise > raise value > File > "/home/kev/.virtualenvs/airflow/local/lib/python3.5/site-packages/flask/app.py", > line 1612, in full_dispatch_request > rv = self.dispatch_request() > File > "/home/kev/.virtualenvs/airflow/local/lib/python3.5/site-packages/flask/app.py", > line 1598, in dispatch_request > return self.view_functions[rule.endpoint](**req.view_args) > File > "/home/kev/.virtualenvs/airflow/local/lib/python3.5/site-packages/flask_admin/base.py", > line 69, in inner > return self._run_view(f, *args, **kwargs) > File > "/home/kev/.virtualenvs/airflow/local/lib/python3.5/site-packages/flask_admin/base.py", > line 368, in _run_view > return fn(self, *args, **kwargs) > File > "/home/kev/.virtualenvs/airflow/local/lib/python3.5/site-packages/flask_admin/model/base.py", > line 1818, in index_view > view_args.search, view_args.filters) > File > "/home/kev/.virtualenvs/airflow/local/lib/python3.5/site-packages/flask_admin/contrib/sqla/view.py", > line 969, in get_list > count = count_query.scalar() if count_query else None > File > "/home/kev/.virtualenvs/airflow/local/lib/python3.5/site-packages/sqlalchemy/orm/query.py", > line 2843, in scalar > ret = self.one() > File > "/home/kev/.virtualenvs/airflow/local/lib/python3.5/site-packages/sqlalchemy/orm/query.py", > line 2814, in one > ret = self.one_or_none() > File > "/home/kev/.virtualenvs/airflow/local/lib/python3.5/site-packages/sqlalchemy/orm/query.py", > line 2784, in one_or_none > ret = list(self) > File > "/home/kev/.virtualenvs/airflow/local/lib/python3.5/site-packages/sqlalchemy/orm/query.py", > line 2855, in __iter__ > return self._execute_and_instances(context) > File > "/home/kev/.virtualenvs/airflow/local/lib/python3.5/site-packages/sqlalchemy/orm/query.py", > line 2878, in _execute_and_instances > result = conn.execute(querycontext.statement, self._params) > File > "/home/kev/.virtualenvs/airflow/local/lib/python3.5/site-packages/sqlalchemy/engine/base.py", > line 945, in execute > return meth(self, multiparams, params) > File > "/home/kev/.virtualenvs/airflow/local/lib/python3.5/site-packages/sqlalchemy/sql/elements.py", > line 263, in _execute_on_connection > return connection._execute_clauseelement(self, multiparams, params) > File > "/home/kev/.virtualenvs/airflow/local/lib/python3.5/site-packages/sqlalchemy/engine/base.py", > line 1053, in _execute_clauseelement > compiled_sql, distilled_params > File > "/home/kev/.virtualenvs/airflow/local/lib/python3.5/site-packages/sqlalchemy/engine/base.py", > line 1121, in _execute_context > None, None) > File > "/home/kev/.virtualenvs/airflow/local/lib/python3.5/site-packages/sqlalchemy/engine/base.py", > line 1402, in _handle_dbapi_exception > exc_info > File > "/home/kev/.virtualenvs/airflow/local/lib/python3.5/site-packages/sqlalchemy/util/compat.py", > line 203, in raise_from_cause > reraise(type(exception), exception, tb=exc_tb, cause=cause) > File > "/home/kev/.virtualenvs/airflow/local/lib/python3.5/site-packages/sqlalchemy/util/compat.py", > line 186, in reraise > raise value.with_traceback(tb) > File > "/home/kev/.virtualenvs/airflow/local/lib/python3.5/site-packages/sqlalchemy/engine/base.py", > line 1116, in _execute_context > context = constructor(dialect, self, conn, *args) > File > "/home/kev/.virtualenvs/airflow/local/lib/python3.5/site-packages/sqlalchemy/engine/default.py", > line 649, in _init_compiled > for key in compiled_params > File > "/home/kev/.virtualenvs/airflow/local/lib/python3.5/site-packages/sqlalchemy/engine/default.py", > line 649, in <genexpr> > for key in compiled_params > File > "/home/kev/.virtualenvs/airflow/local/lib/python3.5/site-packages/sqlalchemy/sql/type_api.py", > line 1078, in process > return process_param(value, dialect) > File > "/home/kev/.virtualenvs/airflow/local/lib/python3.5/site-packages/sqlalchemy_utc/sqltypes.py", > line 30, in process_bind_param > raise ValueError('naive datetime is disallowed') > sqlalchemy.exc.StatementError: (builtins.ValueError) naive datetime is > disallowed [SQL: 'SELECT count(%(count_2)s) AS count_1 \nFROM task_instance > \nWHERE task_instance.execution_date > %(execution_date_1)s'] [parameters: > [{}]] > {code} > This appears to have been introduced in > https://issues.apache.org/jira/browse/AIRFLOW-288 > I've written a patch for this, which appears to resolve the issue. Will raise > a PR. -- This message was sent by Atlassian JIRA (v7.6.3#76005)