If you continue to type after a failed search in the location bar (no results), the application will hang. It's not clear why this is doing this yet. I am a bit concerned that we may be trying to do some synchronous query that has to wait until the asynchronous one is completed. This needs investigation.
If somebody wants to jump in and help here - getting a profile of the main thread during the hang would be incredibly useful.
And if you do want to take me up on comment 1, sharkable builds can be found at http://ftp.mozilla.org/pub/mozilla.org/firefox/nightly/latest-places/
It would seem that the issue here is lock contention. The background thread in storage keeps grabbing the mutex for the database handle, and each call to executeAsync will need the lock as well. We can partially work around this to some degree, but for a real, good fix, we'd need to have SQLite architectural changes here. This does put bug 455555 at risk for making 3.6 I think.
Neglected to close this when dependent bugs were fixed.