To typowy wyścig. Sprawdza, czy włożony klucz istnieje; jeśli nie, to robi wstawkę, ale ktoś inny może wstawić klucz między licznik a wstawkę. Transakcje tego nie zapobiegają.
Wydaje się, że kod tego oczekuje i próbuje sobie z tym poradzić, ale kiedy spojrzałem na kod do obsługi tego przypadku, od razu zobaczyłem, że jest zepsuty. Zgłoszone tutaj:http://code.djangoproject.com/ticket/11569
Zdecydowanie polecam trzymanie się zaplecza memcache.