BenLangmead / bowtie

An ultrafast memory-efficient short read aligner
Other
260 stars 77 forks source link

Bowtie 1.2.2 fails to find indexes directory #79

Closed mestia closed 3 years ago

mestia commented 6 years ago

Bowtie 1.2.2 fails to find indexes from the indexes directory. Setting BOWTIE_INDEXES varaible helps, but I guess looking in /usr/bin/indexes is not the expected behavior.

strace -e file bowtie -a -m 5 -v 2 e_coli --suppress 1,5,6,7 -c ATGCATCATGCGCCAT \ openat(AT_FDCWD, "/usr/bin/indexes/e_coli.1.ebwt", O_RDONLY) = -1 ENOENT (No such file or directory) \

DarioS commented 6 years ago

Bowtie looks for the specified index ... in the indexes subdirectory under the directory where the bowtie executable is located ...

What is the absolute path to your Bowtie executable?

mestia commented 6 years ago

I see. The absolute path is /usr/bin/bowtie. This behavior - looking for the indexes in the directory below the dir where bowtie binary is located is different from the behavior for bowite 1.2.1 and 1.2.2-beta. These, older versions were picking up indexes directory from the current dir, no matter where the executable is installed. And I think it makes more sense, taking into account that usually binaries and data live in different places.

This is example of strace output for bowtie-1.2.2-beta

openat(AT_FDCWD, "e_coli.1.ebwt", O_RDONLY) = -1 ENOENT (No such file or directory)
openat(AT_FDCWD, "indexes/e_coli.1.ebwt", O_RDONLY) = 3
ch4rr0 commented 5 years ago

We included a change in v1.2.3 that should address this issue. Please let us know if it works for you.