From a357281f05ce406b3513c3bd61fd8c28c5162986 Mon Sep 17 00:00:00 2001 From: eileenmcnaugton Date: Mon, 16 May 2016 14:06:56 +1200 Subject: [PATCH] CRM-18516 add job for clearing of caches, separated from the rebuild job --- api/v3/Job.php | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) diff --git a/api/v3/Job.php b/api/v3/Job.php index 38a08fb65b..cfd2ff2396 100644 --- a/api/v3/Job.php +++ b/api/v3/Job.php @@ -643,6 +643,24 @@ function civicrm_api3_job_group_rebuild($params) { return civicrm_api3_create_success(); } +/** + * Flush smart groups caches. + * + * This job purges aged smart group cache data (based on the timeout value). Sites can decide whether they want this + * job and / or the group cache rebuild job to run. In some cases performance is better when old caches are cleared out + * prior to any attempt to rebuild them. Also, many sites are very happy to have caches built on demand, provided the + * user is not having to wait for deadlocks to clear when invalidating them. + * + * @param array $params + * + * @return array + * @throws \API_Exception + */ +function civicrm_api3_job_group_cache_flush($params) { + CRM_Contact_BAO_GroupContactCache::deterministicCacheRefresh(); + return civicrm_api3_create_success(); +} + /** * Check for CiviCRM software updates. * -- 2.25.1