summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMike Bayer <mike_mp@zzzcomputing.com>2012-08-08 19:20:17 -0400
committerMike Bayer <mike_mp@zzzcomputing.com>2012-08-08 19:20:17 -0400
commit60913b8ccf9db19a9e673b6e4f3deefe0dea04ae (patch)
tree22e2952d7a46b468921de91764457a0ffc5da6f5
parent6b0631c852ab1a37bfce2acec8f866bce8a48fbe (diff)
downloadsqlalchemy-60913b8ccf9db19a9e673b6e4f3deefe0dea04ae.tar.gz
don't need this is_really_none() thing anymore
-rw-r--r--lib/sqlalchemy/orm/identity.py10
-rw-r--r--lib/sqlalchemy/orm/persistence.py22
-rw-r--r--lib/sqlalchemy/orm/state.py3
-rw-r--r--test/perf/orm2010.py2
4 files changed, 13 insertions, 24 deletions
diff --git a/lib/sqlalchemy/orm/identity.py b/lib/sqlalchemy/orm/identity.py
index 6fd184350..b58aa14a6 100644
--- a/lib/sqlalchemy/orm/identity.py
+++ b/lib/sqlalchemy/orm/identity.py
@@ -72,8 +72,6 @@ class WeakInstanceDict(IdentityMap):
state = dict.__getitem__(self, key)
o = state.obj()
if o is None:
- o = state._is_really_none()
- if o is None:
raise KeyError, key
return o
@@ -82,8 +80,6 @@ class WeakInstanceDict(IdentityMap):
if dict.__contains__(self, key):
state = dict.__getitem__(self, key)
o = state.obj()
- if o is None:
- o = state._is_really_none()
else:
return False
except KeyError:
@@ -113,8 +109,6 @@ class WeakInstanceDict(IdentityMap):
existing_state = dict.__getitem__(self, key)
if existing_state is not state:
o = existing_state.obj()
- if o is None:
- o = existing_state._is_really_none()
if o is not None:
raise AssertionError("A conflicting state is already "
"present in the identity map for key %r"
@@ -132,9 +126,7 @@ class WeakInstanceDict(IdentityMap):
return default
o = state.obj()
if o is None:
- o = state._is_really_none()
- if o is None:
- return default
+ return default
return o
def _items(self):
diff --git a/lib/sqlalchemy/orm/persistence.py b/lib/sqlalchemy/orm/persistence.py
index 7872499ea..03d4a5457 100644
--- a/lib/sqlalchemy/orm/persistence.py
+++ b/lib/sqlalchemy/orm/persistence.py
@@ -765,7 +765,7 @@ def _connections_for_states(base_mapper, uowtransaction, states):
def _cached_connection_dict(base_mapper):
# dictionary of connection->connection_with_cache_options.
return util.PopulateDict(
- lambda conn:conn.execution_options(
+ lambda conn: conn.execution_options(
compiled_cache=base_mapper._compiled_cache
))
@@ -774,7 +774,7 @@ def _sort_states(states):
persistent = set(s for s in pending if s.key is not None)
pending.difference_update(persistent)
return sorted(pending, key=operator.attrgetter("insert_order")) + \
- sorted(persistent, key=lambda q:q.key[1])
+ sorted(persistent, key=lambda q: q.key[1])
class BulkUD(object):
"""Handle bulk update and deletes via a :class:`.Query`."""
@@ -850,7 +850,7 @@ class BulkEvaluate(BulkUD):
#TODO: detect when the where clause is a trivial primary key match
self.matched_objects = [
- obj for (cls, pk),obj in
+ obj for (cls, pk), obj in
query.session.identity_map.iteritems()
if issubclass(cls, target_cls) and
eval_condition(obj)]
@@ -878,9 +878,9 @@ class BulkUpdate(BulkUD):
@classmethod
def factory(cls, query, synchronize_session, values):
return BulkUD._factory({
- "evaluate":BulkUpdateEvaluate,
- "fetch":BulkUpdateFetch,
- False:BulkUpdate
+ "evaluate": BulkUpdateEvaluate,
+ "fetch": BulkUpdateFetch,
+ False: BulkUpdate
}, synchronize_session, query, values)
def _do_exec(self):
@@ -906,9 +906,9 @@ class BulkDelete(BulkUD):
@classmethod
def factory(cls, query, synchronize_session):
return BulkUD._factory({
- "evaluate":BulkDeleteEvaluate,
- "fetch":BulkDeleteFetch,
- False:BulkDelete
+ "evaluate": BulkDeleteEvaluate,
+ "fetch": BulkDeleteFetch,
+ False: BulkDelete
}, synchronize_session, query)
def _do_exec(self):
@@ -928,9 +928,9 @@ class BulkUpdateEvaluate(BulkEvaluate, BulkUpdate):
"""BulkUD which handles UPDATEs using the "evaluate"
method of session resolution."""
- def _additional_evaluators(self,evaluator_compiler):
+ def _additional_evaluators(self, evaluator_compiler):
self.value_evaluators = {}
- for key,value in self.values.iteritems():
+ for key, value in self.values.iteritems():
key = _attr_as_key(key)
self.value_evaluators[key] = evaluator_compiler.process(
expression._literal_as_binds(value))
diff --git a/lib/sqlalchemy/orm/state.py b/lib/sqlalchemy/orm/state.py
index 9d17fa344..22ad06f13 100644
--- a/lib/sqlalchemy/orm/state.py
+++ b/lib/sqlalchemy/orm/state.py
@@ -424,9 +424,6 @@ class InstanceState(interfaces._InspectionAttr):
def _instance_dict(self):
return None
- def _is_really_none(self):
- return self.obj()
-
def _modified_event(self, dict_, attr, previous, collection=False):
if attr.key not in self.committed_state:
if collection:
diff --git a/test/perf/orm2010.py b/test/perf/orm2010.py
index ed4e7b090..47257ba87 100644
--- a/test/perf/orm2010.py
+++ b/test/perf/orm2010.py
@@ -161,7 +161,7 @@ print 'Total executemany calls: %d' \
#stats.sort_stats('time', 'calls')
#stats.print_stats()
-#os.system("runsnake %s" % filename)
+os.system("runsnake %s" % filename)
# SQLA Version: 0.7b1
# Total calls 4956750