? devel/devel.install.patch
? devel/devel.module.patch
Index: devel/devel.install
===================================================================
RCS file: /cvs/drupal-contrib/contributions/modules/devel/devel.install,v
retrieving revision 1.8.4.4
diff -u -p -r1.8.4.4 devel.install
--- devel/devel.install	16 Apr 2007 03:51:55 -0000	1.8.4.4
+++ devel/devel.install	28 Apr 2007 00:45:23 -0000
@@ -29,6 +29,24 @@ function devel_install() {
       ) /*!40100 DEFAULT CHARACTER SET utf8 */;";
       db_query($sql);
       break;
+    case 'pgsql':
+      $sql = "CREATE TABLE {devel_queries} (
+      qid SERIAL UNIQUE NOT NULL,
+      function text,
+      query text NOT NULL,
+      hash text NOT NULL default '',
+      PRIMARY KEY (hash)
+      )";
+      db_query($sql);
+    
+    $sql = "CREATE TABLE {devel_times} (
+      tid SERIAL UNIQUE NOT NULL,
+      qid integer NOT NULL default 0,
+      time float default NULL,
+      PRIMARY KEY (tid)
+      )";
+      db_query($sql);
+      break;
     case 'mssql':
       $sql = "CREATE TABLE {devel_queries} (
         qid INT IDENTITY(1,1),
Index: devel/devel.module
===================================================================
RCS file: /cvs/drupal-contrib/contributions/modules/devel/devel.module,v
retrieving revision 1.106.4.45
diff -u -p -r1.106.4.45 devel.module
--- devel/devel.module	18 Apr 2007 04:41:39 -0000	1.106.4.45
+++ devel/devel.module	28 Apr 2007 00:45:24 -0000
@@ -449,7 +449,7 @@ function devel_shutdown() {
 
 function devel_store_queries() {
   if (variable_get('devel_store_queries', 0) && rand(1, variable_get('devel_store_random', 1)) == 1) {
-    global $active_db, $queries;
+    global $queries;
     $qids = array();
     $values = array();
     $fields = array();
@@ -462,16 +462,13 @@ function devel_store_queries() {
       if (!isset($qids[$hash])) {
         $qids[$hash] = db_result(devel_db_query("SELECT qid FROM {devel_queries} WHERE hash = '%s'", $hash));
         if (!$qids[$hash]) {
-          devel_db_query("INSERT INTO {devel_queries} (query, function, hash) VALUES ('%s', '%s', '%s')", $query, $function, $hash);
-          $qids[$hash] = mysql_insert_id();
+          $qid = db_next_id('{devel_queries}_qid');
+          $result = devel_db_query("INSERT INTO {devel_queries} (qid, query, function, hash) VALUES (%d, '%s', '%s', '%s')", $qid, $query, $function, $hash);
+          $qids[$hash] = $qid;
+            
         }
       }
-      $fields[] = "(%d, '%f')";
-      $values[] = $qids[$hash];
-      $values[] = $value[1];
-    }
-    if (count($fields)) {
-      devel_db_query('INSERT INTO {devel_times} (qid, time) VALUES '. implode(',', $fields), $values);
+      devel_db_query("INSERT INTO {devel_times} (qid, time) VALUES (%d, %f)", $qids[$hash], $value[1]);
     }
   }
 }
@@ -517,7 +514,15 @@ function devel_db_query($query) {
   }
   _db_query_callback($args, TRUE);
   $query = preg_replace_callback(DB_QUERY_REGEXP, '_db_query_callback', $query);
-  return mysql_query($query, $active_db);
+  switch ($GLOBALS['db_type']) {
+    case 'mysql':
+    case 'mysqli':
+      return mysql_query($query, $active_db);
+    break;
+    case 'pgsql':
+      return pg_query($active_db, $query);
+    break;
+  }
 }
 
 function devel_admin_settings() {
@@ -1128,7 +1133,7 @@ function devel_queries() {
                   array('data' => t('Query'), 'field' => 'q.query'),
                   );
 
-  $result = pager_query('SELECT q.qid, q.query, q.function, t.*, COUNT(t.qid) AS count, SUM(t.time) AS total_time, AVG(t.time) AS average, STDDEV(t.time) AS stddev FROM {devel_queries} q INNER JOIN {devel_times} t ON q.qid = t.qid GROUP BY t.qid '. tablesort_sql($header), 30, 0, 'SELECT COUNT(qid) FROM {devel_queries}');
+  $result = pager_query('SELECT q.qid, q.query, q.function, COUNT(t.qid) AS count, SUM(t.time) AS total_time, AVG(t.time) AS average, STDDEV(t.time) AS stddev FROM {devel_queries} q INNER JOIN {devel_times} t ON q.qid = t.qid GROUP BY q.qid, q.query, q.function '. tablesort_sql($header), 30, 0, 'SELECT COUNT(qid) FROM {devel_queries}');
   while ($log = db_fetch_object($result)) {
     $rows[] = array(
                     round($log->total_time * 1000, 3),
