Есть вот такой сниппет
$q = $modx->newQuery('modResource');

$q->where(array(

  'template:IN' => array(4)

  ));

$q->select(array(

  'id'

));

$q->prepare();

$q->stmt->execute();

$res = $q->stmt->fetchAll(PDO::FETCH_ASSOC);

foreach($res as $v){

    $properties = ['id' => $v];

    $response = $modx->runProcessor('resource/get', $properties);

    
    $data = $response->response['object'];
    
    $response = $modx->runProcessor('resource/update', [

        // Указываем обязательные поля

        'id' => $data['id'],

        'parent' => $data['parent'],

        'class_key' => $data['class_key'],

        'context_key' => $data['context_key'],

        'pagetitle' => $data['pagetitle'],

        // Меняем нужные нам поля

        'introtext' => $data['description'],

    ]);
    
    if ($response->isError()) {

        return print_r($modx->error->failure($response->getMessage()));

    }

}


В нем логика такая, у шаблона с ID 4 нужно пере сохранить все ресурсы (их порядка 300), и ели я его запускаю он бесконечно долго «висит».
А если укажу шаблон ресурсов где например всего пару ресурсов, то он отрабатывает практически мгновенно.

Что может быть тут не так? Очень нужен совет?