Index: modules/node/node.module
===================================================================
RCS file: /cvs/drupal/drupal/modules/node/node.module,v
retrieving revision 1.917
diff -u -p -r1.917 node.module
--- modules/node/node.module	8 Dec 2007 14:06:21 -0000	1.917
+++ modules/node/node.module	10 Dec 2007 09:54:33 -0000
@@ -688,9 +688,14 @@ function node_load($param = array(), $re
   $fields = drupal_schema_fields_sql('node', 'n');
   $fields = array_merge($fields, drupal_schema_fields_sql('node_revisions', 'r'));
   $fields = array_merge($fields, array('u.name', 'u.picture', 'u.data'));
+  // Remove fields not needed in the query: n.vid and r.nid are redundant, n.title is unnecessary
+  // because node title comes from the node_revisions table.  We'll keep r.vid, r.title, and n.nid.
+  $fields = array_diff($fields, array('n.vid', 'n.title', 'r.nid'));
   $fields = implode(', ', $fields);
-  // rename timestamp field for clarity.
+  // Rename timestamp field for clarity.
   $fields = str_replace('r.timestamp', 'r.timestamp AS revision_timestamp', $fields);
+  // Change name of revision uid so it doesn't conflict with n.uid.
+  $fields = str_replace('r.uid', 'r.uid AS revision_uid', $fields);
 
   // Retrieve the node.
   // No db_rewrite_sql is applied so as to get complete indexing for search.
