[bug fix] PostgreSQL fails to start on Windows if it crashes after tablespace creation
Вложения
В списке pgsql-hackers по дате отправления:
| От | MauMau |
|---|---|
| Тема | [bug fix] PostgreSQL fails to start on Windows if it crashes after tablespace creation |
| Дата | |
| Msg-id | 0CAA393E7F0B4FF88848B6C96B89468E@maumau обсуждение |
| Ответы |
Re: [bug fix] PostgreSQL fails to start on Windows if it
crashes after tablespace creation
|
| Список | pgsql-hackers |
Hello, I've found and fixed a bug that causes recovery (crash recovery, PITR) to fail. Please find attached the patch against HEAD. [Bug] To reproduce the problem, do the following on Windows: 1. pg_ctl start 2. CREATE TABLESPACE tbs LOCATION 'some_tblspc_path'; 3. pg_ctl stop -mi 4. pg_ctl start The database server fails to start, leaving the below messages: LOG: database system was interrupted; last known up at 2013-10-31 20:24:07 JST LOG: database system was not properly shut down; automatic recovery in progress LOG: redo starts at 0/1788938 FATAL: could not remove symbolic link "pg_tblspc/16385": Permission denied CONTEXT: xlog redo create tablespace: 16385 "d:/tbs" LOG: startup process (PID 2724) exited with exit code 1 LOG: aborting startup due to startup process failure [Cause] In redo, create_tablespace_directories() tries to remove the symbolic link for the tablespace using unlink(). However, unlink() on Windows fails with errno=13 (Permission denied). This is because junction points are directories on Windows. [Fix] Follow destroy_tablespace_directories() and use rmdir() to remove the junction point. I've tested the patch. Could you review it and commit? I wish it to be backported to all major releases. Regards MauMau
В списке pgsql-hackers по дате отправления:
Сайт использует файлы cookie для корректной работы и повышения удобства. Нажимая кнопку «Принять» или продолжая пользоваться сайтом, вы соглашаетесь на их использование в соответствии с Политикой в отношении обработки cookie ООО «ППГ», в том числе на передачу данных из файлов cookie сторонним статистическим и рекламным службам. Вы можете управлять настройками cookie через параметры вашего браузера