Re: Cleaning up array_in()

From: jian he <jian(dot)universality(at)gmail(dot)com>
To: Heikki Linnakangas <hlinnaka(at)iki(dot)fi>
Cc: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>, Nikhil Benesch <nikhil(dot)benesch(at)gmail(dot)com>, Alexander Lakhin <exclusion(at)gmail(dot)com>, Nathan Bossart <nathandbossart(at)gmail(dot)com>, pgsql-hackers(at)lists(dot)postgresql(dot)org
Subject: Re: Cleaning up array_in()
Date: 2023-09-04 00:00:00
Message-ID: CACJufxETWvc5_5ppi-9KHmvAWnb3x1WwpnWpqgUw2MeoB6J-DQ@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

hi.
attached v4.
v4, 0001 to 0005 is the same as v3 in
https://www.postgresql.org/message-id/5859ce4e-2be4-92b0-c85c-e1e24eab57c6%40iki.fi

v4-0006 doing some modifications to address the corner case mentioned
in the previous thread (like select '{{1,},{1},}'::text[]).
also fixed all these FIXME, Heikki mentioned in the code.

v4-0007 refactor ReadDimensionInt. to make the array dimension bound
variables within the INT_MIN and INT_MAX. so it will make select
'[21474836488:21474836489]={1,2}'::int[]; fail.

Attachment Content-Type Size
v4-0006-refactor-to-make-corner-case-1-int-fail.patch text/x-patch 6.6 KB
v4-0007-refactor-ReadDimensionInt.patch text/x-patch 2.2 KB
v4-0004-Extract-loop-to-read-array-dimensions-to-subrouti.patch text/x-patch 8.2 KB
v4-0005-Determine-array-dimensions-and-parse-the-elements.patch text/x-patch 38.3 KB
v4-0003-Re-indent-ArrayCount.patch text/x-patch 10.7 KB
v4-0002-Rewrite-ArrayCount-to-make-dimensionality-checks-.patch text/x-patch 20.3 KB
v4-0001-Simplify-and-speed-up-ReadArrayStr.patch text/x-patch 8.1 KB

In response to

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Michael Paquier 2023-09-04 01:01:43 Re: Avoid a possible null pointer (src/backend/utils/adt/pg_locale.c)
Previous Message Melanie Plageman 2023-09-03 20:48:15 Re: Why doesn't Vacuum FULL update the VM