Is this a BUG REPORT or FEATURE REQUEST?:
Bug report
What happened:
If you execute the parallelism-nested.yaml example then the pods with a seq-id of b, c or d all have a parallel-id of 1
What you expected to happen:
pods with a seq-id of b, c or d all to have all parallel ids (1, 2, 3 and 4).
How to reproduce it (as minimally and precisely as possible):
argo submit parallelism-nested.yaml
then:
argo get <workflow-id> -o yaml
There will be multiple pods in the Status section with seq-id of b and parallel id of 1, there should only be one.
Anything else we need to know?:
This looks to be related to https://github.com/argoproj/argo/pull/1552
storedTemplates contains the following, with seq-id hardcoded:
/seq-worker:
arguments: {}
inputs: {}
metadata: {}
name: seq-worker
outputs: {}
parallelism: 1
steps:
- - arguments:
parameters:
- name: parallel-id
value: "1"
- name: seq-id
value: '{{item}}'
name: seq-step
template: one-job
withParam: |
["a","b","c","d"]
Environment:
$ argo version
@dtaniwaki fyi, I think this relates to your PR
Hi sir, When this bug fix will release? Hope soon. Many thanks.
@dtaniwaki is refactoring the store template feature. This will close most of the bugs.
I tried to downgrade the version to 2.4.0, from 2.4.2, and seems the retry feature has some bug as well.
@NirvanaZA could you elaborate on the bug with the retry feature?
Another minimal example to illustrate what appears to be the same problem:
apiVersion: argoproj.io/v1alpha1
kind: Workflow
metadata:
generateName: steps-
spec:
entrypoint: steps
templates:
- name: print
inputs:
parameters:
- name: message
container:
image: alpine:latest
command: [sh, -c]
args: ["echo {{inputs.parameters.message}}"]
- name: print-twice
inputs:
parameters:
- name: message
steps:
- - name: print1
template: print
arguments:
parameters:
- name: message
value: "{{inputs.parameters.message}}"
- - name: print2
template: print
arguments:
parameters:
- name: message
value: "{{inputs.parameters.message}}"
- name: steps
steps:
- - name: hello
template: print-twice
arguments:
parameters:
- name: message
value: hello
- - name: goodbye
template: print-twice
arguments:
parameters:
- name: message
value: goodbye
On Argo 2.4.1, this has the expected behavior. Workflow logs:
print1: hello
print2: hello
print1: goodbye
print2: goodbye
On Argo 2.4.2, the message for the last one is passed incorrectly:
print1: hello
print2: hello
print1: goodbye
print2: hello
Just FYI we are also seeing issues with when statements getting the wrong parameters with a nested setup. It works with 2.4.0-rc1 but is broken after that, so pretty certain it is related to that same change that is affected this ticket.
FYI after creating and deploying an argo controller image with https://github.com/argoproj/argo/pull/1744 it did fix the issues we were seeing with parameter passing, but now the podSpecPatch does not get applied or even stored with a workflow.
I.E. after submitting a workflow with a task that has a podSpecPatch it is not found anywhere within the workflow obtained by argo get <workflow-ID> -o yaml
@simonwa7 Could you take a look at @dtaniwaki's comments regarding your issue? https://github.com/argoproj/argo/pull/1744#issuecomment-553455599
For those blocked by this regression: I would consider building #1744 into an image until the PR goes through review and a release is made hopefully sometime next week.
For those blocked by this regression: I would consider building #1744 into an image until the PR goes through review and a release is made hopefully sometime next week.
馃憤 Waiting for the new release.
Hello everyone v2.4.3 was just released with a fix for this issue, please take a look! Thank you for your patience and thank you to @dtaniwaki for working on this fix!
Most helpful comment
Hello everyone
v2.4.3was just released with a fix for this issue, please take a look! Thank you for your patience and thank you to @dtaniwaki for working on this fix!