Re: [PATCH] Generic type subscription
Artur Zakirov <a.zakirov@postgrespro.ru>
From: Artur Zakirov <a.zakirov@postgrespro.ru>
To: Dmitry Dolgov <9erthalion6@gmail.com>
Cc: Artur Zakirov <a.zakirov@postgrespro.ru>, Aleksander Alekseev <a.alekseev@postgrespro.ru>, PostgreSQL-development <pgsql-hackers@postgresql.org>,
Victor Wagner <vitus@wagner.pp.ru>, Haribabu Kommi <kommi.haribabu@gmail.com>
Date: 2017-01-15T22:15:28Z
Lists: pgsql-hackers
> Yes, but it was related to the idea of having `ArrayRef` and `JsonbRef` nodes > for specific types. Since now there is generic `SubscriptingRef` node, I think > it should be ok. Sorry I misunderstood it. > Just to be clear - as far as I understood, these compilation problems were > caused not because the extension knew something about ArrayRef node in > particular, but because the extension tried to extract all nodes to generate > code from them. It means any change will require "refetching", so I think it's > natural for this extension. Agree. It will be hard to maintain both nodes. And it is not so smart to have two nodes ArrayRef (deprecated) and SubscriptingRef. It is not hard to replace ArrayRef node with SubscriptingRef in other extensions. There is a little note: > #include "utils/lsyscache.h" > +#include "utils/syscache.h" > #include "utils/memutils.h" I think "utils/syscache.h" isn't necessary here. PostgreSQL could be compiled without this include. I suppose that this patch can be marked as "Ready for commiter". Any opinions? -- Artur Zakirov Postgres Professional: http://www.postgrespro.com Russian Postgres Company
Commits
-
Throw error when assigning jsonb scalar instead of a composite object
- aa6e46daf530 14.0 landed
-
Filling array gaps during jsonb subscripting
- 81fcc72e6622 14.0 landed
-
Implementation of subscripting for jsonb
- 676887a3b0b8 14.0 landed
-
Support subscripting of arbitrary types, not only arrays.
- c7aba7c14efd 14.0 landed
-
Remove obsoleted code relating to targetlist SRF evaluation.
- ea15e18677fc 10.0 cited
-
Include <sys/select.h> where needed
- 51c3e9fade76 10.0 cited