apache / apache/pinot

trying to upgrade minion pod memory and getting failed

Open
#11,459 3 comments 0 reactions 0 assignees View on GitHub
troubleshooting
Dominant language
Java
Stars
6.1k
Forks
1.5k
Avg merge
1d 21h
Merged PRs (30d)
189

Description

i can not upgrade helm chart and reinstall because there is 200GB data runing on production, but need to upgrade minion pod memory as its exausted and its running with statless set. when trying to update in running pod its giving issue .

Failed to save resource: Pod "pinot-minion-stateless-55967477d5-g8bxv" is invalid: spec: Forbidden: pod updates may not change fields other than `spec.containers[*].image`, `spec.initContainers[*].image`, `spec.activeDeadlineSeconds`, `spec.tolerations` (only additions to existing tolerations) or `spec.terminationGracePeriodSeconds` (allow it to be set to 1 if it was previously negative)
core.PodSpec{
Volumes: {{Name: "config", VolumeSource: {ConfigMap: &{LocalObjectReference: {Name: "pinot-minion-stateless-config"}, DefaultMode: &420}}}, {Name: "data", VolumeSource: {EmptyDir: &{}}}, {Name: "kube-api-access-rqr6l", VolumeSource: {Projected: &{Sources: {{ServiceAccountToken: &{ExpirationSeconds: 3607, Path: "token"}}, {ConfigMap: &{LocalObjectReference: {Name: "kube-root-ca.crt"}, Items: {{Key: "ca.crt", Path: "ca.crt"}}}}, {DownwardAPI: &{Items: {{Path: "namespace", FieldRef: &{APIVersion: "v1", FieldPath: "metadata.namespace"}}}}}}, DefaultMode: &420}}}},
InitContainers: nil,
Containers: []core.Container{
{
... // 5 identical fields
Ports: {{Name: "minion", ContainerPort: 9514, Protocol: "TCP"}},
EnvFrom: nil,
Env: []core.EnvVar{
{
Name: "JAVA_OPTS",
Value: strings.Join({
"-XX:ActiveProcessorCount=",
- "2",
+ "4",
" -Xms256M -Xmx1G -XX:+UseG1GC -XX:MaxGCPauseMillis=200 -Xlog:gc*",
":file=/opt/pinot/gc-pinot-minion.log -Dlog4j2.configurationFile=",
"/opt/pinot/conf/log4j2.xml -Dplugins.dir=/opt/pinot/plugins",
}, ""),
ValueFrom: nil,
},
},
Resources: {Requests: {s"memory": {i: {...}, Format: "BinarySI"}}},
VolumeMounts: {{Name: "config", MountPath: "/var/pinot/minion/config"}, {Name: "kube-api-access-rqr6l", ReadOnly: true, MountPath: "/var/run/secrets/kubernetes.io/serviceaccount"}},
... // 12 identical fields
},
},
EphemeralContainers: nil,
RestartPolicy: "Always",
... // 28 identical fields
}


give me some solution on this . we are locked here

Contributor guide

Open the contributing guide

Research direction

Start by examining the Helm chart and Kubernetes workload that manage the pinot-minion-stateless pod, especially how its memory resources and JAVA_OPTS are configured. Confirm the workload-level change path rather than editing the running pod; done means the minion receives the intended memory without risking the existing production data.

Written by the indexing model from the issue text.

Assessment

Tech stack
helm, kubernetes
Domain
databases, infrastructure
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
20/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.