Re: Parallel CREATE INDEX for GIN indexes

Поиск
Список
Период
Сортировка
От Tom Lane
Тема Re: Parallel CREATE INDEX for GIN indexes
Дата
Msg-id 291432.1741538329@sss.pgh.pa.us
обсуждение исходный текст
Ответ на Re: Parallel CREATE INDEX for GIN indexes  (Tomas Vondra <tomas@vondra.me>)
Ответы Re: Parallel CREATE INDEX for GIN indexes
Список pgsql-hackers
Tomas Vondra <tomas@vondra.me> writes:
> I pushed the two smaller parts today.

Coverity is a little unhappy about this business in
_gin_begin_parallel:

    bool        leaderparticipates = true;
    ...
#ifdef DISABLE_LEADER_PARTICIPATION
    leaderparticipates = false;
#endif
    ...
    scantuplesortstates = leaderparticipates ? request + 1 : request;

It says

>>>     CID 1644203:  Possible Control flow issues  (DEADCODE)
>>>     Execution cannot reach the expression "request" inside this statement: "scantuplesortstates = (lead...".
924         scantuplesortstates = leaderparticipates ? request + 1 : request;

If this were just temporary code I'd let it pass, but I see nothing
replacing this logic in the follow-up patches, so I think we ought
to do something to shut it up.

It's not complaining about the later bits like

    if (leaderparticipates)
        ginleader->nparticipanttuplesorts++;

(perhaps because there's no dead code there?)  So one idea is

    scantuplesortstates = request;
    if (leaderparticipates)
        scantuplesortstates++;

which would look more like the other code anyway.

            regards, tom lane



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