Apollo icon indicating copy to clipboard operation
Apollo copied to clipboard

CDS features not appearing when written via annotations._check_write

Open BeaverThing opened this issue 4 years ago • 1 comments

We've encountered an issue where when attempting to upload a GFF file directly to the annotations track using the python library. Features of non-CDS type appear to upload properly, but CDS do not. For a GFF of

##gff-version 3
Miro	feature	gene	7917	8512	.	+	.	ID=Miro_9;
Miro	GenBank	Shine_Dalgarno_sequence	8509	8512	.	+	0	Alias=Miro_9;ID=Miro_9.RBS;Name=Miro_9.RBS;Parent=Miro_9.mRNA;
Miro	cpt.prepApollo	mRNA	7917	8501	.	+	.	ID=Miro_9.mRNA;Parent=Miro_9;
Miro	GenBank	CDS	7917	8501	.	+	0	ID=Miro_9.CDS;Name=Miro_9;Parent=Miro_9.mRNA;obsolete_name=Miro_155;product=hypothetical conserved;

we get an Apollo log of

docker-compose -f apollo-production.yml logs -f apolloeService  - setting owner for feature Feature{id=4758144, symbol='null', description='null', name='Miro_8.mRNAi', uniqueName='a3ef4e83-1188-4bea-9b7e-881da9e8a533', sequenceLength=null, status=null, dateCreated=Tue Mar 15 15:36:08 UTC 2022, lastUpdated=Tue Mar 15 15:36:08 UTC 2022} to org.bbop.apollo.User : 16
apollo_1       | 2022-03-15 15:36:09,380 [http-nio-8080-exec-3] DEBUG apollo.FeatureService  - setting owner for feature Feature{id=4758146, symbol='null', description='null', name='Miro_8.mRNAi-00001', uniqueName='cbe0c759-93b1-4c8f-80e1-2b739d3d9253', sequenceLength=null, status=null, dateCreated=Tue Mar 15 15:36:08 UTC 2022, lastUpdated=Tue Mar 15 15:36:08 UTC 2022} to org.bbop.apollo.User : 16
apollo_1       | 2022-03-15 15:36:09,384 [http-nio-8080-exec-3] DEBUG apollo.FeatureService  - setting owner for feature [Feature{id=4758144, symbol='null', description='null', name='Miro_8.mRNAi', uniqueName='a3ef4e83-1188-4bea-9b7e-881da9e8a533', sequenceLength=null, status=null, dateCreated=Tue Mar 15 15:36:08 UTC 2022, lastUpdated=Tue Mar 15 15:36:09 UTC 2022}, Feature{id=4758146, symbol='null', description='null', name='Miro_8.mRNAi-00001', uniqueName='cbe0c759-93b1-4c8f-80e1-2b739d3d9253', sequenceLength=null, status=null, dateCreated=Tue Mar 15 15:36:08 UTC 2022, lastUpdated=Tue Mar 15 15:36:09 UTC 2022}] to org.bbop.apollo.User : 16
apollo_1       | 2022-03-15 15:36:09,384 [http-nio-8080-exec-3] DEBUG apollo.FeatureService  - converting features to json Feature{id=4758146, symbol='null', description='null', name='Miro_8.mRNAi-00001', uniqueName='cbe0c759-93b1-4c8f-80e1-2b739d3d9253', sequenceLength=null, status=null, dateCreated=Tue Mar 15 15:36:08 UTC 2022, lastUpdated=Tue Mar 15 15:36:09 UTC 2022}
apollo_1       | 2022-03-15 15:36:09,384 [http-nio-8080-exec-3] DEBUG apollo.FeatureService  - converting features to json Feature{id=4758151, symbol='null', description='null', name='e87ecbfd-e342-4c35-b938-2492c892d222', uniqueName='e87ecbfd-e342-4c35-b938-2492c892d222', sequenceLength=null, status=null, dateCreated=Tue Mar 15 15:36:08 UTC 2022, lastUpdated=Tue Mar 15 15:36:08 UTC 2022}
apollo_1       | 2022-03-15 15:36:09,384 [http-nio-8080-exec-3] DEBUG apollo.FeatureService  - converting features to json Feature{id=4758148, symbol='null', description='null', name='f328bf59-5e93-4760-abc9-b12c8534fdfb', uniqueName='f328bf59-5e93-4760-abc9-b12c8534fdfb', sequenceLength=null, status=null, dateCreated=Tue Mar 15 15:36:08 UTC 2022, lastUpdated=Tue Mar 15 15:36:08 UTC 2022}
apollo_1       | 2022-03-15 15:36:09,393 [http-nio-8080-exec-3] DEBUG apollo.FeatureService  - jsonTranscript: {"gff_id":"Miro_9.mRNA","organism":"Miro","children":[{"gff_id":"Miro_9.RBS","location":{"strand":1,"fmin":8508,"fmax":8512},"type":{"cv":{"name":"sequence"},"name":"Shine_Dalgarno_sequence"}},{"gff_id":"Miro_9.CDS","location":{"strand":1,"fmin":7916,"fmax":8501},"type":{"cv":{"name":"sequence"},"name":"CDS"}}],"clientToken":"ignore","name":"Miro_9.mRNA","location":{"strand":1,"fmin":7916,"fmax":8501},"type":{"cv":{"name":"sequence"},"name":"mRNA"},"username":"[RemovedForIssue]"}
apollo_1       | 2022-03-15 15:36:09,393 [http-nio-8080-exec-3] DEBUG apollo.FeatureService  - Gene from parent_id doesn't exist; trying to find overlapping isoform
apollo_1       | 2022-03-15 15:36:09,545 [http-nio-8080-exec-3] DEBUG apollo.FeatureService  - overlapping genes: []
apollo_1       | 2022-03-15 15:36:09,545 [http-nio-8080-exec-3] DEBUG apollo.FeatureService  - gene is null
apollo_1       | 2022-03-15 15:36:11,538 [http-nio-8080-exec-3] DEBUG apollo.FeatureService  - jsonFeature [children:[[gff_id:Miro_9.mRNA, organism:Miro, children:[[gff_id:Miro_9.RBS, location:[strand:1, fmin:8508, fmax:8512], type:[cv:[name:sequence], name:Shine_Dalgarno_sequence]], [gff_id:Miro_9.CDS, location:[strand:1, fmin:7916, fmax:8501], type:[cv:[name:sequence], name:CDS]]], clientToken:ignore, name:Miro_9.mRNA, location:[strand:1, fmin:7916, fmax:8501], type:[cv:[name:sequence], name:mRNA], username:[RemovedForIssue]]], name:Miro_9.mRNAo, location:[strand:1, fmin:7916, fmax:8501], type:[cv:[name:cv], name:Gene]] has 1 children
apollo_1       | 2022-03-15 15:36:11,541 [http-nio-8080-exec-3] DEBUG apollo.FeatureService  - jsonFeature [gff_id:Miro_9.mRNA, organism:Miro, children:[[gff_id:Miro_9.RBS, location:[strand:1, fmin:8508, fmax:8512], type:[cv:[name:sequence], name:Shine_Dalgarno_sequence]], [gff_id:Miro_9.CDS, location:[strand:1, fmin:7916, fmax:8501], type:[cv:[name:sequence], name:CDS]]], clientToken:ignore, name:Miro_9.mRNA, location:[strand:1, fmin:7916, fmax:8501], type:[cv:[name:sequence], name:mRNA], username:[RemovedForIssue]] has 2 children
apollo_1       | 2022-03-15 15:36:11,550 [http-nio-8080-exec-3] INFO  apollo.FeatureService  - calculateCDS
apollo_1       | 2022-03-15 15:36:11,551 [http-nio-8080-exec-3] DEBUG apollo.FeatureService  - CDS found Feature{id=4758163, symbol='null', description='null', name='219a0e5e-3d76-42b6-944d-5251f83798fb', uniqueName='219a0e5e-3d76-42b6-944d-5251f83798fb', sequenceLength=null, status=null, dateCreated=Tue Mar 15 15:36:11 UTC 2022, lastUpdated=Tue Mar 15 15:36:11 UTC 2022}, checking for manual start and end
apollo_1       | 2022-03-15 15:36:11,551 [http-nio-8080-exec-3] DEBUG apollo.FeatureService  - CDS found Feature{id=4758163, symbol='null', description='null', name='219a0e5e-3d76-42b6-944d-5251f83798fb', uniqueName='219a0e5e-3d76-42b6-944d-5251f83798fb', sequenceLength=null, status=null, dateCreated=Tue Mar 15 15:36:11 UTC 2022, lastUpdated=Tue Mar 15 15:36:11 UTC 2022}, manual start false end false
apollo_1       | 2022-03-15 15:36:11,551 [http-nio-8080-exec-3] DEBUG apollo.FeatureService  - neither start or end is set manually so calculating ORF
apollo_1       | 2022-03-15 15:36:11,551 [http-nio-8080-exec-3] DEBUG apollo.FeatureService  - Setting longest orf with Feature{id=4758158, symbol='null', description='null', name='Miro_9.mRNA', uniqueName='42f71df2-0c0c-453a-8b3f-028133dbe120', sequenceLength=null, status=null, dateCreated=Tue Mar 15 15:36:11 UTC 2022, lastUpdated=Tue Mar 15 15:36:11 UTC 2022} and read through stop codon false and allow partials true
apollo_1       | 2022-03-15 15:36:11,551 [http-nio-8080-exec-3] DEBUG apollo.FeatureService  - organism found org.bbop.apollo.Organism : 123355
apollo_1       | 2022-03-15 15:36:11,551 [http-nio-8080-exec-3] DEBUG apollo.OrganismService  - using the default translation table
apollo_1       | 2022-03-15 15:36:11,551 [http-nio-8080-exec-3] DEBUG apollo.FeatureService  - translation table found [ATC, ATT, ATG, TTG, CTG, GTG, ATA] , [TAA, TAG, TGA]
apollo_1       | 2022-03-15 15:36:11,705 [http-nio-8080-exec-3] DEBUG apollo.FeatureService  - mrna residues found null
apollo_1       | 2022-03-15 15:36:11,705 [http-nio-8080-exec-3] DEBUG apollo.NameService  - feature properties : Feature{id=4758158, symbol='null', description='null', name='Miro_9.mRNA', uniqueName='42f71df2-0c0c-453a-8b3f-028133dbe120', sequenceLength=null, status=null, dateCreated=Tue Mar 15 15:36:11 UTC 2022, lastUpdated=Tue Mar 15 15:36:11 UTC 2022}
apollo_1       | 2022-03-15 15:36:12,061 [http-nio-8080-exec-3] DEBUG apollo.SequenceService  - sequence alterations found 0
apollo_1       | 2022-03-15 15:36:12,334 [http-nio-8080-exec-3] DEBUG apollo.FeatureService  - setting owner for feature Feature{id=4758156, symbol='null', description='null', name='Miro_9.mRNAo', uniqueName='144ec61f-0cc1-4750-9df1-04d472dfff31', sequenceLength=null, status=null, dateCreated=Tue Mar 15 15:36:11 UTC 2022, lastUpdated=Tue Mar 15 15:36:11 UTC 2022} to org.bbop.apollo.User : 16
apollo_1       | 2022-03-15 15:36:12,334 [http-nio-8080-exec-3] DEBUG apollo.FeatureService  - setting owner for feature Feature{id=4758158, symbol='null', description='null', name='Miro_9.mRNAo-00001', uniqueName='42f71df2-0c0c-453a-8b3f-028133dbe120', sequenceLength=null, status=null, dateCreated=Tue Mar 15 15:36:11 UTC 2022, lastUpdated=Tue Mar 15 15:36:11 UTC 2022} to org.bbop.apollo.User : 16
apollo_1       | 2022-03-15 15:36:12,337 [http-nio-8080-exec-3] DEBUG apollo.FeatureService  - setting owner for feature [Feature{id=4758156, symbol='null', description='null', name='Miro_9.mRNAo', uniqueName='144ec61f-0cc1-4750-9df1-04d472dfff31', sequenceLength=null, status=null, dateCreated=Tue Mar 15 15:36:11 UTC 2022, lastUpdated=Tue Mar 15 15:36:12 UTC 2022}, Feature{id=4758158, symbol='null', description='null', name='Miro_9.mRNAo-00001', uniqueName='42f71df2-0c0c-453a-8b3f-028133dbe120', sequenceLength=null, status=null, dateCreated=Tue Mar 15 15:36:11 UTC 2022, lastUpdated=Tue Mar 15 15:36:12 UTC 2022}] to org.bbop.apollo.User : 16
apollo_1       | 2022-03-15 15:36:12,337 [http-nio-8080-exec-3] DEBUG apollo.FeatureService  - converting features to json Feature{id=4758158, symbol='null', description='null', name='Miro_9.mRNAo-00001', uniqueName='42f71df2-0c0c-453a-8b3f-028133dbe120', sequenceLength=null, status=null, dateCreated=Tue Mar 15 15:36:11 UTC 2022, lastUpdated=Tue Mar 15 15:36:12 UTC 2022}
apollo_1       | 2022-03-15 15:36:12,338 [http-nio-8080-exec-3] DEBUG apollo.FeatureService  - converting features to json Feature{id=4758163, symbol='null', description='null', name='219a0e5e-3d76-42b6-944d-5251f83798fb', uniqueName='219a0e5e-3d76-42b6-944d-5251f83798fb', sequenceLength=null, status=null, dateCreated=Tue Mar 15 15:36:11 UTC 2022, lastUpdated=Tue Mar 15 15:36:11 UTC 2022}
apollo_1       | 2022-03-15 15:36:12,338 [http-nio-8080-exec-3] DEBUG apollo.FeatureService  - converting features to json Feature{id=4758160, symbol='null', description='null', name='69bf0444-2c95-4c4e-9b19-668e668f4c74', uniqueName='69bf0444-2c95-4c4e-9b19-668e668f4c74', sequenceLength=null, status=null, dateCreated=Tue Mar 15 15:36:11 UTC 2022, lastUpdated=Tue Mar 15 15:36:11 UTC 2022}
apollo_1       | 2022-03-15 15:36:12,342 [http-nio-8080-exec-3] DEBUG apollo.FeatureService  - jsonTranscript: {"gff_id":"Miro_117.mRNA","organism":"Miro","children":[{"gff_id":"Miro_117.RBS","location":{"strand":-1,"fmin":70712,"fmax":70715},"type":{"cv":{"name":"sequence"},"name":"Shine_Dalgarno_sequence"}},{"gff_id":"Miro_117.CDS","location":{"strand":-1,"fmin":68489,"fmax":70706},"type":{"cv":{"name":"sequence"},"name":"CDS"}}],"clientToken":"ignore","name":"Miro_117.mRNA","location":{"strand":-1,"fmin":68489,"fmax":70706},"type":{"cv":{"name":"sequence"},"name":"mRNA"},"username":"[RemovedForIssue]"}

For brevity this is a slice of the logs relevant to Miro_9. This was attempted with and without CDS recalulation enabled without any noticeable difference

BeaverThing avatar Mar 28 '22 17:03 BeaverThing

By "not appearing," do you mean that it doesn't appear in the track UI? If I use that GFF3, I think I see what you mean where the track looks like this: image If you check the annotation panel, though, you'll see that the CDS is there: image If you want it to show up in the track, you'll have to add an exon line, something like this:

Group1.10	GenBank	exon	7917	8501	.	+	0	Parent=Miro_9.mRNA;

See this section of the GFF3 spec for an explanation, but Apollo works best when you include the exon. If you do so, the annotation track will look like this: image

garrettjstevens avatar Apr 25 '22 20:04 garrettjstevens