corner corner query optimization - advanced book search - my shelf only

Forum | << Feature Requests | Refresh | Search

corner corner

Sort Options Toggle Stats Options


Profile Image

query optimization - advanced book search - my shelf only

I am a huge fan of the my shelf only tick in the advanced book search - I often use it to:
* see if I still have a book
* how many books of a given author I have lying around
* see how many physical books I have "in common" with another site member

Sometimes, however, a query for a very generic title or author times out - this leads me to believe that my search goes through all the books in the bookcrossing database and not only mine - my shelf only has some 15 pages, it couldn't take that long .. could it?

If my assumption is right, I was wondering whether it would be possible that, when the "my shelf only" is ticked, queries be limited to own shelf before the search, and not after it, to avoid strain on the main database and of course to get rid of the pesky timeout.

Error: There was an error processing your search. Please check your input and try again. (BookSearch: S)
[Timeout expired. The timeout period elapsed prior to completion of the operation or the server is not responding.]

Complete Thread

Profile Image
I am a huge fan of the my shelf only tick in the advanced book search - I often use it to:
* see if I still have a book
* how many books of a given author I have lying around
* see how many physical books I have "in common" with another site member

Sometimes, however, a query for a very generic title or author times out - this leads me to believe that my search goes through all the books in the bookcrossing database and not only mine - my shelf only has some 15 pages, it couldn't take that long .. could it?

If my assumption is right, I was wondering whether it would be possible that, when the "my shelf only" is ticked, queries be limited to own shelf before the search, and not after it, to avoid strain on the main database and of course to get rid of the pesky timeout.

Error: There was an error processing your search. Please check your input and try again. (BookSearch: S)
[Timeout expired. The timeout period elapsed prior to completion of the operation or the server is not responding.]
Profile Image
I'm not sure how the code's written, but I have a sizable bookshelf and I seldom have a problem with the "search on my own shelf" feature, which I use often.

Have you tried comparing the results of using the "my shelf" checkbox vs. putting your own screen name into the "member" box? I wouldn't think those would use different code paths, but it's worth trying - unless you combine the "my shelf" checkbox with somebody else's screen name to see how many books you have in common (another sometimes-useful feature).

One thing I have noticed: sometimes I'll click the "my shelf" checkbox only to have the search come back with all copies of [search terms], and the checkbox showing as not checked. I'm always sure I actually did click it, and I don't know if there's a timing problem or a my-keyboard-is-stickier-than-I-thought-it-was problem or something else... This doesn't happen often, but if you're searching for titles that have many thousands of BC records, and if your search has dropped the "my shelf" parameter somehow, that could result in a timeout error.

Or it could be one of those frustrating, hard-to-reproduce things... If you have a specific search that consistently seems to fail, you could post the URL in a reply to this thread; maybe something in the parameters would indicate a cause ore a possible workaround.
Profile Image
The search query containing my username is very fast and yields the correct results, even for very common strings (I searched for titles containing "a").

Same search, with no username filled in, and the checked "my shelf only" has the following request, which times out:
http://www.bookcrossing.com/searchbooks?...

Take a look at this:
&myShelfOnly=true&myShelfOnly=false
which basically means .. everything :D
.. or nothing?
Profile Image
Interesting! I have no idea why the string wound up with two "myShelfOnly" values, and yes, having them be opposites looks like it would break the search, though I suppose the parser could default to either the first value or the second - either way it seems odd. I checked some searches of my own and saw the same thing, even on searches that worked properly, so... puzzled.

Another factor: I hadn't realized your search terms were so broad. The letter "a" is pretty minimal. When I tried doing a similar search on my own shelf it timed out in the way you describe; likewise with one-common-word searches like "stories". Using my-shelf-only with a less common word, say "zombies" {wry grin}, did work properly. But I found that the common-word search, using my member name instead of the "my shelf" checkbox, *did* work, so it seems the searches are optimized differently.

There is another option for finding things on your own shelf, especially if you want to limit the search to books you have in hand: view your bookshelf and tweak the display options to "in hand", with whatever sort order is most convenient. If the results run to more than one screen, you can use the "print" option to bring up a single flat-text web page showing all the books, and you can then use the browser's find-on-this-page function to look for specific words/letters. Not the same thing as the advanced-search feature, but for some purposes - such as browsing my books-in-hand for release-challenge keywords - I find it handy.

Are you sure you want to delete this item? It cannot be undone.