• Anssi Kääriäinen's avatar
    Fixed #17502 -- Made joining in inheritance cases consistent · 2a2708e1
    Anssi Kääriäinen yazdı
    The original problem was that when filtering two levels up in
    inheritance chain, Django optimized the join generation so that the
    middle model was skipped. But then Django generated joins from top
    to middle to bottom for SELECT clause, and thus there was one extra
    join (top->middle->bottom + top -> bottom).
    
    This case is fixed in master as the filtering optimization is gone.
    This has the side effect that in some cases there is still extra join
    if the SELECT clause doesn't contain anything from middle or bottom.
    2a2708e1
tests.py 16.5 KB