>> Yep, the variable value must be rolled back, I think.
>
> Attention! rollback is significantly expensive than RESET.
I'm quite unclear about the difference... Transactional for an unshared
only-in-memory session object is probably easy to implement, no WAL is
needed... So I do not see the difference.
> There are no any product where variables are transactional - we should not
> to create wheel.
Well, AFAICS PostgreSQL GUCs are transactional.
--
Fabien.