In SQLite’s WAL mode, which we use, reads are always possible while another connection is writing to the database.
Concurrent writes are blocked, but only for as long as the other connection is in a write transaction, which should be a very short time. The thread attempting to write will retry for several seconds (I don’t remember the exact number) before giving up.
How long is the affected thread blocking before it throws the exception?
It’s best if you file a bug report against couchbase-lite-core. Please include logs, and identify what version/platform of CBL, and what OS.
(Unless you’re a Couchbase customer, in which case you should file a support request.)