--- remember_me.install (#1)
+++ remember_me.install (#2)
@@ -23,34 +23,47 @@
  */
 function remember_me_disable() {
   // User object data field will have 'remember_me' key forever after you disable the module, lets remove that.
-  $users = user_load_multiple(FALSE);
+  // DO NOT do this: $users = user_load_multiple(FALSE);
-  foreach ($users as $user) {
+  // because with enough users/settings, it will run out of memory (e.g. 25K/user on some systems, 30000 users => 600M).
-    if ($user->uid) {
+  $query = db_select('users', 'u')
+    ->fields('u', array('uid'))
+    ->execute();
+    
+  while($result = $query->fetchAssoc()) { 
+    set_time_limit(5);
+    if ($result['uid']) { 
+      $user = user_load($result['uid']);
+      if ( isset($user->data['remember_me'])) {
       user_save($user, array('remember_me' => NULL), 'remember-me');
     }
-  }
+      // Clear the user cache, to prevent filling up memory just like user_load_multiple(FALSE) would   
+      entity_get_controller('user')->resetCache(array($result['uid']));
+    }
+  }				   
+  //Give other hook_disable's more than 5 secs time.
+  set_time_limit(50);
 
   drupal_set_message(t('Successfully removed the remember_me key from all user objects.'));
 }
