The documentation for stale=ok describes the following semantics: The stale option can be used for higher performance ... Using this option essentially tells CouchDB that if a reference to the view index is available in memory, go ahead and use it, even if it may be out of date. ...if there is no view index pointer in memory, the behavior with this option is that same as the behavior without the option...
For views of large data sets with frequent updates, it is highly likely that a random key or range query will fail to find its data in memory, so the query will block until the view has been updated. In fact, multiple concurrent requests will all block until the update has completed, which is an issue for scalability. It seems like there should be an option to immediately return the view query results based on the latest available snapshot of the view index, regardless of whether it is in memory or on disk. Is this something that's easy to implement? Curtis
