-
Notifications
You must be signed in to change notification settings - Fork 80
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
BAM IndexedReader from S3 url: I/O Error #216
Comments
Unfortunately I don't know much about https, so I'm a little out my depth here. Using VSCode, I can step through the hfile / curl code & watch it prepare and execute a query to AWS. This happens successfully, but AWS rejects the request. The s3 url starts off as: and the s3 module in htslib translates it to: It also adds a bunch of headers to the http request that appear to be AWS specific:
Then curl makes the request to Amazon and gets a 403 response: The same things appears to happen if I access the |
Gotcha and thanks for the debugging Patrick, I'll focus on extending a small C test today that uses |
@pmarks As I mentioned here: #189 (comment) ... |
@brainstorm Sorry for cross-posting in this issue, but as you mentioned here, that you're hoping to tackle bits of the docs in the midterm, I figured I'd post about our planned Maybe you have some time to drop by, and in any case we might be able to repeat the same thing over here. |
Hey, thanks for telling @dlaehnemann, I'll make sure I drop by ;) On topic for this issue, I have a working proof on concept for S3+AWS Lambda+rust-htslib over here: https://github.com/brainstorm/s3-rust-htslib-bam The dawn of large scale lambda-backed bioinformatics on AWS is nigh! ;P Time to close this issue I reckon, I'll document this on a PR during the docathon ;) |
This is a followup from #189 (comment) regarding
feature = ["s3"]
. Here's some minimal example code to read a BAM header hosted on S3:When
feature
does not haves3
, it (predictably) goes "Protocol not supported", like this htslib+pysam's bug recently fixed:Then, enabling S3 support, it leads to
I/O error
with some simple code that tries to retrieve target names from a BAM header:I have created this repository as a test/reproducer:
https://github.com/brainstorm/s3-rust-htslib-bam
@pmarks, @dlaehnemann, Would you mind taking a peek at my code and let me know if I'm doing something obviously wrong in there? I would really like to document this down to take a stab at #198 and/or write a blogpost about rust-htslib's 101 to attract more devs/users ;)
The text was updated successfully, but these errors were encountered: