Index: includes/entity.inc
===================================================================
RCS file: /cvs/drupal/drupal/includes/entity.inc,v
retrieving revision 1.4
diff -u -p -r1.4 entity.inc
--- includes/entity.inc	8 Dec 2009 06:33:11 -0000	1.4
+++ includes/entity.inc	1 Mar 2010 05:12:15 -0000
@@ -189,14 +189,6 @@ class DrupalDefaultEntityController impl
       // The id field is provided by entity, so remove it.
       unset($entity_revision_fields[$this->idKey]);
 
-      // Change timestamp to revision_timestamp, and revision uid to
-      // revision_uid before adding them to the query.
-      // TODO: This is node specific and has to be moved into NodeController.
-      unset($entity_revision_fields['timestamp']);
-      $this->query->addField('revision', 'timestamp', 'revision_timestamp');
-      unset($entity_revision_fields['uid']);
-      $this->query->addField('revision', 'uid', 'revision_uid');
-
       // Remove all fields from the base table that are also fields by the same
       // name in the revision table.
       $entity_field_keys = array_flip($entity_fields);
Index: modules/node/node.module
===================================================================
RCS file: /cvs/drupal/drupal/modules/node/node.module,v
retrieving revision 1.1239
diff -u -p -r1.1239 node.module
--- modules/node/node.module	27 Feb 2010 20:37:11 -0000	1.1239
+++ modules/node/node.module	1 Mar 2010 05:12:17 -0000
@@ -3604,4 +3604,15 @@ class NodeController extends DrupalDefau
     $this->hookLoadArguments[] = array_keys($typed_nodes);
     parent::attachLoad($nodes);
   }
+
+  protected function buildQuery() {
+    // Ensure that uid is taken from the {node} table
+    // alias timestamp to revision_timestamp and add revision_uid.
+    parent::buildQuery();
+    $fields =& $this->query->getFields();
+    unset($fields['timestamp']);
+    $fields['uid']['table'] = 'base';
+    $this->query->addField('revision', 'timestamp', 'revision_timestamp');
+    $this->query->addField('revision', 'uid', 'revision_uid');
+  }
 }
