airflow-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Jarek Potiuk <Jarek.Pot...@polidea.com>
Subject Re: Changed behaviour of Timezone DST in Python 3.6 vs. 3.5
Date Sun, 14 Apr 2019 10:26:16 GMT
Ok. I think I fixed it and PR <https://github.com/apache/airflow/pull/5095>
is running in Travis. It was quite an interesting one. Yet another tiny
python3.5 vs. python 3.6 incompatibility :). This time because we are
mixing standard datetime and pendulum - we are using croniter and it does
not play well with pendulum's datetime so we have to rely on the standard
datetime rather than pendulum's one.

For those interested - details in
https://issues.apache.org/jira/browse/AIRFLOW-4308. Another reason why we
should run Travis CI with both: 3.5 and 3.6 :).

The result of the issue was that in case clock moved back during DST
change, the schedule would fire at the:
* second instance of the same clock time in python 3.5
* first instance of the same clock time in python 3.6 (so an hour earlier)

After my fix in both 3.5 and 3.6, the schedule will fire at the second
instance of the clock time.

Luckily at least  in Europe this problem is gone in two years altogether ;).

J.

On Sun, Apr 14, 2019 at 10:52 AM Jarek Potiuk <Jarek.Potiuk@polidea.com>
wrote:

> As per update - It looks like it's the changed fold behaviour, rather than
> TZ. I will try to dig deeper and see what's going on.
>
> J.
>
> On Sun, Apr 14, 2019 at 10:38 AM Ash Berlin-Taylor <ash@apache.org> wrote:
>
>> Does anything in Airflow depend upon the TZ environment variable, or even
>> the stock tz behaviour? I thought we used the pendulum library as it was
>> more predictable.
>>
>> If it's just that one test that fails it should be fixed, and perhaps
>> added to our docs they TZ isn't respected (ie use the existing config
>> options we've already got)
>>
>> -a
>>
>> On 14 April 2019 08:28:34 BST, Jarek Potiuk <Jarek.Potiuk@polidea.com>
>> wrote:
>> >Hello Airflowers.
>> >
>> >While testing the multi-staging docker I've found an incompatibility
>> >problem between python 3.5 and 3.6 w/regards to Timezone DST. Seems
>> >related
>> >to a known TZ behaviour change in Python 3.6
>> >https://bugs.python.org/issue30062
>> >
>> >I created a JIRA issue for it:
>> >https://issues.apache.org/jira/browse/AIRFLOW-4308 but it's not
>> >entirely
>> >obvious whether the problem is in the test or it's a real Airflow
>> >problem.
>> >
>> >Before I dig deeper, maybe someone who is more familiar with the
>> >timezone
>> >tests/code can shed some light on this ? I use the Simplified
>> >Development
>> >Workflow environment to test it and I have repeatable behaviour so I
>> >can
>> >very quickly retest it if someone can suggest some solutions :)
>> >
>> >J.
>> >
>> >--
>> >
>> >Jarek Potiuk
>> >Polidea <https://www.polidea.com/> | Principal Software Engineer
>> >
>> >M: +48 660 796 129 <+48660796129>
>> >E: jarek.potiuk@polidea.com
>>
>
>
> --
>
> Jarek Potiuk
> Polidea <https://www.polidea.com/> | Principal Software Engineer
>
> M: +48 660 796 129 <+48660796129>
> E: jarek.potiuk@polidea.com
>


-- 

Jarek Potiuk
Polidea <https://www.polidea.com/> | Principal Software Engineer

M: +48 660 796 129 <+48660796129>
E: jarek.potiuk@polidea.com

Mime
  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message