Hi Floris:
On Thu, Jul 23, 2020 at 3:22 AM Floris Van Nee <[email protected]>
wrote:
> Hi Andy,
>
>
>
> A small thing I found:
>
>
>
> +static List *
>
> +get_exprs_from_uniqueindex(IndexOptInfo *unique_index,
>
> +
> List *const_exprs,
>
> +
> List *const_expr_opfamilies,
>
> +
> Bitmapset *used_varattrs,
>
> +
> bool *useful,
>
> +
> bool *multi_nullvals)
>
> …
>
> + indexpr_item = list_head(unique_index->indexprs);
>
> + for(c = 0; c < unique_index->ncolumns; c++)
>
> + {
>
>
>
> I believe the for loop must be over unique_index->nkeycolumns, rather than
> columns. It shouldn’t include the extra non-key columns. This can currently
> lead to invalid memory accesses as well a few lines later when it does an
> array access of unique_index->opfamily[c] – this array only has nkeycolumns
> entries.
>
You are correct, I would include this in the next version patch, Thank you
for this checking!
--
Andy Fan
Best Regards
>
>
>
>
> *From:* Andy Fan <[email protected]>
> *Sent:* Sunday 19 July 2020 5:03 AM
> *To:* Dmitry Dolgov <[email protected]>
> *Cc:* David Rowley <[email protected]>; PostgreSQL Hackers <
> [email protected]>; Tom Lane <[email protected]>;
> Ashutosh Bapat <[email protected]>; [email protected]
> *Subject:* Re: [PATCH] Keeps tracking the uniqueness with UniqueKey
> [External]
>
>
>
> Fixed a test case in v10.
>
>
>
> --
>
> Best Regards
>
> Andy Fan
>
--
Best Regards
Andy Fan