Обсуждение: pgsql: Reset the logical worker type while cleaning up other worker inf

Поиск
Список
Период
Сортировка

pgsql: Reset the logical worker type while cleaning up other worker inf

От
Amit Kapila
Дата:
Reset the logical worker type while cleaning up other worker info.

Commit 2a8b40e36 introduces the worker type field for logical replication
workers, but forgot to reset the type when the worker exits. This can lead
to recognizing a stopped worker as a valid logical replication worker.

Fix it by resetting the worker type and additionally adding the safeguard
to not use LogicalRepWorker until ->in_use is verified.

Reported-by: Thomas Munro based on cfbot reports.
Author: Hou Zhijie, Alvaro Herrera
Reviewed-by: Amit Kapila
Discussion: http://postgr.es/m/CA+hUKGK2RQh4LifVgBmkHsCYChP-65UwGXOmnCzYVa5aAt4GWg@mail.gmail.com

Branch
------
master

Details
-------
https://git.postgresql.org/pg/commitdiff/9c13b6814ac7943036c64b377675184b243f04e8

Modified Files
--------------
src/backend/replication/logical/launcher.c | 5 +++--
src/include/replication/worker_internal.h  | 8 ++++++--
2 files changed, 9 insertions(+), 4 deletions(-)