Error fatal: llamada a la función indefinida cache_get () [cerrado]

10

Recibo el siguiente error en el servidor

Fatal error: Call to undefined function cache_get() in includes/module.inc on line 665
Drush command terminated abnormally due to an unrecoverable error.                                                                                [error]
Error: Call to undefined function cache_get() in includes/module.inc, line 665

¿Cómo arreglar esto?

Dinesh Kumar Sarangapani
fuente
1
En mi caso, encontré el problema subyacente agregando function cache_get() { return false; }a settings.php.
kqw
55
En mi caso, Ubuntu estaba configurado para usar php7 por defecto. Drush necesita php5 suponiendo que su servidor también esté usando php5 ... Inténtelosudo ln -sfn /usr/bin/php5 /etc/alternatives/php
Jorge Orpinel

Respuestas:

2

Cuando escribe drushen la línea de comando, probablemente llegó al lugar correcto para resolver su problema. Este error surge cuando drushno está actualizado y esto ocurre cuando realiza la instalación drushdesde el repositorio oficial en Ubuntu.

La solución es fácil: ¡simplemente instale una nueva versión de drush! Y para hacerlo, debe instalar desde el paquete de backports de Ubuntu.

Yusef
fuente
También encontré la misma solución, estoy usando Drush 4.6. ¿A qué versión puedo actualizar?
Dinesh Kumar Sarangapani
13

Para mí, la causa fue diferente: el controlador de errores de Drupal no detecta algunos errores.

Usé un new DateTime()en mi settings.php(probablemente muy raro) Se generó un error porque la date.timezoneconfiguración en mi CLI php.inino estaba configurada.

Para encontrar el error real (creo que esta es la parte interesante de la respuesta para todos ustedes):

Edite su module.inclínea 723.

Agregue estas líneas antes de la cache_getllamada.

if (!function_exists('cache_get')){ 
    debug_print_backtrace(); 
}
$implementations = cache_get('module_implements', 'cache_bootstrap');

¡Podría darle mucha información sobre la fuente real del problema!

Etienne
fuente
Esto fue muy útil para mí, mi problema se debió a un problema en fast404. Parece que hay varias formas de llegar a este error, esta técnica ayudará a depurar. Gracias
casivaagustin
Feliz de ayudar :)
Etienne
1
Tuve un error de sintaxis en settings.php que resultó en un error fatal: llamada a la función no definida cache_get (). Sugeriría a quienes tengan este problema que verifiquen dos veces su archivo settings.php.
ndvo
Esto es básicamente para problemas de la última versión de PHP donde session.save_handler no funciona. Por lo tanto, elimine la línea de abajo de settings.php ini_set ('session.save_handler', 'user'); o Reemplace la línea por session_set_save_handler (new SessionHandler ()); ---------------------------- Línea actual ini_set ('session.save_handler', 'user'); Necesita ser reemplazado por session_set_save_handler (new SessionHandler ());
tapas talukder