Open lgatto opened 2 years ago
The columns "name"
and "value"
are from the metadata database table which is generally not used in any query in the database. Where did you get this warning message (I assume you did not specifically call the cleanColumns
when you first saw the message)?
I suppose I wanted a way to get all possible columns and was surprised to get a warning when using clear (although un-exported) functions. Is there another way to do that?
No, listColumns
is actually the correct function to list all available database columns - maybe listTables
might be even better because it tells which columns are in which table. I could fix the listColumns
to not list columns from the metadata
table because that table will usually not be queried anyway.
Yes, that sounds reasonable. Or at least not throw a warning but a simple message, if you think that's warranted.
On a similar note:
> ens <- proteins(edb105, listColumns(edb105))
Warning messages:
1: In cleanColumns(object, unique(c(columns, "protein_id"))) :
Columns 'name', 'value' are not present in the database and have been removed
2: In .local(object, ...) :
Exon specific columns are not allowed for proteins. Columns 'exon_id', 'exon_seq_start', 'exon_seq_end', 'exon_idx' have been removed.
Is the second warning warranted? As above, I should be able to get all columns for proteins without triggering a warning.
I think the second warning is OK. listColumns
lists all database columns, but for protein annotations it makes no sense to also return exon coordinates - that would blow up the results (and in addition the join query would be rather complex and the query would eventually take very long).
with