Can't give an ETA on it, but Advanced Search is next up on the list of "Big Projects" once Ignore is completed. Which means it'll share my attention with a lot of smaller projects, so it could be a while.
It'll be done as a separate screen much like iHub's advanced search screen.
The biggest hurdle I'll have to clear with it is that I use SQL Server's FT-search (CONTAINS() function), which simply isn't something we can have running on a table with about 20 million rows. I've tried it. Not only does such a search take *minutes* to complete, the server gets too busy.
I'm really hoping the next version of SQL Server addresses the huge failings in the current version's search.
The biggest of which is that no matter how you arrange your query, the contains() function is first run across the whole friggin' table, then anything else in the WHERE clause gets applied to that resultset.
I'm hoping the new version will make it possible to apply the rest of the WHERE clause first so you're running CONTAINS on a much smaller recordset. Then it would be possible to just FT-index the whole message table. As it is right now, copies of searchable messages (about the last 700k right now) are stored in another table, and it's that table that's actually being searched.
To give an example, if you just want to find all occurrences of "ignore" in this thread, SQL Server searches the whole message search table (700k rows) and returns a list of all messages with "ignore" in them, no matter what thread, then it'll filter it down to just this thread. Terribly wasteful.
Since the new version of SQL Server isn't out yet, I'm going to make copies of the message table containing messages written each year since inception and Premium-PLUS members will be able to search those other tables. Regular Premium members will only be able to search the past million messages or whatever number we settle on, which is really enough for most people.
Advanced Search will be pretty sophisticated, like iHub's. I really like what I've done there. I checked it out the other day and had forgotten how cool it is. You can have it search all messages by all authors, or select a subject and/or author from your SubjectMarks or PeopleMarks, or have it search on all authors/subjects in your Subject/PeopleMarks. And specify, in a more user-friendly way, whether you want the search words ANDed or ORed. |