samtools/samtools — pull request #223 by jrandall (2014-05-29 11:24:08+00:00)
Title: Removes all randomness from `samtools merge`

The randomness in `samtools merge` is unnecessary. This commit changes from
resolving conflicts in header IDs with random strings to resolving them by
appending the index of the input file from which the record comes. On the
plus side, this means that multiple runs of `samtools merge` on the same
input files (in the same order) will produce the same output without having
to worry about setting the random seed, and that if the order of merge
files is linked to an external source (such as a FOFN), then the indicies
at the end of each ID can be used to tell from which input file the record
arose. The drawback is that, when merging files that have themselves
already been merged, conflicts are much more likely - and these conflicts
will be resolved by appending another index at the end of the ID, such
that after several rounds of merging, one might end up with IDs such as
record-1-3-2-1.