резервный сбой при получении запроса INSERT/DELETE вместо сообщения об ошибке

Я пытаюсь настроить потоковую репликацию в postgresql-10.0. я столкнулся с этой проблемой.

Резервные серверы не должны получать какие-либо транзакционные запросы, если это произойдет, postgres выдаст следующую ошибку и не должен падать:

не может выполнить DELETE в транзакции только для чтения

Но я столкнулся со сбоем в режиме ожидания, когда я выдаю запрос DELETE. Логи сервера прикрепил

postgres=# delete from time;
2018-08-09 12:51:12.965 IST [5166] ERROR:  cannot execute DELETE in a read-only transaction
2018-08-09 12:51:12.965 IST [5166] STATEMENT:  delete from time;
2018-08-09 12:51:12.965 IST [5166] ERROR:  cannot make new WAL entries during recovery
2018-08-09 12:51:12.965 IST [5166] WARNING:  AbortTransaction while in ABORT state
2018-08-09 12:51:12.965 IST [5166] ERROR:  cannot make new WAL entries during recovery
2018-08-09 12:51:12.965 IST [5166] WARNING:  AbortTransaction while in ABORT state
2018-08-09 12:51:12.965 IST [5166] ERROR:  cannot make new WAL entries during recovery
WARNING:  AbortTransaction while in ABORT state
2018-08-09 12:51:12.965 IST [5166] WARNING:  AbortTransaction while in ABORT state
WARNING:  AbortTransaction while in ABORT state
WARNING:  AbortTransaction while in ABORT state
2018-08-09 12:51:12.965 IST [5166] ERROR:  cannot make new WAL entries during recovery
2018-08-09 12:51:12.965 IST [5166] PANIC:  ERRORDATA_STACK_SIZE exceeded

ERROR:  cannot execute DELETE in a read-only transaction
ERROR:  cannot make new WAL entries during recovery
ERROR:  cannot make new WAL entries during recovery
ERROR:  cannot make new WAL entries during recovery
ERROR:  cannot make new WAL entries during recovery
PANIC:  ERRORDATA_STACK_SIZE exceeded
server closed the connection unexpectedly
    This probably means the server terminated abnormally
    before or while processing the request.
The connection to the server was lost. Attempting reset: 2018-08-09 12:53:39.180 IST [98163] LOG:  server process (PID 5166) was terminated by signal 6: Abort trap

Я понятия не имею, почему в режиме ожидания происходит сбой. У кого-нибудь есть идеи?


person krithikaGopalakrisnan    schedule 09.08.2018    source источник


Ответы (1)


Если у вас нет повреждения данных, это должно быть ошибкой PostgreSQL.

Во-первых, немедленно обновитесь до 10.5.

Если ошибка сохраняется, создайте трассировку стека и сообщите о проблеме список рассылки хакеров или заполните форму ошибки.

person Laurenz Albe    schedule 09.08.2018
comment
пожалуйста, не могли бы вы взглянуть на этот вопрос stackoverflow.com/q/51758821/6633337 - person Ratan Uday Kumar; 09.08.2018
comment
@Laurenz Albe, я замечаю, что любой запрос, который приводит к ошибке, вызывает те же ошибки сегмента. например, я пытаюсь запросить таблицу, которая удалена, я получаю сообщение об ошибке, отношение xxxx не существует, а затем я получаю это. - person krithikaGopalakrisnan; 13.08.2018