--- modules/aggregator.processor.inc	2010-09-24 17:36:22.000000000 -0400
+++ modules/aggregator.processor.inc	2010-10-03 18:12:27.000000000 -0400
@@ -71,8 +71,19 @@ function aggregator_form_aggregator_admi
   if (in_array('aggregator', variable_get('aggregator_processors', array('aggregator')))) {
     $info = module_invoke('aggregator', 'aggregator_process', 'info');
     $items = drupal_map_assoc(array(3, 5, 10, 15, 20, 25), '_aggregator_items');
-    $period = drupal_map_assoc(array(3600, 10800, 21600, 32400, 43200, 86400, 172800, 259200, 604800, 1209600, 2419200, 4838400, 9676800), 'format_interval');
-    $period[AGGREGATOR_CLEAR_NEVER] = t('Never');
+  // Discard items older than: Durations
+  $period = drupal_map_assoc(array(
+    // Less than one day.
+    900, 1800, 3600, 7200, 10800, 21600, 32400, 43200, 64800,
+    // 1-6 days.
+    86400, 2 * 86400, 3 * 86400, 4 * 86400, 5 * 86400, 6 * 86400,
+    // 1-3 weeks (7 days).
+    604800, 2 * 604800, 3 * 604800,
+    // 1-3,6,9 months (30 days).
+    2592000, 2 * 2592000, 3 * 2592000, 6 * 2592000, 9 * 2592000,
+    // 1 year (365 days).
+    31536000), 'format_interval');
+  $period[AGGREGATOR_CLEAR_NEVER] = t('Never');
 
     // Only wrap into a collapsible fieldset if there is a basic configuration.
     if (isset($form['basic_conf'])) {
