Details
Description
Very simply, if you call libcouchbase_wait() without queuing some operation first (e.g store a key/value, arithmetic, etc...)
the call to libcouchbase_wait() never returns.
This means that a single threaded application that calls libcouchbase_wait() at different times to make sure operations are sent to the server runs the risk of stalling indefinitely. This is a very likely scenario.
I've attached a simple proof of concept, which never completes. If you uncomment the store operation, the program completes successfully.
the call to libcouchbase_wait() never returns.
This means that a single threaded application that calls libcouchbase_wait() at different times to make sure operations are sent to the server runs the risk of stalling indefinitely. This is a very likely scenario.
I've attached a simple proof of concept, which never completes. If you uncomment the store operation, the program completes successfully.
Activity
Sergey Avseyev
made changes -
| Field | Original Value | New Value |
|---|---|---|
| Status | Open [ 1 ] | In Progress [ 3 ] |
Sergey Avseyev
made changes -
| Status | In Progress [ 3 ] | Resolved [ 5 ] |
| Resolution | Fixed [ 1 ] |
Sergey Avseyev
made changes -
| Status | Resolved [ 5 ] | Closed [ 6 ] |