Bioconductor / AnnotationHub

Client for the Bioconductor AnnotationHub web resource
15 stars 12 forks source link

Accessing a resource with a snapshotDate() before it was available gives a cryptic error #11

Closed mtmorgan closed 4 years ago

mtmorgan commented 4 years ago

In the current 'devel' version of AnnotationHub, record "AH75194" exists

> hub = AnnotationHub()
snapshotDate(): 2019-10-25
> hub[["AH75194"]]
downloading 0 resources
loading from cache
                                                 AH75194 : 81940
"/Users/ma38727/Library/Caches/AnnotationHub/d90d285daf8e_81940"

but trying to access it from a snapshotDate() before it was available gives a cryptic message

> snapshotDate(hub) <- "2019-05-02"
> hub[["AH75194"]]
Error: Public

Also, I'm not sure why we're told downloading 0 resources or the internal information AH75194 : 81940, which makes it hard to know, from the return object, what the original, user-facing, AH id was (i.e., the name should just be AH75194).

lshep commented 4 years ago

I thought I got rid of the id information so I'll check on that implementation.

We do display the download information but maybe if it doesn't download anything we should change the message.

I don't think I ever tested trying to download a resource that is added after a snapshot date. I'll look into this. Thanks for reporting it.

Get Outlook for Androidhttps://aka.ms/ghei36


From: Martin Morgan notifications@github.com Sent: Sunday, October 27, 2019 6:44:07 PM To: Bioconductor/AnnotationHub AnnotationHub@noreply.github.com Cc: Subscribed subscribed@noreply.github.com Subject: [Bioconductor/AnnotationHub] Accessing an existing resource with a snapshotDate() before it was available gives a cryptic error (#11)

In the current 'devel' version of AnnotationHub, record "AH75194" exists

hub = AnnotationHub() snapshotDate(): 2019-10-25 hub[["AH75194"]] downloading 0 resources loading from cache AH75194 : 81940 "/Users/ma38727/Library/Caches/AnnotationHub/d90d285daf8e_81940"

but trying to access it from a snapshotDate() before it was available gives a cryptic message

snapshotDate(hub) <- "2019-05-02" hub[["AH75194"]] Error: Public

Also, I'm not sure why we're told downloading 0 resources or the internal information AH75194 : 81940, which makes it hard to know, from the return object, what the original, user-facing, AH id was (i.e., the name should just be AH75194).

— You are receiving this because you are subscribed to this thread. Reply to this email directly, view it on GitHubhttps://github.com/Bioconductor/AnnotationHub/issues/11?email_source=notifications&email_token=AEO3MHA2X23QDT5FHUDF7TTQQYKTPA5CNFSM4JFTYVOKYY3PNVWWK3TUL52HS4DFUVEXG43VMWVGG33NNVSW45C7NFSM4HUUIRVQ, or unsubscribehttps://github.com/notifications/unsubscribe-auth/AEO3MHCVHWGGOMMORGZOPR3QQYKTPANCNFSM4JFTYVOA.

This email message may contain legally privileged and/or confidential information. If you are not the intended recipient(s), or the employee or agent responsible for the delivery of this message to the intended recipient(s), you are hereby notified that any disclosure, copying, distribution, or use of this email message is prohibited. If you have received this message in error, please notify the sender immediately by e-mail and delete this email message from your computer. Thank you.

lshep commented 4 years ago

@mtmorgan - so a few different options for the snapshot date access issue - Currently when a resource isn't available it only prints out Error: along with the status message (assuming there are a few other statuses that define removal or deprecation of a resource) If the resource has been removed removed then there is a message that its been removed from the database

> hub = AnnotationHub()
> hub[["AH1"]]
Error: record not found in database
> snapshotDate(hub) <- "2019-05-02"
> hub[["AH75194"]]
Error: Public

Currently recordStatus is used in the ERROR message - I could do a few different things - I could print out additional information about the resources by using getInfoOnIds or internally .IdsInfo so that date added / date remove information is also printed with the status instead of using recordStatus

> getInfoOnIds(hub, "AH75194")
         ah_id fetch_id               title rdataclass status biocversion
291151 AH75194    81940 PANTHER.db database     SQLite Public        3.10
       rdatadateadded rdatadateremoved file_size
291151     2019-10-22             <NA> 501149696

Or I can check that if the status is public compared to the rdatadateadded is after the snapshot date to have a specific error message for this case - something like resource addeds after currently snapshot date and include the two dates .....

Or some combination of both?

lshep commented 4 years ago

The other two issues have been addressed - now only labelled with AH_id and if 0 resources are downloaded it skips this message.