If you run AlloyDB Omni without enough shared memory
for the columnar engine, then you might see the following error:
Insufficient shared memory for generating the columnar formats.
To address this issue, specify the amount of shared memory that's
available to the AlloyDB Omni container.
Linux
Make sure that you already installed AlloyDB Omni
with your/dev/shmdirectory mounted on the container. For more
information, seeCustomize your AlloyDB Omni installation.
Increase the size of your host machine's/dev/shmpartition by using a
technique such as editing your/etc/fstabfile.
Find the tables that are populated in the columnar engine
In theg_columnar_relationsview, create queries to find the tables that are
present in the columnar engine.
SELECT*FROMg_columnar_relations;
Find the overall memory that the columnar engine uses
Use thegoogle_columnar_engine_memory_available()SQL function to determine
the amount of memory that the columnar engine uses.
SELECTgoogle_columnar_engine_memory_available();
Determine if specific columns aren't populated in the columnar engine
Try the following possible solutions:
Check whether the columnar engine supports the column's data type.
If you recently added or dropped columns to the base table, verify
that you performed the same operation in the columnar engine.
Verify if a query uses the columnar engine
In the query plan, verify if there's a "Custom Scan (columnar scan)"
planner node.
Find the maintenance jobs in progress
Query in theg_columnar_jobsview to find the jobs in progress.
SELECT*FROMg_columnar_jobs;
Set the amount of resources that maintenance activities use in the columnar engine
By default, the columnar engine uses up to 20% of the database resources. To
increase or decrease this usage, adjust thegoogle_columnar_engine.maintenance_cpu_percentage(GUC) setting. For more information,
seeAdjust the CPU resources for maintenance tasks.
[[["Easy to understand","easyToUnderstand","thumb-up"],["Solved my problem","solvedMyProblem","thumb-up"],["Other","otherUp","thumb-up"]],[["Hard to understand","hardToUnderstand","thumb-down"],["Incorrect information or sample code","incorrectInformationOrSampleCode","thumb-down"],["Missing the information/samples I need","missingTheInformationSamplesINeed","thumb-down"],["Other","otherDown","thumb-down"]],["Last updated 2025-09-04 UTC."],[],[],null,["# Troubleshoot the columnar engine\n\nSelect a documentation version: Current (16.8.0)keyboard_arrow_down\n\n- [Current (16.8.0)](/alloydb/omni/current/docs/columnar-engine/troubleshoot-the-columnar-engine)\n- [16.8.0](/alloydb/omni/16.8.0/docs/columnar-engine/troubleshoot-the-columnar-engine)\n- [16.3.0](/alloydb/omni/16.3.0/docs/columnar-engine/troubleshoot-the-columnar-engine)\n\n\u003cbr /\u003e\n\nThis page describes how to troubleshoot issues that you might encounter when you use the AlloyDB Omni columnar engine. For more information about the columnar engine, see [Columnar engine overview](/alloydb/omni/current/docs/columnar-engine/overview).\n\n\u003cbr /\u003e\n\nFix the \"insufficient shared memory\" error\n------------------------------------------\n\nIf you run AlloyDB Omni without enough shared memory\nfor the columnar engine, then you might see the following error: \n\n Insufficient shared memory for generating the columnar formats.\n\nTo address this issue, specify the amount of shared memory that's\navailable to the AlloyDB Omni container. \n\n### Linux\n\n1. Make sure that you already installed AlloyDB Omni\n with your `/dev/shm` directory mounted on the container. For more\n information, see\n [Customize your AlloyDB Omni installation](/alloydb/omni/current/docs/install#one-omni).\n\n2. Increase the size of your host machine's `/dev/shm` partition by using a\n technique such as editing your `/etc/fstab` file.\n\n### macOS\n\nInstall a new AlloyDB Omni container, and\n[specify a larger shared-memory value for the `--shm-size` flag](/alloydb/omni/current/docs/install#one-omni).\n| **Caution:** Before you switch to using a new container, back up your data.\n\nFind the tables that are populated in the columnar engine\n---------------------------------------------------------\n\nIn the `g_columnar_relations` view, create queries to find the tables that are\npresent in the columnar engine. \n\n SELECT * FROM g_columnar_relations;\n\nFind the overall memory that the columnar engine uses\n-----------------------------------------------------\n\nUse the `google_columnar_engine_memory_available()` SQL function to determine\nthe amount of memory that the columnar engine uses. \n\n SELECT google_columnar_engine_memory_available();\n\nDetermine if specific columns aren't populated in the columnar engine\n---------------------------------------------------------------------\n\nTry the following possible solutions:\n\n- Check whether the columnar engine supports the column's data type.\n- If you recently added or dropped columns to the base table, verify that you performed the same operation in the columnar engine.\n\nVerify if a query uses the columnar engine\n------------------------------------------\n\nIn the query plan, verify if there's a \"Custom Scan (columnar scan)\"\nplanner node.\n\nFind the maintenance jobs in progress\n-------------------------------------\n\nQuery in the `g_columnar_jobs` view to find the jobs in progress. \n\n SELECT * FROM g_columnar_jobs;\n\nSet the amount of resources that maintenance activities use in the columnar engine\n----------------------------------------------------------------------------------\n\nBy default, the columnar engine uses up to 20% of the database resources. To\nincrease or decrease this usage, adjust the\n`google_columnar_engine.maintenance_cpu_percentage` (GUC) setting. For more information,\nsee [Adjust the CPU resources for maintenance tasks](/alloydb/omni/current/docs/columnar-engine/tune-columnar-engine#adjust-cpu-resources)."]]