Re: 9.0beta2 - server crash when using HS + SR

Поиск
Список
Период
Сортировка
От Bruce Momjian
Тема Re: 9.0beta2 - server crash when using HS + SR
Дата
Msg-id 201006302341.o5UNfrp07888@momjian.us
обсуждение исходный текст
Ответ на Re: 9.0beta2 - server crash when using HS + SR  (Tom Lane <tgl@sss.pgh.pa.us>)
Ответы Re: 9.0beta2 - server crash when using HS + SR  (Bruce Momjian <bruce@momjian.us>)
Список pgsql-hackers
Tom Lane wrote:
> Bruce Momjian <bruce@momjian.us> writes:
> > The attached patch shows the hint only during recovery.
>
> BTW, it would be easier and more consistent with the rest of the code to
> look at InRecovery, instead of messing around with the function
> signature.  And the usual way to emit a hint conditionally is
>
>     (InRecovery ? errhint(...) : 0)
>
> rather than duplicate a lot of surrounding code.

Thanks for the "hints".   I was thinking there was a way to use ? : for
the hint, but couldn't find an example.  I see examples now.  Updated
patch attached.

--
  Bruce Momjian  <bruce@momjian.us>        http://momjian.us
  EnterpriseDB                             http://enterprisedb.com

  + None of us is going to be here forever. +
Index: src/backend/commands/tablespace.c
===================================================================
RCS file: /cvsroot/pgsql/src/backend/commands/tablespace.c,v
retrieving revision 1.74
diff -c -c -r1.74 tablespace.c
*** src/backend/commands/tablespace.c    26 Feb 2010 02:00:39 -0000    1.74
--- src/backend/commands/tablespace.c    30 Jun 2010 22:45:21 -0000
***************
*** 552,559 ****
          if (errno == ENOENT)
              ereport(ERROR,
                      (errcode(ERRCODE_UNDEFINED_FILE),
!                      errmsg("directory \"%s\" does not exist",
!                             location)));
          else
              ereport(ERROR,
                      (errcode_for_file_access(),
--- 552,560 ----
          if (errno == ENOENT)
              ereport(ERROR,
                      (errcode(ERRCODE_UNDEFINED_FILE),
!                      errmsg("directory \"%s\" does not exist", location),
!                      InRecovery ? errhint("Create directory \"%s\" for this tablespace before "
!                              "restarting the server.", location) : 0));
          else
              ereport(ERROR,
                      (errcode_for_file_access(),

В списке pgsql-hackers по дате отправления:

Предыдущее
От: Tom Lane
Дата:
Сообщение: Re: Keeping separate WAL segments for each database
Следующее
От: Tom Lane
Дата:
Сообщение: Re: Check constraints on non-immutable keys