]> git.ipfire.org Git - thirdparty/sqlalchemy/sqlalchemy.git/commitdiff
some cache decorator calls...
authorMike Bayer <mike_mp@zzzcomputing.com>
Sun, 30 Mar 2008 22:15:19 +0000 (22:15 +0000)
committerMike Bayer <mike_mp@zzzcomputing.com>
Sun, 30 Mar 2008 22:15:19 +0000 (22:15 +0000)
lib/sqlalchemy/databases/mysql.py
lib/sqlalchemy/databases/oracle.py
lib/sqlalchemy/databases/postgres.py

index f8be94e2d25779792019253e1d1667b70caae6fd..c820474c4a423cc08aa6a65cfa6172a7b8da9c17 100644 (file)
@@ -1542,13 +1542,9 @@ class MySQLDialect(default.DefaultDialect):
             return False
 
     def get_default_schema_name(self, connection):
-        try:
-            return self._default_schema_name
-        except AttributeError:
-            name = self._default_schema_name = \
-              connection.execute('SELECT DATABASE()').scalar()
-            return name
-
+        return connection.execute('SELECT DATABASE()').scalar()
+    get_default_schema_name = util.cache_decorator(get_default_schema_name)
+    
     def table_names(self, connection, schema):
         """Return a Unicode SHOW TABLES from a given schema."""
 
index 0c6e65f7242ba2e74c7dbcfdba6b4245789f3891..8a2df7f3bd4b482eb7b61a082a6fe4aebaa4efec 100644 (file)
@@ -379,13 +379,9 @@ class OracleDialect(default.DefaultDialect):
             return name.encode(self.encoding)
 
     def get_default_schema_name(self,connection):
-        try:
-            return self._default_schema_name
-        except AttributeError:
-            name = self._default_schema_name = \
-                connection.execute('SELECT USER FROM DUAL').scalar()
-            return name
-
+        return connection.execute('SELECT USER FROM DUAL').scalar()
+    get_default_schema_name = util.cache_decorator(get_default_schema_name)
+    
     def table_names(self, connection, schema):
         # note that table_names() isnt loading DBLINKed or synonym'ed tables
         if schema is None:
index a34388a89ddfdca0251c6affcd6768536b2fda5c..9dbf359b6883b7885febea360b8cf2c780d10644 100644 (file)
@@ -367,10 +367,9 @@ class PGDialect(default.DefaultDialect):
         return [row[0] for row in resultset]
 
     def get_default_schema_name(self, connection):
-        if not hasattr(self, '_default_schema_name'):
-            self._default_schema_name = connection.scalar("select current_schema()", None)
-        return self._default_schema_name
-
+        return connection.scalar("select current_schema()", None)
+    get_default_schema_name = util.cache_decorator(get_default_schema_name)
+    
     def last_inserted_ids(self):
         if self.context.last_inserted_ids is None:
             raise exceptions.InvalidRequestError("no INSERT executed, or can't use cursor.lastrowid without Postgres OIDs enabled")