Only in feeds.a/mappers: field.inc diff -rup feeds.b/plugins/FeedsNodeProcessor.inc feeds.a/plugins/FeedsNodeProcessor.inc --- feeds.b/plugins/FeedsNodeProcessor.inc 2012-10-11 21:46:10.000000000 -0400 +++ feeds.a/plugins/FeedsNodeProcessor.inc 2012-10-31 01:38:13.725628000 -0400 @@ -50,7 +50,8 @@ class FeedsNodeProcessor extends FeedsPr * @todo Reevaluate the use of node_object_prepare(). */ protected function entityLoad(FeedsSource $source, $nid) { - if ($this->config['update_existing'] == FEEDS_UPDATE_EXISTING) { + if ($this->config['update_existing'] == FEEDS_UPDATE_EXISTING || + $this->config('update_existing') == FEEDS_SKIP_NEW) { $node = node_load($nid, NULL, TRUE); } else { @@ -68,7 +69,8 @@ class FeedsNodeProcessor extends FeedsPr } // Populate properties that are set by node_object_prepare(). - if ($this->config['update_existing'] == FEEDS_UPDATE_EXISTING) { + if ($this->config['update_existing'] == FEEDS_UPDATE_EXISTING || + $this->config('update_existing') == FEEDS_SKIP_NEW) { $node->log = 'Updated by FeedsNodeProcessor'; } else { @@ -214,6 +216,7 @@ class FeedsNodeProcessor extends FeedsPr FEEDS_SKIP_EXISTING => 'Do not update existing nodes', FEEDS_REPLACE_EXISTING => 'Replace existing nodes', FEEDS_UPDATE_EXISTING => 'Update existing nodes (slower than replacing them)', + FEEDS_SKIP_NEW => 'Update existing nodes only (Do not create new nodes)', ); return $form; } Only in feeds.a/plugins: FeedsNodeProcessor.inc.orig diff -rup feeds.b/plugins/FeedsProcessor.inc feeds.a/plugins/FeedsProcessor.inc --- feeds.b/plugins/FeedsProcessor.inc 2012-10-11 21:46:10.000000000 -0400 +++ feeds.a/plugins/FeedsProcessor.inc 2012-10-31 00:10:07.684386000 -0400 @@ -9,6 +9,7 @@ define('FEEDS_SKIP_EXISTING', 0); define('FEEDS_REPLACE_EXISTING', 1); define('FEEDS_UPDATE_EXISTING', 2); +define('FEEDS_SKIP_NEW',3); // Default limit for creating items on a page load, not respected by all // processors. @@ -142,6 +143,12 @@ abstract class FeedsProcessor extends Fe continue; } + // Do not proceed if the item does not exist and we are set for update only + $skip_create = $this->config('update_existing') == FEEDS_SKIP_NEW; + if (empty($entity_id) && $skip_create) { + continue; + } + try { // Build a new entity. Only in feeds.a: unique_field.patch