diff options
| author | Robert Haas | 2022-05-24 14:55:01 +0000 |
|---|---|---|
| committer | Robert Haas | 2022-05-31 12:46:54 +0000 |
| commit | f5bfba5413f51b4fa0a7b0dc879d39ae6881d8be (patch) | |
| tree | 5a0c0d269117effd3dbb178055af372867a127bd /src/include | |
| parent | 0a050ee000b6783ac4b78e9eadb47a4e72912672 (diff) | |
shm_mq_sendv: Fix flushing bug when receiver not yet attached.
With the old logic, when the reciever had not yet attached, we would
never call shm_mq_inc_bytes_written(), even if force_flush = true
was specified. That could result in a situation where data that the
sender believes it has sent is never received.
Along the way, remove a useless function prototype for a nonexistent
function from shm_mq.h.
Commit 46846433a03dff4f2e08c8a161e54a842da360d6 introduced these
problems.
Pavan Deolasee, with a few changes by me.
Discussion: https://postgr.es/m/CABOikdPkwtLLCTnzzmpSMXo3QZa2yXq0J7Q61ssdLFAJYrOVvQ@mail.gmail.com
Diffstat (limited to 'src/include')
| -rw-r--r-- | src/include/storage/shm_mq.h | 1 |
1 files changed, 0 insertions, 1 deletions
diff --git a/src/include/storage/shm_mq.h b/src/include/storage/shm_mq.h index f5220baa781..b6fe68725d2 100644 --- a/src/include/storage/shm_mq.h +++ b/src/include/storage/shm_mq.h @@ -76,7 +76,6 @@ extern shm_mq_result shm_mq_sendv(shm_mq_handle *mqh, shm_mq_iovec *iov, int iovcnt, bool nowait, bool force_flush); extern shm_mq_result shm_mq_receive(shm_mq_handle *mqh, Size *nbytesp, void **datap, bool nowait); -extern void shm_mq_flush(shm_mq_handle *mqh); /* Wait for our counterparty to attach to the queue. */ extern shm_mq_result shm_mq_wait_for_attach(shm_mq_handle *mqh); |
