Actually I did some bisect tests and I found out that the minimum sqlite version that works is 3.15.0 (released 2016-10-14). I am going to fail Airflow if it is less than that :)
On Tue, Jan 5, 2021 at 7:06 PM Jarek Potiuk <[email protected]> wrote: > ANother option will be a warning printed or trying to find the exact > version that does not work of course :) > > On Tue, Jan 5, 2021 at 6:50 PM Jarek Potiuk <[email protected]> wrote: > >> I cipy that from https://github.com/apache/airflow/issues/13493 but I >> wanted to know what you think. I do not think we need to vote on it >> unless there is a big disagreement. >> >> Seems that in Airflow 2.0 we use some features of sqlite3 which do not >> work with really old versions of sqlite (for sure for 3.11.0 which was >> released in 2016). >> >> Following #13397 (comment) and a few other slack discussions, it seems >> that there are enough systems out there (CentOS, RHEL7) that come with >> really old sqlite (RHEL7 with a 7 years old one!) >> >> We have so far no formal requirement for sqlite3 but in fact there is >> one. We just do not know which. I propose to take as a base the one we have >> in CI in buster debian: 3.27.2: >> >> root@b8a8e73caa2c:/opt/airflow# python >> Python 3.6.12 (default, Nov 25 2020, 03:59:00) >> [GCC 8.3.0] on linux >> Type "help", "copyright", "credits" or "license" for more information. >> >>> import sqlite3 >> >>> sqlite3.sqlite_version >> '3.27.2' >> >>> >> My proposal is that we should fail Airflow with an appropriate message if >> sqlite is the db and the sqlite version is lower than that. >> >> WDYT? >> >> -- >> +48 660 796 129 >> > > > -- > +48 660 796 129 > -- +48 660 796 129
