Hi Floris: On Thu, Jul 23, 2020 at 3:22 AM Floris Van Nee <florisvan...@optiver.com> 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 <zhihui.fan1...@gmail.com> > *Sent:* Sunday 19 July 2020 5:03 AM > *To:* Dmitry Dolgov <9erthali...@gmail.com> > *Cc:* David Rowley <dgrowle...@gmail.com>; PostgreSQL Hackers < > pgsql-hackers@lists.postgresql.org>; Tom Lane <t...@sss.pgh.pa.us>; > Ashutosh Bapat <ashutosh.bapat....@gmail.com>; rushabh.lat...@gmail.com > *Subject:* Re: [PATCH] Keeps tracking the uniqueness with UniqueKey > [External] > > > > Fixed a test case in v10. > > > > -- > > Best Regards > > Andy Fan > -- Best Regards Andy Fan