Estoy trabajando en un trabajo CRON que invoca un script PHP que hace una gran cantidad de trabajo de base de datos con bucles.Error genérico "asesinado" en el script PHP
se ejecuta correctamente cuando limito el conjunto de datos, pero cuando lo ejecuto contra el conjunto de datos, los errores de script con un mensaje:
Killed
set_time_limit es (0) y memory_limit es (- 1)
Aquí es donde la sección de código de forma coherente muere:
echo "I'm in _getMemberDemographicAttrs\n";
if (! empty ($member_id)) {
$query .= ' AND member_id = ' . $member_id;
}
$result = mysql_query ($query, $this->_db);
if ($result) {
while ($rule = mysql_fetch_assoc ($result)) {
$rules [] = $rule;
}
if (! empty ($rules)) {
mysql_free_result ($result);
echo "I'm leaving _getMemberDemographicAttrs\n";
return $rules;
}
}
la salida tiene el siguiente aspecto:
I'm in _getMemberDemographicAttrs<br/>
I'm leaving _getMemberDemographicAttrs<br/>
I'm in _getMemberDemographicAttrs<br/>
I'm leaving _getMemberDemographicAttrs<br/>
I'm in _getMemberDemographicAttrs<br/>
Killed
Nunca he visto este mensaje de error Killed
genérico y me pregunto qué está causando su muerte?
Gracias por esto.Descubrí que Linux estaba matando el proceso. Lo resolví reduciendo el límite de memoria para PHP en el script, lo que permitió a PHP administrar su memoria de forma diferente y evitar el bloqueo. – Fuser97381
Gracias. Justo lo que necesitaba. – marlar
Para mí, el problema se resolvió mediante la actualización de PHP 5.6 a PHP 7. Obviamente, depende de muchos factores, pero PHP 7 funciona de manera más eficiente, por lo que vale la pena echarle un vistazo. –