Re: proposal: schema variables
От | Pavel Stehule |
---|---|
Тема | Re: proposal: schema variables |
Дата | |
Msg-id | CAFj8pRARuJrNxTDTQN_UmvM4OG7ser9v8+bx=K+P4YjeUZepZA@mail.gmail.com обсуждение исходный текст |
Ответ на | Re: proposal: schema variables (Pavel Stehule <pavel.stehule@gmail.com>) |
Список | pgsql-hackers |
st 13. 11. 2024 v 15:24 odesílatel Laurenz Albe <laurenz.albe@cybertec.at> napsal:
Thanks for the updated patch set.
Here is my review of patch 0005:
> --- a/src/backend/access/transam/xact.c
> +++ b/src/backend/access/transam/xact.c
> +#include "commands/session_variable.h"
You probably forgot to move that to the patch for temporary variables.
I did that.
+1
> --- a/src/backend/commands/session_variable.c
> +++ b/src/backend/commands/session_variable.c
> @@ -83,6 +92,19 @@ static HTAB *sessionvars = NULL; /* hash table for session variables */
>
> static MemoryContext SVariableMemoryContext = NULL;
>
> +/* true after accepted sinval message */
> +static bool needs_validation = false;
> +
> +/*
> + * The content of session variables is not removed immediately. When it
> + * is possible we do this at the transaction end. But when the transaction failed,
> + * we cannot do it, because we lost access to the system catalog. So we
> + * try to do it in the next transaction before any get or set of any session
> + * variable. We don't want to repeat this opening cleaning in transaction,
> + * So we store the id of the transaction where opening validation was done.
> + */
> +static LocalTransactionId validated_lxid = InvalidLocalTransactionId;
I have moved the reference to the transaction end to the temporary variable
patch.
+1
I have gone over the comments in patch 0005 and 0006.
I hope I got everything right. Attached is an updated patch set.
Thank you
Pavel
Yours,
Laurenz Albe
В списке pgsql-hackers по дате отправления: