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

default search seems to not index all dandisets? #1992

Open
yarikoptic opened this issue Aug 6, 2024 · 5 comments · May be fixed by #2035
Open

default search seems to not index all dandisets? #1992

yarikoptic opened this issue Aug 6, 2024 · 5 comments · May be fixed by #2035
Assignees
Labels
bug Something isn't working search Search and filtering of dandisets/assets UX Affects usability of the system

Comments

@yarikoptic
Copy link
Member

We have https://dandiarchive.org/dandiset/000121 which already was released but searching

@yarikoptic yarikoptic added UX Affects usability of the system search Search and filtering of dandisets/assets bug Something isn't working labels Aug 6, 2024
@kabilar
Copy link
Member

kabilar commented Aug 7, 2024

Thank you, Yarik

@waxlamp waxlamp self-assigned this Aug 23, 2024
@waxlamp
Copy link
Member

waxlamp commented Aug 23, 2024

Wow, @yarikoptic, you found a good one!

First, the workaround: if you perform either of those searches again (by Dandiset ID, or by author's last name), then click on the settings gear to the left of the search bar and turn on "Empty Dandisets", can you confirm that the appropriate search results now show up?

Second, the explanation: Dandiset 121 is somewhat odd in that it has published versions (which, by necessity, are not empty), but also a draft version whose assets have all been deleted. The logic for checking for empty Dandisets has a bug in it: it looks only at the oldest version of a Dandiset, and checks that for assets. The oldest version in every Dandiset is the draft version (the draft version is created as soon as the Dandiset is created, and all published versions are necessarily created later). So, in the case of 000121, even though it has published versions (and therefore is not empty), the logic notices that the draft version is empty, and reports the whole Dandiset as being so.

Finally, a bigger picture note: even though fixing the bug described above would correctly show Dandiset 121 when searching for 000121, truly empty Dandisets still will not show up when searching for their IDs. This is because, as demonstrated in the workaround above, the search results are subject to the user's local Dandiset listing display settings. I don't believe this should be the case: when you perform a search, you are looking directly for all Dandisets, regardless of draft-only or empty status, that meet your search term criteria. Therefore, I believe searches should not filter themselves based on those settings; those settings are specifically for the public Dandiset listing, not search. Thoughts on this?

My plan here is as follows:

  1. Fix the bad empty Dandiset detection logic. That will immediately fix the problem with 000121.
  2. Determine a consensus on whether searches in general should ignore the user's Dandiset listing settings; if we decide that they should, I will attempt a fix to make it so.

@waxlamp
Copy link
Member

waxlamp commented Aug 23, 2024

(thanks @jjnesbitt for your help in diagnosing this)

@yarikoptic
Copy link
Member Author

yikes, that is a fun one -- I am not sure how I was that lucky! Thanks for troubleshooting to its surrender! I am confirming that selecting "Empty Datasets" shows it right away.

I think there could be yet another solution for search:

  • in case of "No results" (only, or in general somehow), somewhat similarly to what kayak (and other sites do I think)

image

So, to suggest to remove filters, and potentially state how many hits then there would be, like in this case could have been

No results! If you reset filters in ⚙️ you would see filtered out 1 result

@waxlamp
Copy link
Member

waxlamp commented Sep 21, 2024

in case of "No results" (only, or in general somehow), somewhat similarly to what kayak (and other sites do I think)

In user interface design, these are known as "empty states" (here's a nice website that catalogs a bunch in the wild: https://emptystat.es/).

I've opened #2033 to track this.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working search Search and filtering of dandisets/assets UX Affects usability of the system
Projects
None yet
Development

Successfully merging a pull request may close this issue.

3 participants