Bowtie2 generates wrong length in SAM/BAM header if the fasta file has sequences with all Ns.
for example:
g1 300bp
ATCTATTAAAGTGATGATAAGAATGATTTTAATAGTGGAAATGTTTGAAA
TTTTGCTGAGATGAGTTTACTTGGGTGCCCTGTGTAAAAATGAGAGGAGC
ACAAGATGGCGGACGGAGATGCTAAAGAGTGTGAGCTAGTAGATGTGAAT
AGAACTTTCTCACTCTTGCTGATTTAAGTCAATTTGAGAATGCATTCATT
TCACTCTTGCTGATTTAAGTCAATTTGAGAATGCATTCAAAAGCGAGGGA
CTCTACATATTAGAGATGTTACAAATGAAGATCTGAGARGAATAGGCTTG
g2 150bp
NNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN
NNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN
NNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN
g3 200bp
ATCTATTAAAGTGATGATAAGAATGATTTTAATAGTGGAAATGTTTGAAA
TTTTGCTGAGATGAGTTTACTTGGGTGCCCTGTGTAAAAATGAGAGGAGC
ACAAGATGGCGGACGGAGATGCTAAAGAGTGTGAGCTAGTAGATGTGAAT
AGAACTTTCTCACTCTTGCTGATTTAAGTCAATTTGAGAATGCATTCATT
g4 200bp
NNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN
TCACTCTTGCTGATTTAAGTCAATTTGAGAATGCATTCAAAAGCGAGGGA
CTCTACATATTAGAGATGTTACAAATGAAGATCTGAGARGAATAGGCTTG
NNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN
g5 100bp
TCACTCTTGCTGATTTAAGTCAATTTGAGAATGCATTCAAAAGCGAGGGA
CTCTACATATTAGAGATGTTACAAATGAAGATCTGAGARGAATAGGCTTG
the header of sam file likes this:
@HD VN:1.0 SO:unsorted
@SQ SN:g1 LN:450
@SQ SN:g3 LN:200
@SQ SN:g4 LN:200
@SQ SN:g5 LN:100
g2 was missed because it only has Ns, the length of g2 was added to g1 (the gene before it in fasta file).