Re: SYSTEM_USER reserved word implementation
От | Drouvot, Bertrand |
---|---|
Тема | Re: SYSTEM_USER reserved word implementation |
Дата | |
Msg-id | e7972fb0-2a29-45d6-b036-52f96b93afe9@gmail.com обсуждение исходный текст |
Ответ на | Re: SYSTEM_USER reserved word implementation (Michael Paquier <michael@paquier.xyz>) |
Ответы |
Re: SYSTEM_USER reserved word implementation
|
Список | pgsql-hackers |
Hi, On 9/8/22 3:17 AM, Michael Paquier wrote: > On Wed, Sep 07, 2022 at 08:48:43AM -0700, Jacob Champion wrote: > >> We could pass the bare auth_method index, or update the documentation >> for auth_method to state that it's guaranteed to be zero if authn_id is >> NULL (and then enforce that). >> >>> case SVFOP_CURRENT_USER: >>> case SVFOP_USER: >>> case SVFOP_SESSION_USER: >>> + case SVFOP_SYSTEM_USER: >>> case SVFOP_CURRENT_CATALOG: >>> case SVFOP_CURRENT_SCHEMA: >>> svf->type = NAMEOID; >> >> Should this be moved to use TEXTOID instead? > > Yeah, it should. There is actually a second and much deeper issue > here, in the shape of a collation problem. See the assertion failure > in exprSetCollation(), because we expect SQLValueFunction nodes to > return a name or a non-collatable type. However, for this case, we'd > require a text to get rid of the 63-character limit, and that's > a collatable type. This reminds me of the recent thread to work on > getting rid of this limit for the name type.. Please find attached V4 taking care of Jacob's previous comments. As far the assertion failure mentioned by Michael when moving the SVFOP_SYSTEM_USER from NAMEOID to TEXTOID: V4 is assuming that it is safe to force the collation to C_COLLATION_OID for SQLValueFunction having a TEXT type, but I would be happy to also hear your thoughts about it. Regards, -- Bertrand Drouvot PostgreSQL Contributors Team RDS Open Source Databases Amazon Web Services: https://aws.amazon.com
Вложения
В списке pgsql-hackers по дате отправления: