On Sun, 2023-04-02 at 14:35 -0700, Andres Freund wrote: > Why not offer a function to add a CV to a WES? It seems somehow odd > to require > going through condition_variable.c to create a WES.
I agree that it's a bit odd, but remember that after waiting on a CV's latch, it needs to re-insert itself into the CV's wait list. A WaitEventSetWait() can't do that, unless we move the details of re- adding to the wait list into latch.c. I considered that, but latch.c already implements the APIs for WaitEventSet and Latch, so it felt complex to also make it responsible for ConditionVariable. I'm open to suggestion. Regards, Jeff Davis