コード例 #1
0
 /**
  * Test the deterministic cache function refreshes with the opportunistic setting.
  *
  * (hey it's an opportunity!).
  */
 public function testDeterministicRefreshChangeWithOpportunisticSetting()
 {
     list($group, $living, $deceased) = $this->setupSmartGroup();
     $this->callAPISuccess('Setting', 'create', array('smart_group_cache_refresh_mode' => 'opportunistic'));
     $this->callAPISuccess('Contact', 'create', array('id' => $deceased[0]->id, 'is_deceased' => 0));
     $this->makeCacheStale($group);
     CRM_Contact_BAO_GroupContactCache::deterministicCacheFlush();
     $this->assertCacheRefreshed($group);
 }
コード例 #2
0
ファイル: Job.php プロジェクト: kcristiano/civicrm-core
/**
 * 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::deterministicCacheFlush();
    return civicrm_api3_create_success();
}