Re: [HACKERS] [PATCH] Generic type subscripting

Pavel Stehule <pavel.stehule@gmail.com>

From: Pavel Stehule <pavel.stehule@gmail.com>
To: Dmitry Dolgov <9erthalion6@gmail.com>
Cc: Justin Pryzby <pryzby@telsasoft.com>, Tom Lane <tgl@sss.pgh.pa.us>, David Steele <david@pgmasters.net>, Nikita Glukhov <n.gluhov@postgrespro.ru>, Alvaro Herrera <alvherre@2ndquadrant.com>, David Fetter <david@fetter.org>, Thomas Munro <thomas.munro@gmail.com>, Thomas Munro <thomas.munro@enterprisedb.com>, Oleksandr Shulgin <oleksandr.shulgin@zalando.de>, Robert Haas <robertmhaas@gmail.com>, Andres Freund <andres@anarazel.de>, Michael Paquier <michael.paquier@gmail.com>, Oleg Bartunov <obartunov@gmail.com>, Peter Eisentraut <peter.eisentraut@2ndquadrant.com>, PostgreSQL Hackers <pgsql-hackers@postgresql.org>
Date: 2020-09-28T09:39:34Z
Lists: pgsql-hackers
po 28. 9. 2020 v 11:36 odesílatel Dmitry Dolgov <9erthalion6@gmail.com>
napsal:

> > On Fri, Sep 25, 2020 at 06:43:38PM +0200, Pavel Stehule wrote:
> >
> > I checked this set of patches and it looks well.
> >
> > I have only one minor comment. I understand the error message, but I am
> not
> > sure if without deeper knowledge I can understand.
> >
> > +update test_jsonb_subscript set test_json[-8] = 1;
> > +ERROR:  path element at position 1 is out of range: -8
> >
> > Maybe 'value of subscript "-8" is out of range'. Current error message is
> > fully correct - but people probably have to think "what is a path element
> > at position 1?" It doesn't look intuitive.
> >
> > Do you have some idea?
>
> Interesting question. I've borrowed this error message format from other
> parts of setPath function where it appears couple of times and
> unfortunately can't suggest anything better. In case it this patch will
> get lucky enough to attract someone else, maybe we can leave it to a
> committer, what do you think?
>

ok


> > My comment is minor, and I mark this patch with pleasure as ready for
> > committer.
> >
> > patching and compiling - without problems
> > implemented functionality - I like it
> > Building doc - without problems
> > make check-world - passed
>
> Thanks!
>

Commits

  1. Throw error when assigning jsonb scalar instead of a composite object

  2. Filling array gaps during jsonb subscripting

  3. Implementation of subscripting for jsonb

  4. Allow ALTER TYPE to update an existing type's typsubscript value.

  5. Allow subscripting of hstore values.

  6. Support subscripting of arbitrary types, not only arrays.

  7. jit: Reference function pointer types via llvmjit_types.c.

  8. Teach contain_leaked_vars that assignment SubscriptingRefs are leaky.

  9. jit: Correct parameter type for generated expression evaluation functions.

  10. Renaming for new subscripting mechanism

  11. Fix assertion failure for SSL connections.

  12. Teach eval_const_expressions() to handle some more cases.