Code

Ticket #18989: 18989-1.diff

File 18989-1.diff, 639 bytes (added by claudep, 18 months ago)

Optimize CursorWrapper getattr

Line 
1diff --git a/django/db/backends/util.py b/django/db/backends/util.py
2index e029c42..1ba2306 100644
3--- a/django/db/backends/util.py
4+++ b/django/db/backends/util.py
5@@ -24,11 +24,9 @@ class CursorWrapper(object):
6             self.db.set_dirty()
7 
8     def __getattr__(self, attr):
9-        self.set_dirty()
10-        if attr in self.__dict__:
11-            return self.__dict__[attr]
12-        else:
13-            return getattr(self.cursor, attr)
14+        if attr in ('execute', 'executemany', 'callproc'):
15+            self.set_dirty()
16+        return getattr(self.cursor, attr)
17 
18     def __iter__(self):
19         return iter(self.cursor)