Executor panics when PodDefaults or PodDefaults.Ingress is not configured
PodDefaults and PodDefaults.Ingress are defined as struct pointers which implies that these values may not be configured and may be nil. When these values are not configured (since we want to disable the ingress defaults) the executor panics in several different places because the code assumes that these pointers are non-nil.
The executor code should be robust to this.
ie.
| | 2025-02-03 19:34:59.221 | panic: runtime error: invalid memory address or nil pointer dereference |
| | 2025-02-03 19:34:59.222 | [signal SIGSEGV: segmentation violation code=0x1 addr=0x10 pc=0x1b34339] |
| | 2025-02-03 19:34:59.222 | |
| | 2025-02-03 19:34:59.222 | goroutine 359 [running]: |
| | 2025-02-03 19:34:59.222 | github.com/armadaproject/armada/internal/executor/job.CreateSubmitJobFromExecutorApiJobRunLease(0xc0008b3860, 0x0) |
| | 2025-02-03 19:34:59.222 | /home/jparraga/code/armada/internal/executor/job/util.go:35 +0xd9 |
| | 2025-02-03 19:34:59.222 | github.com/armadaproject/armada/internal/executor/service.(*JobRequester).createSubmitJobs(0xc000691140, {0xc000323660, 0x4, 0xc001311ea0?}) |
| | 2025-02-03 19:34:59.222 | /home/jparraga/code/armada/internal/executor/service/job_requester.go:135 +0x166 |
| | 2025-02-03 19:34:59.222 | github.com/armadaproject/armada/internal/executor/service.(*JobRequester).RequestJobsRuns(0xc000691140) |
| | 2025-02-03 19:34:59.222 | /home/jparraga/code/armada/internal/executor/service/job_requester.go:66 +0x1e8 |
| | 2025-02-03 19:34:59.222 | github.com/armadaproject/armada/internal/common/task.(*BackgroundTaskManager).startBackgroundTask.func1() |
| | 2025-02-03 19:34:59.222 | /home/jparraga/code/armada/internal/common/task/background_task.go:73 +0x64 |
| | 2025-02-03 19:34:59.222 | created by github.com/armadaproject/armada/internal/common/task.(*BackgroundTaskManager).startBackgroundTask in goroutine 1 |
| | 2025-02-03 19:34:59.222 | /home/jparraga/code/armada/internal/common/task/background_task.go:71 +0x22c
can i work on this?
Hey,
Thank you for raising this issue!
While it's valid, it's currently a low priority for us, and we don't anticipate immediate work from our side. However, we'd definitely welcome a PR if you'd like to address this sooner.
Please let us know if you're interested in contributing!