Push enable/disable of notify and catchup interrupts all the way down
Tom Lane <tgl@sss.pgh.pa.us>
Push enable/disable of notify and catchup interrupts all the way down to just around the bare recv() call that gets a command from the client. The former placement in PostgresMain was unsafe because the intermediate processing layers (especially SSL) use facilities such as malloc that are not necessarily re-entrant. Per report from counterstorm.com.
Files
| Path | Change | +/− |
|---|---|---|
| src/backend/libpq/be-secure.c | modified | +77 −3 |
| src/backend/tcop/postgres.c | modified | +62 −20 |
| src/include/tcop/tcopprot.h | modified | +3 −1 |