When loading reads using pysam.fetch (or Samtools view) unmapped reads have their end point determined as pos +1 (by convention, apparently). So an unmapped read of length 100 starting 10 bases to the left of the query interval would not be returned by fetch. In contrast, the ReadArray class does not filter these out, so unmapped reads are included in the array. This has led to at least one hard-to-pin-down bug.
When loading reads using pysam.fetch (or Samtools view) unmapped reads have their end point determined as pos +1 (by convention, apparently). So an unmapped read of length 100 starting 10 bases to the left of the query interval would not be returned by fetch. In contrast, the ReadArray class does not filter these out, so unmapped reads are included in the array. This has led to at least one hard-to-pin-down bug.