Why is filelist SOOOO much more efficient the OR's?

Discussion related to "Everything" 1.5 Alpha.
Post Reply
therube
Posts: 4977
Joined: Thu Sep 03, 2009 6:48 pm

Why is filelist SOOOO much more efficient the OR's?

Post by therube »

(just rambling, from some time back, & i've only thought about it, a bit...)



a large filelist (7,111 chars) results in a, /displays/ a "blank" Searchbar
& a blank Tab "title" (if you will)

i'm pretty sure that is expected (problay after 1 or 2 or 4K, i'm thinking,
but just noting...


while we're here, why is filelist: SOOOO much more efficient then OR's ?
OR's start choking, almost immediately
but with a filelist: (177 items in this case) it's instant ?

- oh, because OR's need to actually go out & search for said files,
where filelist: simply needs to /LIST/ an already determined set
of filenames, & if they happen to exist, they're displayed, & if
the don't, they simply do not. so, that's part of it, but what
else is there... ?


why if you "Open" a File List (Ctrl+O)
do you then have a "Close File List" ability
but
if you "load" a file list (everything.exe -search-file-list)
you do not (have a "Close File List")
?

if you Open a File List
then click the 'X' button on the Searchbar
that "clears the search"
but does not "Close" the File List ?
- at least, at that point, the Close File List (menu option) is still "valid"
^--- i have to go over that again, because i didn't look at it, correctly

so when a File List is "Opened", your actions only pertain to the files in
that List
when a File List is "Opened", there is no 'X' on the Searchbar
when a File List is "Opened", the Tab reads "New Tab"
when a File List is "loaded", there IS an 'X' & the Tab is "blank"
in both cases, there is the potential for the Searchbar to /display/ as
"blank" (depending on if the search length is > maxlen...)

likewise, Searchbar "history", while it "exists" with both an Opened & a loaded
File List, in the case of an Opened list, you are performing said
(history [or new, for that matter]) searches based only on the files
in that Opened list,
where if you "loaded" a -search-file-list, any Searchbar History item will simply
replace ("close", if you will) the -search-file-list & perform the search anew
("globally", outside of any "List")
void
Developer
Posts: 16743
Joined: Fri Oct 16, 2009 11:31 pm

Re: Why is filelist SOOOO much more efficient the OR's?

Post by void »

while we're here, why is filelist: SOOOO much more efficient then OR's ?
ORs = partial file name search. (slow strstr search on each filename)
filelist: = sorted full filename lookup. (instant binary search lookup)



Consider using regex: or startwith: or whole: for really large OR lists, it will be slightly faster.
An or list (DFA) is on my TODO list.


why if you "Open" a File List (Ctrl+O)
do you then have a "Close File List" ability
This loads the file list as if it was another database.

Results are from the file list, not your local index.


if you "load" a file list (everything.exe -search-file-list)
you do not (have a "Close File List")
?
-search-file-list foo.efu simply loads the file list into your search box.
It searches your existing database for a list of filenames.

Results are from your local index.


if you Open a File List
then click the 'X' button on the Searchbar
that "clears the search"
but does not "Close" the File List ?
Open File List changes the database/index, not your search.
The opened file list filename is shown in the statusbar on the right.
Post Reply