From b7312bf7096401f8501086c9c4ab20478843a687 Mon Sep 17 00:00:00 2001 From: Janek Lasocki-Biczysko Date: Thu, 3 Nov 2011 13:02:30 +0000 Subject: Fixes 4041 (Deleted entities remain in memcache) --- engine/lib/entities.php | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) (limited to 'engine/lib/entities.php') diff --git a/engine/lib/entities.php b/engine/lib/entities.php index 8b3431c8a..a76ce11fe 100644 --- a/engine/lib/entities.php +++ b/engine/lib/entities.php @@ -410,7 +410,7 @@ function update_entity($guid, $owner_guid, $access_id, $container_guid = null, $ $newentity_cache = new ElggMemcache('new_entity_cache'); } if ($newentity_cache) { - $new_entity = $newentity_cache->delete($guid); + $newentity_cache->delete($guid); } // Handle cases where there was no error BUT no rows were updated! @@ -1489,6 +1489,15 @@ function delete_entity($guid, $recursive = true) { if (isset($ENTITY_CACHE[$guid])) { invalidate_cache_for_entity($guid); } + + // If memcache is available then delete this entry from the cache + static $newentity_cache; + if ((!$newentity_cache) && (is_memcache_available())) { + $newentity_cache = new ElggMemcache('new_entity_cache'); + } + if ($newentity_cache) { + $newentity_cache->delete($guid); + } // Delete contained owned and otherwise releated objects (depth first) if ($recursive) { -- cgit v1.2.3