Я так понимаю при таком раскалде синхронная реплика ведет себя также как и асинхронная?
https://postgrespro.ru/docs/postgrespro/13/runtime-config-wal synchronous_commit (enum) Определяет, после завершения какого уровня обработки WAL сервер будет сообщать об успешном выполнении операции. Допустимые значения: remote_apply (применено удалённо), on (вкл., по умолчанию), remote_write (записано удалённо), local (локально) и off (выкл.). Если значение synchronous_standby_names не задано, для данного параметра имеют смысл только значения on и off; с вариантами remote_apply, remote_write и local будет выбран тот же уровень синхронизации, что и с on. Локальное действие всех отличных от off режимов заключается в ожидании локального сброса WAL на диск. В режиме off ожидание отсутствует, поэтому может образоваться окно от момента, когда клиент узнаёт об успешном завершении, до момента, когда транзакция действительно гарантированно защищена от сбоя.
я читал доку, вопрос остается в силе, есть смысл указывать синхронную реплику и off режим?
off режим - вообще не очень хорошо и да , смысла от synchronous_standby_names не будет никакого, ведь сервер абсолютно ничего не ждет, принял строку, где-то в памяти записал, и ответил что все ок записалось ли на диск, ушло ли на реплики, ему уже абсолютно не важно но это чисто мое мнение, тут есть Зубры и поопытнее, может они могут еще что-то добавить но на первый взгляд тут все очевидно
ну вот я тоже так думаю, кроме того что еще можно менять off в рамках транзакции.
Обсуждают сегодня