Index: db/backends/postgresql_psycopg2/base.py
===================================================================
--- db/backends/postgresql_psycopg2/base.py	(revision 5790)
+++ db/backends/postgresql_psycopg2/base.py	(working copy)
@@ -34,9 +34,9 @@
 
     def cursor(self):
         from django.conf import settings
-        set_tz = False
+        first_cursor = False
         if self.connection is None:
-            set_tz = True
+            first_cursor = True
             if settings.DATABASE_NAME == '':
                 from django.core.exceptions import ImproperlyConfigured
                 raise ImproperlyConfigured, "You need to specify DATABASE_NAME in your Django settings file."
@@ -50,12 +50,14 @@
             if settings.DATABASE_PORT:
                 conn_string += " port=%s" % settings.DATABASE_PORT
             self.connection = Database.connect(conn_string, **self.options)
-            self.connection.set_isolation_level(1) # make transactions transparent to all cursors
+            self.connection.set_isolation_level(0) # autocommit
             self.connection.set_client_encoding('UTF8')
         cursor = self.connection.cursor()
         cursor.tzinfo_factory = None
-        if set_tz:
+        if first_cursor:
             cursor.execute("SET TIME ZONE %s", [settings.TIME_ZONE])
+            cursor.execute("SET SESSION CHARACTERISTICS AS TRANSACTION ISOLATION LEVEL READ COMMITTED")
+            self._commit()
         global postgres_version
         if not postgres_version:
             cursor.execute("SELECT version()")
