From f4bf31bb8db2264a12ce5f4226c6980b698335ed Mon Sep 17 00:00:00 2001 From: Imtiaz Uddin Date: Fri, 24 Jul 2026 16:02:50 +0600 Subject: [PATCH 1/5] Update postgres version Signed-off-by: Imtiaz Uddin --- charts/ace/values.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/charts/ace/values.yaml b/charts/ace/values.yaml index aafdcc1a6..ce66ffaea 100644 --- a/charts/ace/values.yaml +++ b/charts/ace/values.yaml @@ -279,7 +279,7 @@ global: settings: db: - version: "16.4" + version: "18.3" databaseName: bb deletionPolicy: Delete persistence: From bd8bb325842ae4fa0dea4d4b6df3b0e8dc4653ad Mon Sep 17 00:00:00 2001 From: Imtiaz Uddin Date: Fri, 24 Jul 2026 17:17:15 +0600 Subject: [PATCH 2/5] Install Pgpool as regular chart resource Drop the post-install/post-upgrade hook annotations on the Pgpool CR and remove the pgpool-wait hook Job. KubeDB handles the referenced Postgres AppBinding readiness and retries on its own, so no Helm-side gating is required. Signed-off-by: Imtiaz Uddin --- charts/ace/templates/db/pgpool-wait.yaml | 115 ----------------------- charts/ace/templates/db/pgpool.yaml | 7 -- 2 files changed, 122 deletions(-) delete mode 100644 charts/ace/templates/db/pgpool-wait.yaml diff --git a/charts/ace/templates/db/pgpool-wait.yaml b/charts/ace/templates/db/pgpool-wait.yaml deleted file mode 100644 index d8995b434..000000000 --- a/charts/ace/templates/db/pgpool-wait.yaml +++ /dev/null @@ -1,115 +0,0 @@ -{{- if .Values.settings.pgpool.enabled }} -apiVersion: v1 -kind: ServiceAccount -metadata: - name: {{ include "appscode.serviceAccountName" . }}-pgpool-wait - namespace: {{ .Release.Namespace }} - labels: - {{- include "ace.labels" . | nindent 4 }} - annotations: - "helm.sh/hook": post-install,post-upgrade - "helm.sh/hook-weight": "0" - "helm.sh/hook-delete-policy": before-hook-creation,hook-succeeded ---- -apiVersion: rbac.authorization.k8s.io/v1 -kind: Role -metadata: - name: {{ include "ace.fullname" . }}-pgpool-wait - namespace: {{ .Release.Namespace }} - labels: - {{- include "ace.labels" . | nindent 4 }} - annotations: - "helm.sh/hook": post-install,post-upgrade - "helm.sh/hook-weight": "0" - "helm.sh/hook-delete-policy": before-hook-creation,hook-succeeded -rules: -# wait for the Postgres database to become Ready before creating the Pgpool -- apiGroups: - - kubedb.com - resources: - - postgreses - verbs: ["get", "list", "watch"] ---- -apiVersion: rbac.authorization.k8s.io/v1 -kind: RoleBinding -metadata: - name: {{ include "ace.fullname" . }}-pgpool-wait - namespace: {{ .Release.Namespace }} - labels: - {{- include "ace.labels" . | nindent 4 }} - annotations: - "helm.sh/hook": post-install,post-upgrade - "helm.sh/hook-weight": "0" - "helm.sh/hook-delete-policy": before-hook-creation,hook-succeeded -roleRef: - apiGroup: rbac.authorization.k8s.io - kind: Role - name: {{ include "ace.fullname" . }}-pgpool-wait -subjects: -- kind: ServiceAccount - name: {{ include "appscode.serviceAccountName" . }}-pgpool-wait - namespace: {{ .Release.Namespace }} ---- -apiVersion: batch/v1 -kind: Job -metadata: - name: {{ include "ace.fullname" . }}-pgpool-wait - namespace: {{ .Release.Namespace }} - labels: - {{- include "ace.labels" . | nindent 4 }} - annotations: - "helm.sh/hook": post-install,post-upgrade - "helm.sh/hook-weight": "1" - "helm.sh/hook-delete-policy": before-hook-creation,hook-succeeded -spec: - activeDeadlineSeconds: 21600 - backoffLimit: 3 - template: - spec: - {{- include "appscode.imagePullSecrets" . | nindent 6 }} - serviceAccountName: {{ include "appscode.serviceAccountName" . }}-pgpool-wait - automountServiceAccountToken: true - {{- if eq "true" ( include "distro.openshift" . ) }} - securityContext: - {{- toYaml (omit .Values.podSecurityContext "runAsUser" "runAsGroup" "fsGroup" "supplementalGroups") | nindent 8 }} - {{- else }} - securityContext: - {{- toYaml .Values.podSecurityContext | nindent 8 }} - {{- end }} - containers: - - name: kubectl - {{- if eq "true" ( include "distro.openshift" . ) }} - securityContext: - {{- toYaml (omit .Values.securityContext "runAsUser" "runAsGroup" "fsGroup" "supplementalGroups") | nindent 12 }} - {{- else }} - securityContext: - {{- toYaml .Values.securityContext | nindent 12 }} - {{- end }} - image: "{{ include "kubectl.registry" . }}/{{ .Values.kubectl.repository }}:{{ .Values.kubectl.tag | default .Chart.AppVersion }}" - imagePullPolicy: {{ .Values.kubectl.pullPolicy }} - command: - - /bin/sh - - -c - - | - echo "Waiting for Postgres {{ include "ace.fullname" . }}-db to become Ready..." - until [ "$(kubectl get pg {{ include "ace.fullname" . }}-db -n {{ .Release.Namespace }} -o jsonpath='{.status.phase}' 2>/dev/null)" = "Ready" ]; do - echo "Postgres {{ include "ace.fullname" . }}-db is not Ready yet. Retrying in 10s..." - sleep 10 - done - echo "Postgres {{ include "ace.fullname" . }}-db is Ready. Proceeding to create Pgpool." - resources: - {{- toYaml .Values.resources | nindent 12 }} - {{- with .Values.nodeSelector }} - nodeSelector: - {{- toYaml . | nindent 8 }} - {{- end }} - {{- with .Values.affinity }} - affinity: - {{- toYaml . | nindent 8 }} - {{- end }} - {{- with .Values.tolerations }} - tolerations: - {{- toYaml . | nindent 8 }} - {{- end }} - restartPolicy: Never -{{- end }} \ No newline at end of file diff --git a/charts/ace/templates/db/pgpool.yaml b/charts/ace/templates/db/pgpool.yaml index 545bfa0c1..2965a153f 100644 --- a/charts/ace/templates/db/pgpool.yaml +++ b/charts/ace/templates/db/pgpool.yaml @@ -6,13 +6,6 @@ metadata: namespace: {{ .Release.Namespace }} labels: {{- include "ace.labels" . | nindent 4 }} - annotations: - # Create the Pgpool only after the referenced Postgres is Ready. The - # pgpool-wait hook (weight 1) blocks until the DB reports phase=Ready, so - # this higher-weighted hook runs afterwards. - "helm.sh/hook": post-install,post-upgrade - "helm.sh/hook-weight": "2" - "helm.sh/hook-delete-policy": before-hook-creation spec: version: "4.6.0" replicas: {{ .Values.settings.pgpool.replicas }} From dd50ec79b089771ac8ff204f52a10cffa1409fa6 Mon Sep 17 00:00:00 2001 From: Imtiaz Uddin Date: Fri, 24 Jul 2026 17:37:04 +0600 Subject: [PATCH 3/5] Regenerate ace chart docs Updated settings.db.version entry to reflect 18.3 in values.yaml. Signed-off-by: Imtiaz Uddin --- charts/ace/README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/charts/ace/README.md b/charts/ace/README.md index 14aa61775..0f506c3eb 100644 --- a/charts/ace/README.md +++ b/charts/ace/README.md @@ -131,7 +131,7 @@ The following table lists the configurable parameters of the `ace` chart and the | global.infra.fileserver.baseURL | | "" | | global.infra.fileserver.bucket | bucket to store installer and kubepack yamls | "" | | global.infra.fileserver.prefix | | "" | -| settings.db.version | | "16.4" | +| settings.db.version | | "18.3" | | settings.db.databaseName | | bb | | settings.db.deletionPolicy | | Delete | | settings.db.persistence.size | | 10Gi | From 545e21e3df851ad316470cb681be855e849abda1 Mon Sep 17 00:00:00 2001 From: notTabassum Date: Mon, 27 Jul 2026 11:46:20 +0600 Subject: [PATCH 4/5] max connection updated Signed-off-by: notTabassum --- charts/ace/templates/db/db-config.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/charts/ace/templates/db/db-config.yaml b/charts/ace/templates/db/db-config.yaml index 08424bb14..36cad2f9b 100644 --- a/charts/ace/templates/db/db-config.yaml +++ b/charts/ace/templates/db/db-config.yaml @@ -12,7 +12,7 @@ metadata: type: Opaque stringData: user.conf: | - max_connections=400 + max_connections=800 {{- if .Values.pgoutbox.enabled }} wal_level=logical max_wal_senders=50 From 2ee2e4b25a5ba39487fe122f81786fa492d9c65a Mon Sep 17 00:00:00 2001 From: notTabassum Date: Mon, 27 Jul 2026 16:57:46 +0600 Subject: [PATCH 5/5] configs updated Signed-off-by: notTabassum --- charts/ace/README.md | 13 +++++++++---- charts/ace/values.yaml | 13 +++++++++---- 2 files changed, 18 insertions(+), 8 deletions(-) diff --git a/charts/ace/README.md b/charts/ace/README.md index 0f506c3eb..5ed4363fe 100644 --- a/charts/ace/README.md +++ b/charts/ace/README.md @@ -142,10 +142,15 @@ The following table lists the configurable parameters of the `ace` chart and the | settings.db.auth.password | | "xyz" | | settings.db.logSQL | | false | | settings.pgpool.enabled | | true | -| settings.pgpool.replicas | | 1 | -| settings.pgpool.config.num_init_children | | "25" | -| settings.pgpool.config.max_pool | | "15" | -| settings.pgpool.config.client_idle_limit | | "60" | +| settings.pgpool.replicas | | 2 | +| settings.pgpool.config.num_init_children | | "32" | +| settings.pgpool.config.max_pool | | "3" | +| settings.pgpool.config.listen_backlog_multiplier | | "4" | +| settings.pgpool.config.child_life_time | | "300" | +| settings.pgpool.config.child_max_connections | | "1000" | +| settings.pgpool.config.connection_life_time | | "600" | +| settings.pgpool.config.client_idle_limit | | "300" | +| settings.pgpool.config.connection_cache | | "on" | | settings.pgpool.resources.limits.memory | | 512Mi | | settings.pgpool.resources.requests.memory | | 256Mi | | settings.pgpool.resources.requests.cpu | | 250m | diff --git a/charts/ace/values.yaml b/charts/ace/values.yaml index ce66ffaea..989cb9b4a 100644 --- a/charts/ace/values.yaml +++ b/charts/ace/values.yaml @@ -296,11 +296,16 @@ settings: logSQL: false pgpool: enabled: true - replicas: 1 + replicas: 2 config: - num_init_children: "25" - max_pool: "15" - client_idle_limit: "60" + num_init_children: "32" + max_pool: "3" + listen_backlog_multiplier: "4" + child_life_time: "300" + child_max_connections: "1000" + connection_life_time: "600" + client_idle_limit: "300" + connection_cache: "on" resources: limits: memory: 512Mi