Wired if-statement in gen_partprune_steps_internal

Поиск
Список
Период
Сортировка
От Andy Fan
Тема Wired if-statement in gen_partprune_steps_internal
Дата
Msg-id CAKU4AWqWoVii+bRTeBQmeVW+PznkdO8DfbwqNsu9Gj4ubt9A6w@mail.gmail.com
обсуждение исходный текст
Ответы Re: Wired if-statement in gen_partprune_steps_internal  (Amit Langote <amitlangote09@gmail.com>)
Список pgsql-hackers
Hi:

  I found the following code in gen_partprune_steps_internal,  which 
looks the if-statement to be always true since list_length(results) > 1;
I added an Assert(step_ids != NIL) and all the test cases passed. 
if the if-statement is always true,  shall we remove it to avoid confusion?


gen_partprune_steps_internal(GeneratePruningStepsContext *context,


        if (list_length(result) > 1)
        {
                List       *step_ids = NIL;

                foreach(lc, result)
                {
                        PartitionPruneStep *step = lfirst(lc);

                        step_ids = lappend_int(step_ids, step->step_id);
                }
                Assert(step_ids != NIL);  
                if (step_ids != NIL) // This should always be true. 
                {
                        PartitionPruneStep *step;

                        step = gen_prune_step_combine(context, step_ids,
                                                                                  PARTPRUNE_COMBINE_INTERSECT);
                        result = lappend(result, step);
                }
        }


--
Best Regards
Andy Fan

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

Предыдущее
От: "Andrey V. Lepikhov"
Дата:
Сообщение: Re: Asynchronous Append on postgres_fdw nodes.
Следующее
От: Amul Sul
Дата:
Сообщение: Re: [Patch] ALTER SYSTEM READ ONLY