about summary refs log tree commit diff
path: root/wqflask/db
diff options
context:
space:
mode:
authorPjotr Prins2016-06-26 09:50:29 +0000
committerPjotr Prins2016-06-26 09:50:29 +0000
commitd1192b1f244e8976fb53c260179eb3715029ebf4 (patch)
tree9f2e94682b34c8ffa019d4beda90f8c2b1080319 /wqflask/db
parenteb68b396be51c98e9e9a9027f8b1bb9b05e692c0 (diff)
downloadgenenetwork2-d1192b1f244e8976fb53c260179eb3715029ebf4.tar.gz
gn_server: introduced one new query to fetch a dataset record and force fetch1 to return a tuple
Diffstat (limited to 'wqflask/db')
-rw-r--r--wqflask/db/call.py12
-rw-r--r--wqflask/db/webqtlDatabaseFunction.py5
2 files changed, 10 insertions, 7 deletions
diff --git a/wqflask/db/call.py b/wqflask/db/call.py
index 194a7650..6c195afa 100644
--- a/wqflask/db/call.py
+++ b/wqflask/db/call.py
@@ -14,17 +14,19 @@ logger = getLogger(__name__ )
 # from inspect import stack
 
 def fetch1(query, path=None, func=None):
-    """Fetch one result using either a SQL query or the URI path to
-GN_SERVER (when USE_GN_SERVER is True). Apply func to GN_SERVER result
-when set.
+    """Fetch one result as a Tuple using either a SQL query or the URI
+path to GN_SERVER (when USE_GN_SERVER is True). Apply func to
+GN_SERVER result when set (which should return a Tuple)
 
     """
     if USE_GN_SERVER and path:
         result = gn_server(path)
         if func != None:
-            return [func(result)]
+            res2 = func(result)
         else:
-            return [result]
+            res2 = result,
+        logger.debug(path,query,res2)
+        return res2
     else:
         return fetchone(query)
 
diff --git a/wqflask/db/webqtlDatabaseFunction.py b/wqflask/db/webqtlDatabaseFunction.py
index 7fc096a9..ba998e91 100644
--- a/wqflask/db/webqtlDatabaseFunction.py
+++ b/wqflask/db/webqtlDatabaseFunction.py
@@ -21,6 +21,7 @@
 # This module is used by GeneNetwork project (www.genenetwork.org)
 
 from db.call import fetch1
+from utility.tools import USE_GN_SERVER
 
 from utility.logger import getLogger
 logger = getLogger(__name__ )
@@ -42,13 +43,13 @@ def retrieve_species(group):
     """Get the species of a group (e.g. returns string "mouse" on "BXD"
 
     """
-    result = fetch1("select Species.Name from Species, InbredSet where InbredSet.Name = '%s' and InbredSet.SpeciesId = Species.Id" % (group),"/cross/"+group+".json",lambda r: r["species"])[0]
+    result = fetch1("select Species.Name from Species, InbredSet where InbredSet.Name = '%s' and InbredSet.SpeciesId = Species.Id" % (group),"/cross/"+group+".json",lambda r: (r["species"],))[0]
     logger.debug("retrieve_species result:",result)
     return result
 
 
 def retrieve_species_id(group):
 
-    result = fetch1("select SpeciesId from InbredSet where Name = '%s'" % (group),"/cross/"+group+".json",lambda r: r["species_id"])[0]
+    result = fetch1("select SpeciesId from InbredSet where Name = '%s'" % (group),"/cross/"+group+".json",lambda r: (r["species_id"],))[0]
     logger.debug("retrieve_species_id result:",result)
     return result