Use appropriate wait event when sending data in the apply worker.
authorAmit Kapila <[email protected]>
Tue, 7 Feb 2023 04:28:19 +0000 (09:58 +0530)
committerAmit Kapila <[email protected]>
Tue, 7 Feb 2023 04:28:19 +0000 (09:58 +0530)
commitd9d7fe68d35e1e10c7c8276d07f5abf9c477cb13
tree45a577ac285d25cd18d993942bf562fbb2945f7b
parentcfcf56f92398c2827fcca9406e7c7ea6caab83c2
Use appropriate wait event when sending data in the apply worker.

Currently, we reuse WAIT_EVENT_LOGICAL_PARALLEL_APPLY_STATE_CHANGE in the
apply worker while sending data to the parallel apply worker via a shared
memory queue. This is not appropriate as one won't be able to distinguish
whether the worker is waiting for sending data or for the state change.

To patch instead uses the wait event WAIT_EVENT_MQ_SEND which has been
already used in blocking mode while sending data via a shared memory
queue.

Author: Hou Zhijie
Reviewed-by: Kuroda Hayato, Amit Kapila
Discussion: https://postgr.es/m/OS0PR01MB57161C680B22E4C591628EE994DA9@OS0PR01MB5716.jpnprd01.prod.outlook.com
src/backend/replication/logical/applyparallelworker.c