Received: from malur.postgresql.org ([2a02:16a8:dc51::56]) by arkaria.postgresql.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_CBC_SHA384:256) (Exim 4.89) (envelope-from ) id 1fsAtS-0007Gk-0g for pgsql-hackers@arkaria.postgresql.org; Tue, 21 Aug 2018 17:56:38 +0000 Received: from localhost ([127.0.0.1] helo=malur.postgresql.org) by malur.postgresql.org with esmtp (Exim 4.89) (envelope-from ) id 1fsAtQ-0000iF-JV for pgsql-hackers@arkaria.postgresql.org; Tue, 21 Aug 2018 17:56:36 +0000 Received: from magus.postgresql.org ([2a02:c0:301:0:ffff::29]) by malur.postgresql.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_CBC_SHA384:256) (Exim 4.89) (envelope-from ) id 1fsAtQ-0000i8-CG for pgsql-hackers@lists.postgresql.org; Tue, 21 Aug 2018 17:56:36 +0000 Received: from courriel.mines-paristech.fr ([77.158.173.149] helo=antispam-1.ensmp.fr) by magus.postgresql.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_CBC_SHA384:256) (Exim 4.89) (envelope-from ) id 1fsAtN-0005L4-PD for pgsql-hackers@lists.postgresql.org; Tue, 21 Aug 2018 17:56:35 +0000 Received: from smtp-5.mines-paristech.fr (smtp.mines-paristech.fr [77.158.173.146]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by antispam-1.ensmp.fr (antispam.mines-paristech.fr) with ESMTPS id 5ABED55FC3; Tue, 21 Aug 2018 19:56:32 +0200 (CEST) Received: from lancre.home (LFbn-1-3916-164.w86-233.abo.wanadoo.fr [86.233.166.164]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp-5.mines-paristech.fr (Postfix) with ESMTPSA id 27EB7201C6; Tue, 21 Aug 2018 19:56:32 +0200 (CEST) Date: Tue, 21 Aug 2018 19:55:57 +0200 (CEST) From: Fabien COELHO X-X-Sender: fabien@lancre To: Pavel Stehule cc: Gilles Darold , PostgreSQL Hackers Subject: Re: [HACKERS] proposal: schema variables In-Reply-To: Message-ID: References: <623395617.20171113141500@gf.microolap.com> <28924bcc-9242-9798-e4e8-9d83cea3fef6@dalibo.com> User-Agent: Alpine 2.21 (DEB 202 2017-01-01) MIME-Version: 1.0 Content-Type: text/plain; format=flowed; charset=US-ASCII X-CLAMAV-SCAN: ok X-VRSPAM-SCORE: -100 X-VRSPAM-STATE: legit X-VRSPAM-CAUSE: gggruggvucftvghtrhhoucdtuddrgedtjedrvdelgddutdejucetufdoteggodetrfcurfhrohhfihhlvgemucggtfgfnhhsuhgsshgtrhhisggvnecuuegrihhlohhuthemuceftddtnecusecvtfgvtghiphhivghnthhsucdlqddutddtmdenucfjughrpeffhffvufgjkfhffgggtgesthdtredttdervdenucfhrhhomhephfgrsghivghnucevqffgnffjqfcuoegtohgvlhhhohestghrihdrvghnshhmphdrfhhrqeenucfkphepkeeirddvfeefrdduieeirdduieegnecurfgrrhgrmhepmhhouggvpehsmhhtphhouhht X-VRSPAM-EXTCAUSE: mhhouggvpehsmhhtphhouhht List-Id: List-Help: List-Subscribe: List-Post: List-Owner: List-Archive: Precedence: bulk Hello Pavel, AFAICR, I had an objection on such new objects when you first proposed something similar in October 2016. Namely, if session variables are not transactional, they cannot be used to implement security related auditing features which were advertised as the motivating use case: an the audit check may fail on a commit because of a differed constraint, but the variable would keep its "okay" value unduly, which would create a latent security issue, the audit check having failed but the variable saying the opposite. So my point was that they should be transactional by default, although I would be ok with an option for having a voluntary non transactional version. Is this issue addressed somehow with this version? -- Fabien.