From d0bc352cd730cd1ede6e457ed4320405e924327c Mon Sep 17 00:00:00 2001
From: Alexey Shelf <despawn@gmail.com>
Date: Fri, 20 Dec 2013 15:23:37 +0400
Subject: [PATCH] Add a regression test for #21643.

---
 tests/expressions_regress/tests.py | 7 +++++++
 1 file changed, 7 insertions(+)

diff --git a/tests/expressions_regress/tests.py b/tests/expressions_regress/tests.py
index e603c41..7533e4e 100644
--- a/tests/expressions_regress/tests.py
+++ b/tests/expressions_regress/tests.py
@@ -274,6 +274,13 @@ class FTimeDeltaTests(TestCase):
         self.days_long.append(e4.completed - e4.assigned)
         self.expnames = [e.name for e in Experiment.objects.all()]
 
+    def test_multiple_query_compilation(self):
+        # Ticket #21643
+        queryset = Experiment.objects.filter(end__lt=F('start') + datetime.timedelta(hours=1))
+        q1 = str(queryset.query)
+        q2 = str(queryset.query)
+        self.assertEqual(q1, q2)
+
     def test_delta_add(self):
         for i in range(len(self.deltas)):
             delta = self.deltas[i]
-- 
1.8.5.2

