]> git.ipfire.org Git - thirdparty/sqlalchemy/sqlalchemy.git/commitdiff
fix the kwargs scoping. mysteriously was affecting pool gcing
authorMike Bayer <mike_mp@zzzcomputing.com>
Fri, 29 Jan 2010 02:16:48 +0000 (02:16 +0000)
committerMike Bayer <mike_mp@zzzcomputing.com>
Fri, 29 Jan 2010 02:16:48 +0000 (02:16 +0000)
lib/sqlalchemy/sql/expression.py

index f0f55ed72583ed143dbae719ea7e5b98b7543ebe..5c61777fe1085512cccc7046db288a4916e07593 100644 (file)
@@ -3890,6 +3890,7 @@ class _UpdateBase(_Executable, ClauseElement):
     __visit_name__ = 'update_base'
 
     _execution_options = _Executable._execution_options.union({'autocommit':True})
+    kwargs = util.frozendict()
     
     def _generate(self):
         s = self.__class__.__new__(self.__class__)
@@ -4008,8 +4009,6 @@ class Insert(_ValuesBase):
     
     _prefixes = ()
     
-    kwargs = util.frozendict()
-    
     def __init__(self, 
                 table, 
                 values=None, 
@@ -4075,7 +4074,8 @@ class Update(_ValuesBase):
             self._whereclause = None
         self.inline = inline
 
-        self.kwargs = self._process_deprecated_kw(kwargs)
+        if kwargs:
+            self.kwargs = self._process_deprecated_kw(kwargs)
 
     def get_children(self, **kwargs):
         if self._whereclause is not None:
@@ -4124,7 +4124,8 @@ class Delete(_UpdateBase):
         else:
             self._whereclause = None
 
-        self.kwargs = self._process_deprecated_kw(kwargs)
+        if kwargs:
+            self.kwargs = self._process_deprecated_kw(kwargs)
 
     def get_children(self, **kwargs):
         if self._whereclause is not None: