On 16/11/2017 2:53 AM, bill.torcaso wrote:

I frequently use Django + MySql on a pristine Vagrant virtual machine.  And on a fresh machine, for the first time, I had to manually load time zone information into mysql.

'runserver' refused to run, although 'python ./manage.py --help' ran fine (that is not a surprise - --help does not touch the database)

'runserver' said that a query failed, because of something being too old.  I'm sorry that I cannot quote the error message now.  But it would not run at all.

The solution was to run mysql_tzinfo_to_sql <https://www.google.com/url?q=https%3A%2F%2Fdev.mysql.com%2Fdoc%2Frefman%2Fen%2Fmysql-tzinfo-to-sql.html&sa=D&sntz=1&usg=AFQjCNH8YJbKdB-R4TSqRnjFDA9KkagrBw>.

>>> Does anyone understand why this is a problem now?

Time marches on and daylight savings changes occur all over the world. The actual problem might have been that East Coast Australia delayed going to daylight saving until after the recent AFL grand final. We normally switch in concert with our neighbours (eg NZ) but not this year. I suspect such arbitrary adjustments require new tzinfo data from time to time. Richmond won by the way.

I haven't changed anything in my requirements.txt.  I suppose that my Ubuntu image for Virtual Box was upgraded recently and that might explain it.

I'd like to understand why this happened.


On Tuesday, November 14, 2017 at 8:35:28 PM UTC-5, Michael Lenaghan wrote:

    For MySQL the Django docs say
    
<https://docs.djangoproject.com/en/1.11/ref/databases/#time-zone-definitions>:


        If you plan on using Django’s timezone support
        <https://docs.djangoproject.com/en/1.11/topics/i18n/timezones/>,
        use mysql_tzinfo_to_sql
        <https://dev.mysql.com/doc/refman/en/mysql-tzinfo-to-sql.html> to
        load time zone tables into the MySQL database. This needs to
        be done just once for your MySQL server, not per database.


    I can't find any evidence that Django actually uses those tables?

    Here
    
<https://github.com/django/django/blob/master/django/db/backends/mysql/operations.py#L164>,
    for example, is a snippet from adapt_datetimefield_value():

              # MySQL doesn't support tz-aware datetimes
                if timezone.is_aware(value):
                    if settings.USE_TZ:
                        value = timezone.make_naive(value,
        self.connection.timezone)
                    else:
                        raise ValueError("MySQL backend does not
        support timezone-aware datetimes when USE_TZ is False.")


    adapt_timefiled_value() is even simpler
    
<https://github.com/django/django/blob/master/django/db/backends/mysql/operations.py#L188>:

              # MySQL doesn't support tz-aware times
                if timezone.is_aware(value):
                    raise ValueError("MySQL backend does not support
        timezone-aware times.")


    What am I missing?

--
You received this message because you are subscribed to the Google Groups "Django users" group. To unsubscribe from this group and stop receiving emails from it, send an email to django-users+unsubscr...@googlegroups.com <mailto:django-users+unsubscr...@googlegroups.com>. To post to this group, send email to django-users@googlegroups.com <mailto:django-users@googlegroups.com>.
Visit this group at https://groups.google.com/group/django-users.
To view this discussion on the web visit https://groups.google.com/d/msgid/django-users/f502ca14-2342-45b6-810a-9f9bbec11da2%40googlegroups.com <https://groups.google.com/d/msgid/django-users/f502ca14-2342-45b6-810a-9f9bbec11da2%40googlegroups.com?utm_medium=email&utm_source=footer>.
For more options, visit https://groups.google.com/d/optout.

--
You received this message because you are subscribed to the Google Groups "Django 
users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to django-users+unsubscr...@googlegroups.com.
To post to this group, send email to django-users@googlegroups.com.
Visit this group at https://groups.google.com/group/django-users.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/django-users/fbf89872-ac3b-df71-8db1-2b3d8a503706%40dewhirst.com.au.
For more options, visit https://groups.google.com/d/optout.

Reply via email to