Hi, I am testing performance of three querysets

1.
    for pk in xrange(1,50000):
        user = User.objects.only("power_level").get(pk = pk)
        d = user.power_level
2.
    for pk in xrange(1,50000):
        user = User.objects.defer("name","email","age","info").get(pk
= pk)
        d = user.power_level
3.
    for pk in xrange(1,50000):
        user = User.objects.get(pk = pk)
        d = user.power_level

#models.py
class User(models.Model):
    name = models.CharField(max_length = 255, blank = False)
    email = models.CharField(max_length = 255, blank = False)
    age = models.SmallIntegerField(blank = False)
    power_level = models.IntegerField(blank = False)
    info = models.TextField(blank = False)

I was expecting first two querysets to be faster, but for some reason
it takes about ~105sec to finish (3) and ~130sec for (1) and (2)
I've checked queries generated by both querysets and can see that I am
not doing any extra requests to DB, and that (1) and (2) generates
correct SQL which includes only pk and power_level fields. I have
DEBUG=False when running tests.
Can this be a bug?

-- 
You received this message because you are subscribed to the Google Groups 
"Django developers" group.
To post to this group, send email to django-develop...@googlegroups.com.
To unsubscribe from this group, send email to 
django-developers+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/django-developers?hl=en.

Reply via email to