From: Mike Bayer Date: Sat, 3 Sep 2005 00:56:17 +0000 (+0000) Subject: (no commit message) X-Git-Tag: rel_0_1_0~819 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=7e5ea4b461e52b9fc8836c67ab51ed0ccff23e25;p=thirdparty%2Fsqlalchemy%2Fsqlalchemy.git --- diff --git a/lib/sqlalchemy/ansisql.py b/lib/sqlalchemy/ansisql.py index 1782a29f08..b3a25ad39f 100644 --- a/lib/sqlalchemy/ansisql.py +++ b/lib/sqlalchemy/ansisql.py @@ -82,7 +82,7 @@ class ANSICompiler(sql.Compiled): try: b = self.binds[key] except KeyError: - raise "No such bind param in statement '%s': %s" % (str(self), key) + continue d[b.key] = value for b in self.binds.values(): diff --git a/lib/sqlalchemy/engine.py b/lib/sqlalchemy/engine.py index 758f805bcf..afbfb6fc62 100644 --- a/lib/sqlalchemy/engine.py +++ b/lib/sqlalchemy/engine.py @@ -104,7 +104,7 @@ class SQLEngine(schema.SchemaEngine): clearly, this approach only goes so far, such as if database A commits, then database B commits and fails, A is already committed. Any failure conditions have to be raised before anyone commits for this to be useful.""" - engines = util.Set() + engines = util.HashSet() for table in tables: engines.append(table.engine) for engine in engines: diff --git a/lib/sqlalchemy/util.py b/lib/sqlalchemy/util.py index ea6befba8f..dbbdf28fc6 100644 --- a/lib/sqlalchemy/util.py +++ b/lib/sqlalchemy/util.py @@ -102,7 +102,7 @@ class ThreadLocal(object): object.__getattribute__(self, 'tdict')["%d_%s" % (thread.get_ident(), key)] = value -class Set(object): +class HashSet(object): def __init__(self, iter = None): self.map = {} if iter is not None: @@ -121,6 +121,9 @@ class Set(object): def __getitem__(self, key): return self.map[key] +class HistoryAwareArraySet(object): + def __init__(self): + self.elements = [] class ScopedRegistry(object): def __init__(self, createfunc):