Re: Internal error codes triggered by tests

Alexander Lakhin <exclusion@gmail.com>

From: Alexander Lakhin <exclusion@gmail.com>
To: Michael Paquier <michael@paquier.xyz>, Robert Haas <robertmhaas@gmail.com>
Cc: Postgres hackers <pgsql-hackers@lists.postgresql.org>
Date: 2024-07-04T08:00:01Z
Lists: pgsql-hackers
Hello Michael,

04.07.2024 03:51, Michael Paquier wrote:
> On Sat, May 18, 2024 at 10:56:43AM +0900, Michael Paquier wrote:
>> Thanks.  I'll look again at that once v18 opens up for business.
> Looked at that again, and one in tablecmds.c is not needed anymore,
> and there was a conflict in be-secure-openssl.c.  Removed the first
> one, fixed the second one, then applied the patch after a second look.

Could you please share your thoughts regarding other error cases, which is
not triggered by existing tests, but still can be easily reached by users?

For example:
SELECT satisfies_hash_partition(1, 1, 0, 0);

ERROR:  XX000: could not open relation with OID 1
LOCATION:  relation_open, relation.c:61

or:
CREATE TABLE t (b bytea);
INSERT INTO t SELECT ''::bytea;
CREATE INDEX brinidx ON t USING brin
  (b bytea_bloom_ops(n_distinct_per_range = -1.0));

ERROR:  XX000: the bloom filter is too large (44629 > 8144)
LOCATION:  bloom_init, brin_bloom.c:344

Should such cases be corrected too?

Best regards,
Alexander



Commits

Same data as JSON: GET /api/v1/messages/:b64id/commits the thread's linked commits as JSON, with link sources. API reference →
  1. Add new error code for "file name too long"

  2. Assign error codes where missing for user-facing failures