Re: WIP: WAL prefetch (another approach)

Поиск
Список
Период
Сортировка
От Alvaro Herrera
Тема Re: WIP: WAL prefetch (another approach)
Дата
Msg-id 20200528211425.GA5942@alvherre.pgsql
обсуждение исходный текст
Ответ на Re: WIP: WAL prefetch (another approach)  (Thomas Munro <thomas.munro@gmail.com>)
Список pgsql-hackers
Thomas Munro escribió:

> @@ -1094,8 +1103,16 @@ WALRead(XLogReaderState *state,
>              XLByteToSeg(recptr, nextSegNo, state->segcxt.ws_segsize);
>              state->routine.segment_open(state, nextSegNo, &tli);
>  
> -            /* This shouldn't happen -- indicates a bug in segment_open */
> -            Assert(state->seg.ws_file >= 0);
> +            /* callback reported that there was no such file */
> +            if (state->seg.ws_file < 0)
> +            {
> +                errinfo->wre_errno = errno;
> +                errinfo->wre_req = 0;
> +                errinfo->wre_read = 0;
> +                errinfo->wre_off = startoff;
> +                errinfo->wre_seg = state->seg;
> +                return false;
> +            }

Ah, this is what Michael was saying ... we need to fix WALRead so that
it doesn't depend on segment_open alway returning a good FD.  This needs
a fix everywhere, not just here, and improve the error report interface.

Maybe it does make sense to get it fixed in pg13 and avoid a break
later.

-- 
Álvaro Herrera                https://www.2ndQuadrant.com/
PostgreSQL Development, 24x7 Support, Remote DBA, Training & Services



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

Предыдущее
От: Alexander Korotkov
Дата:
Сообщение: Re: Operator class parameters and sgml docs
Следующее
От: Markus Winand
Дата:
Сообщение: Conflict of implicit collations doesn't propagate out of subqueries