Skip to content
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

bcftools POS comparison seems to ignore CHROM #1153

Closed
fgvieira opened this issue Feb 6, 2020 · 1 comment
Closed

bcftools POS comparison seems to ignore CHROM #1153

fgvieira opened this issue Feb 6, 2020 · 1 comment

Comments

@fgvieira
Copy link

fgvieira commented Feb 6, 2020

Dear all,

I am using bcftools v1.10.2 and got an error while filtering a VCF file with SVs:

$ cat FILE.vcf | bcftools filter --soft-filter GM_PoN --mode + --exclude 'INFO/GM_CNV_AF > 0.05' --output-type z
[W::vcf_parse] INFO/END=19212036 is smaller than POS at 2:33141291

Looking at that position:

$ fgrep '33141291' FILE.vcf
2	33141291	BND00002716	T	[1:19212036[T	.	LowQual	IMPRECISE;SVTYPE=BND;SVMETHOD=EMBL.DELLYv0.8.1;CHR2=1;END=19212036;PE=2;MAPQ=33;CT=5to5;CIPOS=-460,460;CIEND=-460,460;GM_CNV_AC=47;GM_CNV_AF=0.10829493087557604	GT:GL:GQ:FT:RCL:RC:RCR:CN:DR:DV:RR:RV	0/1:-673.579,0,-70.7019:10000:PASS:78:996:171:8:30:379:0:0

It seems that bcftools is only comparing the start/end positions but not the chromosome. Is this intended?
Thanks,

@jmarshall
Copy link
Member

The intention in VCF has always been that INFO/END represents the end of the region starting from CHROM:POS that the variant spans, thus is necessarily considered to be on the same chromosome. This was clarified in the VCF specification last year; see samtools/hts-specs#425 and samtools/hts-specs#436.

This is a bug in Delly, which started using END for a different purpose when the specification was less clear as to END's standard purpose. See dellytools/delly#159.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants