-
Notifications
You must be signed in to change notification settings - Fork 0
Description
Using the following descriptive script (imagine the samples have the source-tag)
"first.csv" //contains 10 samples
"second.csv" //contains 8 samples
->
fork-tag(tag=source){
"first.csv" -> noop()
;
"*" -> drop()
}
->
output.csv
The expected behaviour would be for the output.csv to contain the 10 samples from the first.csvfile as its forwarded using the noop() step while every (other) match gets dropped in the second fork.
The actual behaviour is that all samples from the first.csv are doubled and the output.csv contains 20 samples in the order sample 1, sample 1, sample 2, sample 2 and so on.
Work-around: Specifiying "^(?!.*(first.csv))" -> drop() (explicitly match for everything but the first.csv string) for the second fork solves the problem as the string will not be added to the second matcher which is unfortunately iterated over in a for-loop within the writeSample method of Fork.java. This addition to the second fork, where it normally should just be dropped, introduces the doubling.