bpipe icon indicating copy to clipboard operation
bpipe copied to clipboard

add arbitrary configuration name support for 'multi' or 'multiExec'

Open zengzheng123 opened this issue 8 years ago • 4 comments

'multi' and 'multiExec' is a very useful way to parallelize the processing inside a bpipe stage. It would be great if the support of arbitrary cluster job configuration name can be added. Thank you.

zengzheng123 avatar Mar 18 '16 15:03 zengzheng123

Have implemented this in commit 2d25d53.

There's a quick example in the tests:

https://github.com/ssadedin/bpipe/blob/master/tests/multi_with_config/test.groovy

Would be great if you are able to build from master and see if this satisfies your need or not. It is somewhat limited as you can only use a configuration once at the moment. I will update with support for lists of commands later.

ssadedin avatar Mar 19 '16 10:03 ssadedin

NB: I realised it was really trivial to support multiple commands per config, so have done that as well. The test above is updated with an example of that case.

ssadedin avatar Mar 19 '16 10:03 ssadedin

There seems to be an issue when using 'multi' inside a "produce" block, even without using the configuration name. The stage will take forever before submitting the job to the cluster. Tried both 0.9.9 and the version build from master, both with the same issue. Thank you for your help.

e.g:

test = {
  produce("test1.txt", "test2.txt") 
  {
    multi "echo test1 >test1.txt", "echo test2 >test2.txt"
  }
}

zengzheng123 avatar Mar 21 '16 21:03 zengzheng123

How to use the same config for multiple commands? Use the same config name multiple times would cause a duplicate key error since it's a map. Thank you.

zengzheng123 avatar Jul 25 '16 18:07 zengzheng123