Both utcnow() and now() return fractional seconds. These
are sometimes used in primary_keys (eg. in task_instance).
If MySQL is not configured to store these fractional seconds
a primary key might fail (eg. at session.merge) resulting in
a duplicate entry being added or worse.
Postgres does store fractional seconds if left unconfigured,
sqlite needs to be examined.
Travis' ubuntu trusty provides a more up to date
environment for CI. It allows for better testing
by integration more services like kerberos and
celery. Also it comes closer to actual production
environments (e.g. MySQL 5.6).
Sometimes the search attributes that come back are
not a list always, but a string, so we need to
check for an exact match as well as if it's a list
Closes#1876 from wyndhblb/master
Check source_format in BigQueryBaseCursor
The edits to `bigquery_hook.py` are made to
`BigQueryBaseCursor`.
Closes#1873 from Jalepeno112/bug/AIRFLOW-611
For some reason, sqllite does not always match
datetimes correctly.
This causes unit test failures, in particular the
trigger_dagrun test.
Casting the datetime explicitly appears to solve
the issue.
Closes#1871 from jlowin/failing-sqlite-test
Expose task information in an API endpoint for
usage in other tools.
This API is located in the experimental endpoints.
Dear Airflow Maintainers,
Please accept this PR that addresses the following
issues:
https://issues.apache.org/jira/browse/AIRFLOW-422
Testing Done:
- Added a simple unit test.
Expose task information in a web endpoint for
usage in other tools.
Closes#1740 from saguziel/master
.one() enforces the integrity of airflow as we
expect
a tuple to be returned here. If not the database
is
inconsistent and airflow should error out.
Dear Airflow Maintainers,
.one() enforces the integrity of airflow as we
expect
a tuple to be returned here. If not the database
is
inconsistent and airflow should error out.
partially reverts: https://github.com/apache
/incubator-airflow/pull/1730
Closes#1858 from bolkedebruin/AIRFLOW-604
AirflowConfigException should be created in
the exceptions utility file, not in
configuration.py.
All exceptions should be created in
`exceptions.py`.
https://issues.apache.org/jira/browse/AIRFLOW-370Closes#1689 from jlowin/refactor-exception
A subtle race condition in the backfill execution
loop gives
rise to occasional deadlocks, causing Travis CI
builds to
randomly fail. The root cause is unsynchronized
access to
individual task instance states for a DAG run in
the execution
inner loop.
The fix involves atomically reading the state of
all task
instances for a DAG run once at the beginning of
every
iteration of the inner loop.
Closes#1846 from vijaysbhat/travis-ci-debugging
dags/test_dag.py tries to set START_DATE to 3
hours before using
datetime.replace, but it doesn't support minus
value as argument.
So we have to use timedelta instead of simple
numeric subtraction.
Closes#1852 from sekikn/AIRFLOW-586