#24154: Fix check_aggregate_support for Expressions
-------------------------------------+-------------------------------------
               Reporter:  jarshwah   |          Owner:  jarshwah
                   Type:             |         Status:  new
  Uncategorized                      |
              Component:  Database   |        Version:  1.8alpha1
  layer (models, ORM)                |
               Severity:  Normal     |       Keywords:
           Triage Stage:             |      Has patch:  0
  Unreviewed                         |
    Needs documentation:  0          |    Needs tests:  0
Patch needs improvement:  0          |  Easy pickings:  0
                  UI/UX:  0          |
-------------------------------------+-------------------------------------
 The existing check_aggregate_support does not recursively check all sub-
 expressions. Further, there is currently no way for non-aggregate
 expressions to opt-in to backend checks.

 Expressions should call a check_backend_support method (on the compiler or
 connection) passing itself. It should also pass all sub-expressions
 (get_source_expressions), so that we can recursively check for support.

 Most expressions can be a no-op  if they know for certain that all
 backends will have support, like for the Col and Ref expressions. This
 will improve performance by removing quite a bit of method call overhead.

 The backend will then throw an exception if there is no support for a
 particular combination.

--
Ticket URL: <https://code.djangoproject.com/ticket/24154>
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 django-updates+unsubscr...@googlegroups.com.
To post to this group, send email to django-updates@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/django-updates/051.d3691159fcfb591ffd3a1c5585d019e0%40djangoproject.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to