Skip to content
This repository has been archived by the owner on Jan 18, 2024. It is now read-only.

Chart timescaledb-single: pgbackrest --stanza=poddb stanza-create blocked due to non existent repo1-path directory (in the container) when repo1-path's name is auto generated #545

Open
davidandreoletti opened this issue Jan 7, 2023 · 1 comment · May be fixed by #578
Labels
area/timescaledb-single bug Something isn't working

Comments

@davidandreoletti
Copy link
Contributor

davidandreoletti commented Jan 7, 2023

What happened?

1. Context

With pgbackrest enabled, repo1-path (the path to store pgbackrest backups) is automatically set from configmap-pgbackrest.yaml via:

{{- $globalDefaults := dict "spool-path" "/var/run/postgresql" "compress-level" "3" "repo1-path" (printf "/%s/%s/" .Release.Namespace (include "clusterName" .)) }}

2. Runtime

Once the pgbackrest container starts, it executes pgbackrest_bootstrap.sh and eventually run the pgbackrest --stanza=poddb stanza-create.

However, pgbackrest --stanza=poddb stanza-create stays stuck (at least in our deployment).

pgbackrest's user guide doc did manually create the repo1-path. Hence, it seems reasonable for this chart to create it too.

**3. Workaround **

With the curent statefulset-timescaledb.yaml and auto generated repo1-path name, it seems there is no way (yet) to create the repo1-path directory some other way:

  • bootstrap script is not extensible via config.
  • mounting an additional volume in the pgbackrest container is not supported (yet ?)
  • mkdir -pv <repo1-path> within the container fails due to missing permission.

However, one can configure repo1-path to /scripts/poddb and create /scripts/poddb manually in the pgbackrest container. Then stanza creation succeeds and backups too.

Did you expect to see something different?

repo1-path directory is created automatically by the pgbackrest_bootstrap.sh script when non existent.

How to reproduce it (as minimally and precisely as possible):

Explained above.

Environment

  • Which helm chart and what version are you using?
    timescaledb-single-0.27.4

  • What is in your values.yaml ?
    N/A

  • Kubernetes version information:
    k8s 1.23.x

  • Kubernetes cluster kind:
    Follow k8s official website instruction.

Anything else we need to know?:
N/A

@davidandreoletti davidandreoletti added the bug Something isn't working label Jan 7, 2023
@davidandreoletti davidandreoletti changed the title pgbackrest stanza creation blocked due to missing "repo1-path" directory when values.yaml does not define it. pgbackrest stanza creation blocked due to non existent "repo1-path" directory (in the container) directory repo1-path's name is auto generated Jan 7, 2023
@davidandreoletti davidandreoletti changed the title pgbackrest stanza creation blocked due to non existent "repo1-path" directory (in the container) directory repo1-path's name is auto generated pgbackrest stanza creation blocked due to non existent repo1-path directory (in the container) directory repo1-path's name is auto generated Jan 7, 2023
@davidandreoletti davidandreoletti changed the title pgbackrest stanza creation blocked due to non existent repo1-path directory (in the container) directory repo1-path's name is auto generated pgbackrest --stanza=poddb stanza-create blocked due to non existent repo1-path directory (in the container) directory repo1-path's name is auto generated Jan 7, 2023
@davidandreoletti davidandreoletti changed the title pgbackrest --stanza=poddb stanza-create blocked due to non existent repo1-path directory (in the container) directory repo1-path's name is auto generated pgbackrest --stanza=poddb stanza-create blocked due to non existent repo1-path directory (in the container) when repo1-path's name is auto generated Jan 7, 2023
@davidandreoletti davidandreoletti changed the title pgbackrest --stanza=poddb stanza-create blocked due to non existent repo1-path directory (in the container) when repo1-path's name is auto generated timescaledb-single: pgbackrest --stanza=poddb stanza-create blocked due to non existent repo1-path directory (in the container) when repo1-path's name is auto generated Jan 7, 2023
@davidandreoletti davidandreoletti changed the title timescaledb-single: pgbackrest --stanza=poddb stanza-create blocked due to non existent repo1-path directory (in the container) when repo1-path's name is auto generated timescaledb-single chart: pgbackrest --stanza=poddb stanza-create blocked due to non existent repo1-path directory (in the container) when repo1-path's name is auto generated Jan 7, 2023
@davidandreoletti davidandreoletti changed the title timescaledb-single chart: pgbackrest --stanza=poddb stanza-create blocked due to non existent repo1-path directory (in the container) when repo1-path's name is auto generated Chart timescaledb-single: pgbackrest --stanza=poddb stanza-create blocked due to non existent repo1-path directory (in the container) when repo1-path's name is auto generated Jan 7, 2023
@w3irdrobot
Copy link

this still is an issue using image timescale/timescaledb-ha:pg14.6-ts2.9.1-p1 with Helm chart timescaledb-single-0.33.1

@thinkmassive thinkmassive linked a pull request Feb 23, 2023 that will close this issue
2 tasks
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
area/timescaledb-single bug Something isn't working
Projects
None yet
Development

Successfully merging a pull request may close this issue.

3 participants