¿Qué ocurre en Drupal 7 cuando tienes la cache en mysql, y no tienes fast_404?

Contexto

Por motivos que no vienen al caso la cache de Drupal en este proyecto esta en MySql, como todos sabéis lo recomendable es tenerla en Redis o en Memcache u otros servicios de cacheo y dejar las bases de datos relacionales como algo secundario. Pero me imagino que muchos drupales que se alojan en servicios de hosting compartido tienen la cache en MySql en vez de seguir las recomendaciones correspondientes.

Por otro lado el cliente quería tener la página de error 404 en un nodo de Drupal, así pueden actualizar el mensaje de 404 según las necesidades puntuales de cada momento, por ese motivo no se implementó el método fast_404, ni se instalado tampoco el módulo contribuido fast_404. Aunque es cierto que se podría habilitar un ftp para que tuviese un estático personalizado, pero debido a las características de las páginas muchas de las funcionalidades que da ahora mismo la página que genera el 404 en Drupal llevaría trabajo hacerla a mano.

El tercer punto es que en esa web durante los últimos días se han estado recibiendo peticiones de páginas que no existían, entorno a las 15000 peticiones diarias, llegando el pico a 40000 peticiones, como ya recordareis la forma habitual de Drupal es cachear los 404 como un recurso temporal en la tabla de cache.

Situación

La situación es que cuando se tienen muchos datos temporales en las tablas de cache de Drupal, el proceso de cron que debería limpiarlas no lo hace correctamente, simplemente se muere el proceso antes de terminar, y el tamaño de las tablas va creciendo todos los días, si no se tiene monitorizado el espacio de disco duro del servidor de mysql podemos darnos cuenta de que tenemos un problema cuando Drupal no pueda guardar nuevo contenido y solo se pueda leer en la base de datos.

Por otro lado, como los procesos de cron no se finalizan correctamente, se queda medio atascado el cron y no termina el resto de procesos que van después de los procesos de limpiado de tablas de cache.

¿Soluciones?

A esta situación las soluciones de cambiar la cache a memcache/redis no es posible, sino hace tiempo que se habría hecho. La opción de Boost sería una solución más interesante, pero también termina llenando el disco duro, y se dispararía en las gráficas el indice de lectura/escritura en el servidor.

La opción que más me gusta sería usar el módulo fast_404 de la comunidad, aunque esto supone un perjuicio para el ciente.

La tercera opción es crear un módulo que controle los tamaños de las tablas de cache, y cuando una tabla ha superado cierto tamaño o se trunca toda ella si ha crecido mucho, o se borra todos los registros temporales si no es tan grande.

Existen otras opciones pero busco la opción que pueda ejecutarse en un servidor compartido aka "tener las manos muy atadas y ser capaz de presentar una solución válida".