datalens icon indicating copy to clipboard operation
datalens copied to clipboard

fix(helm): postgresql deployment for ext4 volumes with non-empty mount points

Open alexnazarv opened this issue 5 months ago • 1 comments

During deployment in the cluster, PostgreSQL initialization fails with the following error:

│ initdb: error: directory "/var/lib/postgresql/data" exists but is not empty                                                                                │
│ initdb: detail: It contains a lost+found directory, perhaps due to it being a mount point.                                                                 │
│ initdb: hint: Using a mount point directly as the data directory is not recommended.                                                                       │
│ Create a subdirectory under the mount point.

This happens because the /var/lib/postgresql/data directory is a mount point on ext4 volumes and contains the system-generated lost+found folder, which prevents initdb from running properly.

What was changed:

Added PGDATA environment variable to explicitly point PostgreSQL to use /var/lib/postgresql/data/pgdata subdirectory as the data directory.

This change fixes the deployment issue by ensuring that the data directory is a dedicated subdirectory rather than the root of the mount point.

alexnazarv avatar Jul 18 '25 09:07 alexnazarv

Related to https://github.com/datalens-tech/datalens/issues/352

alexnazarv avatar Jul 24 '25 13:07 alexnazarv