We'll introduce a new ->ipc_async internal API and use it for
->ipc_do calls where the return value is ignored. This new
API is modeled after our async API for accessing
`git cat-file --batch*' and remains compatible with synchronous
callers who want the return value of ->ipc_do.
Processes no longer spin and burn CPU after hitting ENOSPC or
dealing with database or FS corruption. Instead, they should
now die properly in most cases. However, hangs and crashes may
still possible since Xapian may abort(3) in some ENOSPC cases
and SQLite's may trigger SIGBUS via mmap(2) (if using WAL or
forcing mmap use).