#23714: Django-1.7 doesn't display 500 error pages during DST change
-------------------------------+--------------------
     Reporter:  mbertheau      |      Owner:  nobody
         Type:  Uncategorized  |     Status:  new
    Component:  Uncategorized  |    Version:  1.7
     Severity:  Normal         |   Keywords:
 Triage Stage:  Unreviewed     |  Has patch:  0
Easy pickings:  0              |      UI/UX:  0
-------------------------------+--------------------
 When an exception, that would normally - with `DEBUG=True` - be displayed
 in the detailed 500 page, occurs during the DST/no-DST ambiguous hour of
 the geographical area that is set as TIMEZONE, the handler crashes with
 `AmbiguousTimeError`. This seriously limits the ability of many developers
 to develop and Django applications for a time span of 1/8760 of the year.
 This is unacceptable! ^^

 {{{
 2014-10-26 02:40:14,104    ERROR django.request
 :handle_uncaught_exception  231 Internal Server Error:
 /dashboard/suppliers/
 Traceback (most recent call last):
   File "/home/markus/src/django/django/core/handlers/base.py", line 111,
 in get_response
     response = wrapped_callback(request, *callback_args,
 **callback_kwargs)
   File "/home/markus/src/django/django/db/transaction.py", line 394, in
 inner
     return func(*args, **kwargs)
   File "/home/markus/src/django/django/contrib/auth/decorators.py", line
 22, in _wrapped_view
     return view_func(request, *args, **kwargs)
   File "/home/markus/src/django/django/contrib/auth/decorators.py", line
 22, in _wrapped_view
     return view_func(request, *args, **kwargs)
   File "/home/markus/src/django/django/views/generic/base.py", line 69, in
 view
     return self.dispatch(request, *args, **kwargs)
   File "/home/markus/src/django/django/views/generic/base.py", line 87, in
 dispatch
     return handler(request, *args, **kwargs)
   File "/home/markus/src/django/django/views/generic/list.py", line 145,
 in get
     self.object_list = self.get_queryset()
   File "/home/markus/src/machtfit/apps/dashboard/supplier/views.py", line
 44, in get_queryset
     .annotate(num_orders=Count('partner__order_line')))
   File "/home/markus/src/django/django/db/models/query.py", line 802, in
 annotate
     is_summary=False)
   File "/home/markus/src/django/django/db/models/sql/query.py", line 1012,
 in add_aggregate
     field_list, opts, self.get_initial_alias())
   File "/home/markus/src/django/django/db/models/sql/query.py", line 1419,
 in setup_joins
     names, opts, allow_many, fail_on_missing=True)
   File "/home/markus/src/django/django/db/models/sql/query.py", line 1383,
 in names_to_path
     self.raise_field_error(opts, name)
   File "/home/markus/src/django/django/db/models/sql/query.py", line 1389,
 in raise_field_error
     "Choices are: %s" % (name, ", ".join(available)))
 FieldError: Cannot resolve keyword u'order_line' into field. Choices are:
 <irrelevant>
 Traceback (most recent call last):
   File "/usr/lib/python2.7/wsgiref/handlers.py", line 85, in run
     self.result = application(self.environ, self.start_response)
   File "/home/markus/src/django/django/contrib/staticfiles/handlers.py",
 line 64, in __call__
     return self.application(environ, start_response)
   File "/home/markus/src/django/django/core/handlers/wsgi.py", line 187,
 in __call__
     response = self.get_response(request)
   File "/home/markus/src/django/django/core/handlers/base.py", line 199,
 in get_response
     response = self.handle_uncaught_exception(request, resolver,
 sys.exc_info())
   File "/home/markus/src/django/django/core/handlers/base.py", line 236,
 in handle_uncaught_exception
     return debug.technical_500_response(request, *exc_info)
   File "/home/markus/src/django/django/views/debug.py", line 91, in
 technical_500_response
     html = reporter.get_traceback_html()
   File "/home/markus/src/django/django/views/debug.py", line 350, in
 get_traceback_html
     return t.render(c)
   File "/home/markus/src/django/django/template/base.py", line 148, in
 render
     return self._render(context)
   File "/home/markus/src/django/django/test/utils.py", line 88, in
 instrumented_test_render
     return self.nodelist.render(context)
   File "/home/markus/src/django/django/template/base.py", line 844, in
 render
     bit = self.render_node(node, context)
   File "/home/markus/src/django/django/template/debug.py", line 80, in
 render_node
     return node.render(context)
   File "/home/markus/src/django/django/template/debug.py", line 90, in
 render
     output = self.filter_expression.resolve(context)
   File "/home/markus/src/django/django/template/base.py", line 624, in
 resolve
     new_obj = func(obj, *arg_vals)
   File "/home/markus/src/django/django/template/defaultfilters.py", line
 769, in date
     return format(value, arg)
   File "/home/markus/src/django/django/utils/dateformat.py", line 343, in
 format
     return df.format(format_string)
   File "/home/markus/src/django/django/utils/dateformat.py", line 35, in
 format
     pieces.append(force_text(getattr(self, piece)()))
   File "/home/markus/src/django/django/utils/dateformat.py", line 268, in
 r
     return self.format('D, j M Y H:i:s O')
   File "/home/markus/src/django/django/utils/dateformat.py", line 35, in
 format
     pieces.append(force_text(getattr(self, piece)()))
   File "/home/markus/src/django/django/utils/dateformat.py", line 136, in
 O
     seconds = self.Z()
   File "/home/markus/src/django/django/utils/dateformat.py", line 189, in
 Z
     offset = self.timezone.utcoffset(self.data)
   File "/home/markus/.virtualenvs/machtfit/local/lib/python2.7/site-
 packages/pytz/tzinfo.py", line 406, in utcoffset
     dt = self.localize(dt, is_dst)
   File "/home/markus/.virtualenvs/machtfit/local/lib/python2.7/site-
 packages/pytz/tzinfo.py", line 349, in localize
     raise AmbiguousTimeError(dt)
 AmbiguousTimeError: 2014-10-26 02:40:14.190834

 }}}

--
Ticket URL: <https://code.djangoproject.com/ticket/23714>
Django <https://code.djangoproject.com/>
The Web framework for perfectionists with deadlines.

-- 
You received this message because you are subscribed to the Google Groups 
"Django updates" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To post to this group, send email to [email protected].
To view this discussion on the web visit 
https://groups.google.com/d/msgid/django-updates/052.3b0f35f7c5e517105f5fd1596411f452%40djangoproject.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to