Corrige el error "memoria compartida insuficiente"
Si ejecutas AlloyDB Omni sin suficiente memoria compartida para el motor de columnas, es posible que veas el siguiente error:
Insufficient shared memory for generating the columnar formats.
Para solucionar este problema, especifica la cantidad de memoria compartida que está disponible para el contenedor de AlloyDB Omni.
Linux
Asegúrate de haber instalado AlloyDB Omni con el directorio
/dev/shmactivado en el contenedor. Para obtener más información, consulta Personaliza tu instalación de AlloyDB Omni.Aumenta el tamaño de la partición
/dev/shmde tu máquina anfitrión con una técnica como editar el archivo/etc/fstab.
macOS
Instala un contenedor de AlloyDB Omni nuevo y
especifica un valor de memoria compartida más grande para la marca --shm-size.
Busca las tablas que se propagan en el motor de columnas
En la vista g_columnar_relations, crea consultas para encontrar las tablas que están
presentes en el motor de columnas.
SELECT * FROM g_columnar_relations;
Encuentra la memoria general que usa el motor de columnas
Usa la función de SQL google_columnar_engine_memory_available() para determinar
la cantidad de memoria que usa el motor de columnas.
SELECT google_columnar_engine_memory_available();
Determina si no se propagan columnas específicas en el motor de columnas
Prueba las siguientes soluciones posibles:
- Verifica si el motor de columnas admite el tipo de datos de la columna.
- Si agregaste o quitaste columnas de la tabla base recientemente, verifica que hayas realizado la misma operación en el motor de columnas.
Verifica si una consulta usa el motor de columnas
En el plan de consulta, verifica si hay un nodo de planificador "Custom Scan (columnar scan)".
Busca los trabajos de mantenimiento en curso
Realiza una consulta en la vista g_columnar_jobs para encontrar los trabajos en curso.
SELECT * FROM g_columnar_jobs;
Establece la cantidad de recursos que usan las actividades de mantenimiento en el motor de columnas
De forma predeterminada, el motor de columnas usa hasta el 20% de los recursos de la base de datos. Para
aumentar o disminuir este uso, ajusta el
parámetro de configuración google_columnar_engine.maintenance_cpu_percentage (GUC). Para obtener más información,
consulta Ajusta los recursos de CPU para las tareas de mantenimiento.