Index: includes/common.inc
===================================================================
RCS file: /cvs/drupal/drupal/includes/common.inc,v
retrieving revision 1.1176
diff -u -r1.1176 common.inc
--- includes/common.inc	9 Jun 2010 14:55:30 -0000	1.1176
+++ includes/common.inc	10 Jun 2010 04:11:14 -0000
@@ -5935,6 +5935,13 @@
     }
   }
 
+  // If we are doing an update, remove the fields listed in $primary_keys,
+  // since it is unnecessary to update the columns that are used to select
+  // rows.
+  foreach ($primary_keys as $key) {
+    unset($fields[$key]);
+  }
+
   if (empty($fields)) {
     // No changes requested.
     // If we began with an array, convert back so we don't surprise the caller.
