On 2019-Apr-22, Andres Freund wrote: > On 2019-04-22 14:48:26 +0900, Michael Paquier wrote:
> > /* > > - * Check if's guaranteed the all the desired attributes are available in > > - * tuple. If so, we can start deforming. If not, need to make sure to > > - * fetch the missing columns. > > + * Check if all the desired attributes are available in the tuple. If > > so, > > + * we can start deforming. If not, we need to make sure to fetch the > > + * missing columns. > > */ > > That's imo not an improvement. The guaranteed bit is actually > relevant. What this block is doing is eliding the check against the > tuple header for the number of attributes, if NOT NULL attributes for > later columns guarantee that the desired columns are present in the NULL > bitmap. But the rephrasing makes it sound like we're actually checking > against the tuple. > > I think it'd be better just to fix s/the all/that all/. (and s/if's/if it's/) > > > if ((natts - 1) <= guaranteed_column_number) > > { > > @@ -383,7 +383,7 @@ slot_compile_deform(LLVMJitContext *context, TupleDesc > > desc, > > > > /* > > * If this is the first attribute, slot->tts_nvalid was 0. > > Therefore > > - * reset offset to 0 to, it be from a previous execution. > > + * reset offset to 0 too, as it may be from a previous > > execution. > > */ > > if (attnum == 0) > > { > > That obviously makes sense. Hmm, I think "as it *is*", not "as it *may be*", right? -- Álvaro Herrera https://www.2ndQuadrant.com/ PostgreSQL Development, 24x7 Support, Remote DBA, Training & Services