#21109: Performance regression due to wrap_database_errors
-------------------------------------+-------------------------------------
               Reporter:  akaariai   |          Owner:  nobody
                   Type:             |         Status:  new
  Cleanup/optimization               |        Version:  1.6-beta-1
              Component:  Database   |       Keywords:
  layer (models, ORM)                |      Has patch:  1
               Severity:  Normal     |    Needs tests:  0
           Triage Stage:  Ready for  |  Easy pickings:  0
  checkin                            |
    Needs documentation:  0          |
Patch needs improvement:  0          |
                  UI/UX:  0          |
-------------------------------------+-------------------------------------
 Djangobench comparison between 1.5.x and 1.6.x revealed a problem with
 database error wrapping. Somewhat surprisingly the reason for the
 regression is functools.wraps. In addition it is possible to use
 @cached_property for connection.wrap_database_errors.

 The regression was around 10% for query_iterator and around 50% for
 raw_sql djangobench benchmarks.

 A patch is available from
 
https://github.com/akaariai/django/commit/eafc373c16350abe51c565c8aefbe36cabf5219e.
 There is a minor comment fix to be done, otherwise ready for checkin.

 Discussion about performance of 1.5.x vs 1.6.x:
 https://groups.google.com/forum/#!topic/django-developers/ytr3j8suVxE

-- 
Ticket URL: <https://code.djangoproject.com/ticket/21109>
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/051.f863af4b82225cb8594a2a05603c01ae%40djangoproject.com.
For more options, visit https://groups.google.com/groups/opt_out.

Reply via email to