diff options
| author | mike bayer <mike_mp@zzzcomputing.com> | 2019-12-31 01:09:37 +0000 |
|---|---|---|
| committer | Gerrit Code Review <gerrit@bbpush.zzzcomputing.com> | 2019-12-31 01:09:37 +0000 |
| commit | 431f655b407cd3b266b5dfed5a5f3822e2c6b032 (patch) | |
| tree | 8accba3710b0497375c854f0864d1c536bf9cbc4 /lib/sqlalchemy/sql/util.py | |
| parent | d030cfed6a87e1cccd80ef1ef500cd4cb2c1f766 (diff) | |
| parent | 04fbb9e63c098dd2de40b545eed210dfd93893ce (diff) | |
| download | sqlalchemy-431f655b407cd3b266b5dfed5a5f3822e2c6b032.tar.gz | |
Merge "Test for short term reference cycles and resolve as many as possible"
Diffstat (limited to 'lib/sqlalchemy/sql/util.py')
| -rw-r--r-- | lib/sqlalchemy/sql/util.py | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/lib/sqlalchemy/sql/util.py b/lib/sqlalchemy/sql/util.py index 8539f4845..546d989eb 100644 --- a/lib/sqlalchemy/sql/util.py +++ b/lib/sqlalchemy/sql/util.py @@ -226,6 +226,7 @@ def visit_binary_product(fn, expr): yield e list(visit(expr)) + visit = None # remove gc cycles def find_tables( @@ -881,7 +882,7 @@ class ColumnAdapter(ClauseAdapter): anonymize_labels=anonymize_labels, ) - self.columns = util.populate_column_dict(self._locate_col) + self.columns = util.WeakPopulateDict(self._locate_col) if self.include_fn or self.exclude_fn: self.columns = self._IncludeExcludeMapping(self, self.columns) self.adapt_required = adapt_required @@ -907,7 +908,7 @@ class ColumnAdapter(ClauseAdapter): ac = self.__class__.__new__(self.__class__) ac.__dict__.update(self.__dict__) ac._wrap = adapter - ac.columns = util.populate_column_dict(ac._locate_col) + ac.columns = util.WeakPopulateDict(ac._locate_col) if ac.include_fn or ac.exclude_fn: ac.columns = self._IncludeExcludeMapping(ac, ac.columns) @@ -942,4 +943,4 @@ class ColumnAdapter(ClauseAdapter): def __setstate__(self, state): self.__dict__.update(state) - self.columns = util.PopulateDict(self._locate_col) + self.columns = util.WeakPopulateDict(self._locate_col) |
