Ошибка:Невозможно выполнить SQL запрос потоковой настройки репликации мастер-сервера Postgresql 9,5
postgres=# insert into company values(4,'tom',21,'pune' ,21);
^CCancel request sent
WARNING: canceling wait for synchronous replication due to user request
DETAIL: The transaction has already committed locally, but might not have been replicated to the standby.
INSERT 0 1
Даже после ошибки он выполняет запрос на мастера, а также тиражирование транзакций, рабыню.
На Master:
postgres=# SELECT pg_current_xlog_location();
pg_current_xlog_location
--------------------------
0/1900D0C0
(1 row)
На Ведомый:
postgres=# SELECT pg_last_xlog_receive_location();
pg_last_xlog_receive_location
-------------------------------
0/1900D0C0
(1 row)
synchronous_standby_name установлен на мастера из конфигурационного файла (устанавливается мной) отличается от имя_приложения я вижу его на запись pg_stats_replication таблицы. Многие из решений предложили изменить название приложения. Тем не менее, я не уверен, откуда он принимает имя приложения как walreceiver на хозяине.
На Master:
postgres=# select application_name, sync_state from pg_stat_replication;
application_name | sync_state
------------------+------------
walreceiver | async
(1 row)
postgres=# show synchronous_standby_names;
synchronous_standby_names
---------------------------
slave1
(1 row)
postgres=# show synchronous_commit;
synchronous_commit
--------------------
on
(1 row)
Один из решения я нашел, чтобы создать табличный реж под путем «/var/lib/pgsql/9.2/data/», который я в настоящее время не имею. Я не уверен, что это решение будет работать для 9.5 Postgresql.
Любая помощь на это оценивается. Спасибо.