]> git.ipfire.org Git - thirdparty/sqlalchemy/sqlalchemy.git/commitdiff
logging fixes
authorMike Bayer <mike_mp@zzzcomputing.com>
Sun, 18 Nov 2007 05:46:45 +0000 (05:46 +0000)
committerMike Bayer <mike_mp@zzzcomputing.com>
Sun, 18 Nov 2007 05:46:45 +0000 (05:46 +0000)
lib/sqlalchemy/orm/mapper.py
lib/sqlalchemy/orm/strategies.py
lib/sqlalchemy/orm/uowdumper.py
lib/sqlalchemy/schema.py
lib/sqlalchemy/sql/expression.py

index a4a744c4731d4608f4c110d134f88a7c8542729c..42fe8f56fb0666cf7b679e23761dea44d94130c2 100644 (file)
@@ -158,11 +158,11 @@ class Mapper(object):
 
     def __log(self, msg):
         if self.__should_log_info:
-            self.logger.info("(" + self.class_.__name__ + "|" + (self.entity_name is not None and "/%s" % self.entity_name or "") + (self.local_table and self.local_table.name or str(self.local_table)) + (not self._is_primary_mapper() and "|non-primary" or "") + ") " + msg)
+            self.logger.info("(" + self.class_.__name__ + "|" + (self.entity_name is not None and "/%s" % self.entity_name or "") + (self.local_table and self.local_table.description or str(self.local_table)) + (not self._is_primary_mapper() and "|non-primary" or "") + ") " + msg)
 
     def __log_debug(self, msg):
         if self.__should_log_debug:
-            self.logger.debug("(" + self.class_.__name__ + "|" + (self.entity_name is not None and "/%s" % self.entity_name or "") + (self.local_table and self.local_table.name or str(self.local_table)) + (not self._is_primary_mapper() and "|non-primary" or "") + ") " + msg)
+            self.logger.debug("(" + self.class_.__name__ + "|" + (self.entity_name is not None and "/%s" % self.entity_name or "") + (self.local_table and self.local_table.description or str(self.local_table)) + (not self._is_primary_mapper() and "|non-primary" or "") + ") " + msg)
 
     def _is_orphan(self, obj):
         optimistic = has_identity(obj)
@@ -799,7 +799,7 @@ class Mapper(object):
         self._compile_property(key, prop, init=self.__props_init)
 
     def __str__(self):
-        return "Mapper|" + self.class_.__name__ + "|" + (self.entity_name is not None and "/%s" % self.entity_name or "") + (self.local_table and self.local_table.encodedname or str(self.local_table)) + (not self._is_primary_mapper() and "|non-primary" or "")
+        return "Mapper|" + self.class_.__name__ + "|" + (self.entity_name is not None and "/%s" % self.entity_name or "") + (self.local_table and self.local_table.description or str(self.local_table)) + (not self._is_primary_mapper() and "|non-primary" or "")
 
     def _is_primary_mapper(self):
         """Return True if this mapper is the primary mapper for its class key (class + entity_name)."""
index eb88c049753c9dcf4e65aeb9e08ce3662eec04f4..32d148e3cda65e94179f94a3d9058ed78b837efe 100644 (file)
@@ -192,10 +192,11 @@ class DeferredColumnLoader(LoaderStrategy):
             else:
                 group = [self.parent_property.key]
             
+            # narrow the keys down to just those which aren't present on the instance
             group = [k for k in group if k not in instance.__dict__]
             
             if self._should_log_debug:
-                self.logger.debug("deferred load %s group %s" % (mapperutil.attribute_str(instance, self.key), group and ','.join([p.key for p in group]) or 'None'))
+                self.logger.debug("deferred load %s group %s" % (mapperutil.attribute_str(instance, self.key), group and ','.join(group) or 'None'))
 
             session = sessionlib.object_session(instance)
             if session is None:
index 2467182291d4dcfc618e2514e436afaed183536d..83bd63f346af6d8b1bca5d1f22de5c7f18a5b602 100644 (file)
@@ -177,7 +177,7 @@ class UOWDumper(unitofwork.UOWExecutor):
     def _repr_task(self, task):
         if task.mapper is not None:
             if task.mapper.__class__.__name__ == 'Mapper':
-                name = task.mapper.class_.__name__ + "/" + task.mapper.local_table.name + "/" + str(task.mapper.entity_name)
+                name = task.mapper.class_.__name__ + "/" + task.mapper.local_table.description + "/" + str(task.mapper.entity_name)
             else:
                 name = repr(task.mapper)
         else:
index d05a8c13a38cfb8ab912b3059ccf55a9a6f620fd..856822df7503529e82ca1cc81a35456ef341aab1 100644 (file)
@@ -257,7 +257,7 @@ class Table(SchemaItem, expression.TableClause):
             ["%s=%s" % (k, repr(getattr(self, k))) for k in ['schema']])
 
     def __str__(self):
-        return _get_table_key(self.encodedname, self.schema)
+        return _get_table_key(self.description, self.schema)
 
     def append_column(self, column):
         """Append a ``Column`` to this ``Table``."""
@@ -459,11 +459,11 @@ class Column(SchemaItem, expression._ColumnClause):
     def __str__(self):
         if self.table is not None:
             if self.table.named_with_column():
-                return (self.table.encodedname + "." + self.encodedname)
+                return (self.table.description + "." + self.description)
             else:
-                return self.encodedname
+                return self.description
         else:
-            return self.encodedname
+            return self.description
 
     def _get_bind(self):
         return self.table.bind
index 7c42ae9a23eb83ed924dcbb371c0564465400182..3bb4a7598122a8ccb35d8f3af72a19110ec4c50c 100644 (file)
@@ -2382,12 +2382,15 @@ class Alias(FromClause):
                 alias = getattr(self.original, 'name', None)
             alias = '{ANON %d %s}' % (id(self), alias or 'anon')
         self.name = alias
-        self.encodedname = alias.encode('ascii', 'backslashreplace')
         if self.selectable.oid_column is not None:
             self.oid_column = self.selectable.oid_column._make_proxy(self)
         else:
             self.oid_column = None
-
+    
+    def description(self):
+        return self.name.encode('ascii', 'backslashreplace')
+    description = property(description)
+    
     def is_derived_from(self, fromclause):
         return self.selectable.is_derived_from(fromclause)
 
@@ -2559,13 +2562,16 @@ class _ColumnClause(ColumnElement):
 
     def __init__(self, text, selectable=None, type_=None, _is_oid=False, is_literal=False):
         self.key = self.name = text
-        self.encodedname = isinstance(self.name, unicode) and self.name.encode('ascii', 'backslashreplace') or self.name
         self.table = selectable
         self.type = sqltypes.to_instance(type_)
         self._is_oid = _is_oid
         self.__label = None
         self.is_literal = is_literal
-
+    
+    def description(self):
+        return self.name.encode('ascii', 'backslashreplace')
+    description = property(description)
+    
     def _clone(self):
         # ColumnClause is immutable
         return self
@@ -2637,10 +2643,13 @@ class TableClause(FromClause):
     def __init__(self, name, *columns):
         super(TableClause, self).__init__()
         self.name = self.fullname = name
-        self.encodedname = self.name.encode('ascii', 'backslashreplace')
         self.oid_column = _ColumnClause('oid', self, _is_oid=True)
         self._export_columns(columns)
-
+    
+    def description(self):
+        return self.name.encode('ascii', 'backslashreplace')
+    description = property(description)
+    
     def _clone(self):
         # TableClause is immutable
         return self