-
Notifications
You must be signed in to change notification settings - Fork 75
Open
Description
In a recent release, 6.4.0, it because possible to separate the dbconnector into it's own deployment.
I think this is a great idea. But unfortunately, despite making multiple attempts at the deployment with different cpu and memory settings - including way over capacity, (including the node options for the heap size), I keep getting back this error;
│ retool-dbconnector {"level":"info","message":"SIGTERM signal received; shutting down workers","timestamp":"2025-03-31T16:57:40.700Z"} │
│ retool-dbconnector {"level":"info","message":"SIGTERM signal received; stopping server","timestamp":"2025-03-31T16:57:40.701Z"} │
│ retool-dbconnector {"level":"info","message":"SIGTERM signal received; stopping server","timestamp":"2025-03-31T16:57:40.701Z"} │
│ retool-dbconnector {"level":"info","message":"SIGTERM signal received; stopping server","timestamp":"2025-03-31T16:57:40.701Z"} │
│ retool-dbconnector {"level":"info","message":"SIGTERM signal received; stopping server","timestamp":"2025-03-31T16:57:40.701Z"} │
│ retool-dbconnector {"level":"info","message":"SIGTERM signal received; stopping server","timestamp":"2025-03-31T16:57:40.701Z"} │
│ retool-dbconnector {"level":"info","message":"SIGTERM signal received; stopping server","timestamp":"2025-03-31T16:57:40.701Z"} │
│ retool-dbconnector {"level":"info","message":"SIGTERM signal received; stopping server","timestamp":"2025-03-31T16:57:40.701Z"} │
│ retool-dbconnector {"level":"info","message":"Stopping database connector server on port","port":"3002","timestamp":"2025-03-31T16:57:40.703Z"} │
│ retool-dbconnector {"level":"info","message":"Stopping database connector server on port","port":"3002","timestamp":"2025-03-31T16:57:40.703Z"} │
│ retool-dbconnector {"level":"info","message":"Stopping database connector server on port","port":"3002","timestamp":"2025-03-31T16:57:40.703Z"} │
│ retool-dbconnector {"level":"info","message":"Stopping database connector server on port","port":"3002","timestamp":"2025-03-31T16:57:40.703Z"} │
│ retool-dbconnector {"level":"info","message":"Stopping database connector server on port","port":"3002","timestamp":"2025-03-31T16:57:40.703Z"} │
│ retool-dbconnector {"level":"info","message":"Stopping database connector server on port","port":"3002","timestamp":"2025-03-31T16:57:40.703Z"} │
│ retool-dbconnector {"level":"info","message":"Stopping database connector server on port","port":"3002","timestamp":"2025-03-31T16:57:40.703Z"} │
│ retool-dbconnector {"level":"info","message":"Server closed on pid 134","timestamp":"2025-03-31T16:57:40.703Z"} │
│ retool-dbconnector {"level":"info","message":"Server closed on pid 120","timestamp":"2025-03-31T16:57:40.703Z"} │
│ retool-dbconnector {"level":"info","message":"Server closed on pid 112","timestamp":"2025-03-31T16:57:40.703Z"} │
│ retool-dbconnector {"level":"info","message":"Server closed on pid 100","timestamp":"2025-03-31T16:57:40.703Z"} │
│ retool-dbconnector {"level":"info","message":"Server closed on pid 148","timestamp":"2025-03-31T16:57:40.703Z"} │
│ retool-dbconnector {"level":"info","message":"Server closed on pid 114","timestamp":"2025-03-31T16:57:40.703Z"} │
│ retool-dbconnector {"level":"info","message":"Server closed on pid 128","timestamp":"2025-03-31T16:57:40.703Z"} │
│ retool-dbconnector {"level":"info","message":"SIGTERM signal received; stopping server","timestamp":"2025-03-31T16:57:40.709Z"} │
│ retool-dbconnector {"level":"info","message":"Stopping database connector server on port","port":"3002","timestamp":"2025-03-31T16:57:40.710Z"} │
│ retool-dbconnector {"level":"info","message":"Server closed on pid 99","timestamp":"2025-03-31T16:57:40.711Z"}
│ retool-dbconnector {"level":"info","message":"Server closed on pid 99","timestamp":"2025-03-31T16:57:40.711Z"} │
│ retool-dbconnector {"code":0,"kernelOutput":"Command failed: dmesg -T | grep -F -i -e \"$(dmesg -T | grep -F -i 'killed process' | tail -n 1 | grep -oP '(?<=\\[)[^]]+' | head -n 1 | { read input; [ -z │
│ retool-dbconnector {"level":"info","message":"[Master] All workers are dead; shutting down dbconnector","timestamp":"2025-03-31T16:57:41.014Z"}
[
{
"code": 0,
"kernelOutput": "Command failed: dmesg -T | grep -F -i -e \"$(dmesg -T | grep -F -i 'killed process' | tail -n 1 | grep -oP '(?<=\\[)[^]]+' | head -n 1 | { read input; [ -z \"$input\" ] && echo \"[oom string was not found]\" || echo \"$input\"; })\" -e \"$(dmesg -T | grep -F -i 'invoked oom-killer' | tail -n 1 | grep -oP '(?<=\\[)[^]]+' | head -n 1 | { read input; [ -z \"$input\" ] && echo \"[oom string was not found]\" || echo \"$input\"; })\"\ndmesg: read kernel buffer failed: Operation not permitted\ndmesg: read kernel buffer failed: Operation not permitted\ndmesg: read kernel buffer failed: Operation not permitted\n",
"level": "info",
"message": "[Master] Worker died",
"pid": 100,
"signal": null,
"source": "master",
"timestamp": "2025-03-31T15:35:07.152Z"
},
{
"level": "info",
"message": "[Master] All workers are dead; shutting down dbconnector",
"timestamp": "2025-03-31T15:35:07.152Z"
}
]dmesg: read kernel buffer failed: Operation not permitted\ seems like a consquequence of something else that is already failing.
The YAML for the dbconnector is as follows;
apiVersion: apps/v1
kind: Deployment
metadata:
labels:
app.kubernetes.io/instance: retool
app.kubernetes.io/managed-by: Helm
app.kubernetes.io/name: retool-dbconnector
helm.sh/chart: retool-6.4.4
retoolService: retool-dbconnector
telemetry.retool.com/service-name: dbconnector
name: retool-dbconnector
namespace: retool
spec:
replicas: 1
revisionHistoryLimit: 10
selector:
matchLabels:
retoolService: retool-dbconnector
template:
metadata:
annotations: null
labels:
app.kubernetes.io/instance: retool
app.kubernetes.io/managed-by: Helm
app.kubernetes.io/name: retool-dbconnector
helm.sh/chart: retool-6.4.4
retoolService: retool-dbconnector
telemetry.retool.com/service-name: dbconnector
spec:
affinity:
podAntiAffinity:
preferredDuringSchedulingIgnoredDuringExecution:
- podAffinityTerm:
labelSelector:
matchExpressions:
- key: app.kubernetes.io/name
operator: In
values:
- retool
topologyKey: kubernetes.io/hostname
weight: 100
containers:
- args:
- bash
- -c
- chmod -R +x ./docker_scripts; sync; ./docker_scripts/wait-for-it.sh -t 0
"$(POSTGRES_HOST):$(POSTGRES_PORT)"; ./docker_scripts/start_api.sh
env:
- name: SERVICE_TYPE
value: DB_CONNECTOR,DB_SSH_CONNECTOR,JAVA_DBCONNECTOR
- name: DEPLOYMENT_TEMPLATE_TYPE
value: k8s-helm
- name: DEPLOYMENT_TEMPLATE_VERSION
value: 6.4.4
- name: NODE_ENV
value: production
- name: NODE_OPTIONS
value: --max_old_space_size=1024
- name: DBCONNECTOR_HTTP_AGENT_MAX_SOCKETS
value: "1000"
- name: DBCONNECTOR_POSTGRES_POOL_MAX_SIZE
value: "100"
- name: DISABLE_DATABASE_MIGRATIONS
value: "true"
- name: WORKFLOW_BACKEND_HOST
value: http://retool-workflow-backend
- name: CLIENT_ID
value: null
- name: COOKIE_INSECURE
value: "false"
- name: NODE_OPTIONS
value: --max-old-space-size=12288
- name: ENCRYPTION_KEY
valueFrom:
secretKeyRef:
key: encryption-key
name: retool
- name: JWT_SECRET
valueFrom:
secretKeyRef:
key: jwt-secret
name: retool
- name: LICENSE_KEY
valueFrom:
secretKeyRef:
key: license-key
name: retool
- name: POSTGRES_PASSWORD
valueFrom:
secretKeyRef:
key: postgresql-password
name: retool
image: tryretool/backend:3.148.5-stable
livenessProbe:
failureThreshold: 3
httpGet:
path: /api/checkHealth
port: 3002
initialDelaySeconds: 30
timeoutSeconds: 10
name: retool-dbconnector
readinessProbe:
httpGet:
path: /api/checkHealth
port: 3002
initialDelaySeconds: 30
periodSeconds: 10
successThreshold: 5
timeoutSeconds: 10
resources:
limits:
memory: 16384Mi
requests:
cpu: 8192m
memory: 16384Mi
volumeMounts: null
nodeSelector:
kubernetes.io/arch: amd64
serviceAccountName: retool
terminationGracePeriodSeconds: 30
tolerations: []Any ideas?
Metadata
Metadata
Assignees
Labels
No labels