Simon Pearce
04/15/2026, 9:40 AMSimon Pearce
04/15/2026, 9:41 AMÖmer An
04/15/2026, 9:44 AMSimon Pearce
04/15/2026, 9:56 AMBenjamin Schuster-Boeckler
04/15/2026, 10:39 AMmap or the like, which can lead to race conditions. From memory, we used to have code that looked like this:
rawFastqPairs | trimReads
trimReads.out.fastqs \
| map {it[0] = "${it[0]}_trimmed"; it} \
| concat ( rawFastqPairs.map {it[0] = "${it[0]}_raw"; it} ) \
| runFastQC
This caused a big headache because the string in it[0] is only pointed to, and thus changing it in place in the map randomly set it one way or the other depending on which code is executed first, leading to files named something like sample_trimmed_rawBenjamin Schuster-Boeckler
04/15/2026, 10:45 AMrawFastqPairs | trimReads
trimReads.out.fastqs \
| map {[it[0]+"_trimmed", it[1], it[2]]} \
| concat ( rawFastqPairs.map {[it[0]+"_raw", it[1], it[2]]} ) \
| runFastQCBenjamin Schuster-Boeckler
04/15/2026, 10:45 AM