IGVweb not loading GFF compressed and index files when served from a server
Closed this issue · 13 comments
I have two files with extensions: gff.gz and gff.gz.tbi.
The files are loaded correctly if the track are defined like this:
tracks: [
{
name: "Genes",
type: "annotation",
format: "gff3",
sourceType: "file",
url: "./../resources/sorted_reference_genome.gff.gz",
indexURL: "./../resources/sorted_reference_genome_index.gff.gz.tbi",
oauthToken: `${token}`,
removable: false,
order: 1000000
}
]
However, when the files are served from a server it is not loaded
Track:
tracks: [
{
name: "Genes",
type: "annotation",
format: "gff3",
sourceType: "file",
url: `${host}/api/data/${datasetId}/component/bgzipped_gff`,
indexURL: `${host}/api/data/${datasetId}/component/bgzipped_gff_index`,
oauthToken: `${token}`,
removable: false,
order: 1000000
}
]
I tried these headers and it is not working:
AddType application/octet-stream gff.gz
Content-Disposition attachment; filename=sorted_reference_genome.gff.gz
AddType application/octet-stream gff.gz.tbi
Content-Disposition attachment; filename=sorted_reference_genome.gff.gz.tbi
Hi, we most defintely load many gff files from remote servers, so we need to dig deeper. Does your server include CORS headers? What is the nature of the failure?
General information on server requirements can be found here: https://igv.org/doc/igvjs/#Data-Server-Requirements/.
What does the response look like for the gff.gz file?
You might try this and compare responses carefully
{
"type": "annotation",
"format": "gtf",
"url": "https://s3.amazonaws.com/igv.broadinstitute.org/annotations/hg19/genes/gencode.v24lift37.annotation.sorted.gtf.gz",
"indexURL": "https://s3.amazonaws.com/igv.broadinstitute.org/annotations/hg19/genes/gencode.v24lift37.annotation.sorted.gtf.gz.tbi",
"name": "Gencode v24 (gtf) -- genes filtered",
}
Also, what is the actual response, if any? Its odd that some of the headers are listed twice (Origin for example), I don't know what the consequence of that might be.
I don't see the CORS headers, which is the likely cause of the failure. See the link I posted above.
I have other files (decompressed FASTA with index) served from the same server and it works fine. Only the GFF file is failing.
The FASTA sequence is loaded but not the genes.
Here is the full genome object
{
id:datasetId,
name: `My Genome`,
fastaURL: `${host}/api/data/${datasetId}/component/decompressed_fasta`,
indexURL: `${host}/api/data/${datasetId}/component/decompressed_fasta_index`,
oauthToken: `${token}`,
tracks: [
{
name: "Genes",
type: "annotation",
format: "gff3",
sourceType: "file",
url: `${host}/api/data/${datasetId}/component/bgzipped_gff`,
indexURL: `${host}/api/data/${datasetId}/component/bgzipped_gff_index`,
oauthToken: `${token}`,
removable: false,
order: 1000000
}
]
}
Are you using the latest version of igv.js? I can't reproduce your problem. I have attached a test case.
{
name: "Genes",
format: "gff3",
url: `bgzipped_gff`,
indexURL: `bgzipped_gff_index`
}
I'm using this version
IGV-Web app version 1.3.0
igv.js version 2.6.5
That's an old version, almost 4 years old.
Will try to use the new one