[1.4.x] Fixed SQLite's collapsing of same-valued instances in bulk_create

SQLite used INSERT INTO tbl SELECT %s UNION SELECT %s, the problem
was that there should have been UNION ALL instead of UNION.

Refs #19351

Backpatch of a27582484c
This commit is contained in:
Anssi Kääriäinen 2012-11-24 00:28:20 +02:00
parent 9ee9a7265a
commit c7dcb1d808
2 changed files with 9 additions and 1 deletions

View file

@ -59,6 +59,14 @@ class BulkCreateTests(TestCase):
"CA", "IL", "ME", "NY",
], attrgetter("two_letter_code"))
def test_batch_same_vals(self):
# Sqlite had a problem where all the same-valued models were
# collapsed to one insert.
Restaurant.objects.bulk_create([
Restaurant(name='foo') for i in range(0, 2)
])
self.assertEqual(Restaurant.objects.count(), 2)
def test_large_batch(self):
with override_settings(DEBUG=True):
connection.queries = []