          return self.expression.evaluate(self, qn, connection)
  
      def relabel_aliases(self, change_map):
          for node, col in self.cols.items():
              self.cols[node] = (change_map.get(col[0], col[0]), col[1])
  
      #####################################################
      # Vistor methods for initial expression preparation #
      #####################################################
  
 
</s> remove from regressiontests.aggregation_regress.models import *
 </s> add from models import Author, Book, Publisher, Clues, Entries, HardbackBook </s> remove         out = pickle.dumps(qs)
 </s> add         pickle.dumps(qs) </s> remove import pickle

from django.db import connection, models, DEFAULT_DB_ALIAS
from django.conf import settings
 </s> add from django.db import models </s> remove from django.db import DEFAULT_DB_ALIAS
 </s> add 
            if hasattr(col, "relabel_aliases"):
                col.relabel_aliases(change_map)
            else:
                self.cols[node] = (change_map.get(col[0], col[0]), col[1])
          return self.expression.evaluate(self, qn, connection)
  
      def relabel_aliases(self, change_map):
          for node, col in self.cols.items():
            if hasattr(col, "relabel_aliases"):
                col.relabel_aliases(change_map)
            else:
                self.cols[node] = (change_map.get(col[0], col[0]), col[1])
  
      #####################################################
      # Vistor methods for initial expression preparation #
      #####################################################
  
keep keep keep keep replace keep keep keep keep keep
 Fixed #14754 -- corrected using an aggregate in an F expressions when that queryset is later used in a subquery.  Thanks to master for the patch.

git-svn-id: http://code.djangoproject.com/svn/django/trunk@14681 bcc190cf-cafb-0310-a4f2-bffc1f526a37 
django/db/models/sql/expressions.py