Received: from malur.postgresql.org ([217.196.149.56]) by arkaria.postgresql.org with esmtps (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1oGsue-0007hO-Oo for pgsql-hackers@arkaria.postgresql.org; Thu, 28 Jul 2022 02:06:08 +0000 Received: from localhost ([127.0.0.1] helo=malur.postgresql.org) by malur.postgresql.org with esmtp (Exim 4.92) (envelope-from ) id 1oGsud-0004TF-5D for pgsql-hackers@arkaria.postgresql.org; Thu, 28 Jul 2022 02:06:07 +0000 Received: from magus.postgresql.org ([2a02:c0:301:0:ffff::29]) by malur.postgresql.org with esmtps (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1oGsuc-0004T5-Gl for pgsql-hackers@lists.postgresql.org; Thu, 28 Jul 2022 02:06:06 +0000 Received: from anastigmatix.net ([68.171.219.55]) by magus.postgresql.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1oGsuY-0000KA-S0 for pgsql-hackers@postgresql.org; Thu, 28 Jul 2022 02:06:06 +0000 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=anastigmatix.net; s=default; h=Content-Transfer-Encoding:Content-Type: Message-ID:References:In-Reply-To:Subject:Cc:To:From:Date:MIME-Version:Sender :Reply-To:Content-ID:Content-Description:Resent-Date:Resent-From: Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID:List-Id:List-Help: List-Unsubscribe:List-Subscribe:List-Post:List-Owner:List-Archive; bh=A3amUgN4GwwCI0r4WBg/itUem0SXSlf9jTOFq0JUCcc=; b=M8fLxBsTp6iJu78ivRaYzEb/lW h08wxjgyGe8c0Dlp3Uw/TfaWy3IFB0l057EA77qoP6SweSJOvsu62GcqCyFBfUkr0KeqDF83SJDJ+ jrBa9FN+LE9Nra3ab8TTPrt6rAUOm3giK90fTzPb8qVmBoO1sIj4NLB++FsJAT2hg0MzEOt+FvgQY A7rNNVpRol5A9zToF+LxsZq1im0j2CvOyPmhAawBjGq1aleAKd15odG3Wg/67CWx2jMzM0xTkNy7b acD92lN+GGcVuX/8/J4cII682z6AEgdEtheHeBJb2gfEl+yeokraKupUP1u9Vlo4ICoeUIsACK8xP ptbddhBQ==; Received: from [::1] (port=46460 helo=bay.acenet.us) by bay.acenet.us with esmtpa (Exim 4.95) (envelope-from ) id 1oGsuU-006KDr-V1; Wed, 27 Jul 2022 22:05:59 -0400 MIME-Version: 1.0 Date: Wed, 27 Jul 2022 22:05:58 -0400 From: chap@anastigmatix.net To: Pavel Stehule Cc: Peter Eisentraut , PostgreSQL Hackers Subject: Re: Documentation about PL transforms In-Reply-To: References: <61FDBCFE.3090800@anastigmatix.net> <62017DB3.5020900@anastigmatix.net> <6213FFA0.1080202@anastigmatix.net> <6215246A.1000309@anastigmatix.net> <15aae6eba18b19579ce2568828c692bd@anastigmatix.net> User-Agent: Roundcube Webmail/1.5.2 Message-ID: X-Sender: chap@anastigmatix.net Content-Type: text/plain; charset=US-ASCII; format=flowed Content-Transfer-Encoding: 7bit X-AntiAbuse: This header was added to track abuse, please include it with any abuse report X-AntiAbuse: Primary Hostname - bay.acenet.us X-AntiAbuse: Original Domain - postgresql.org X-AntiAbuse: Originator/Caller UID/GID - [47 12] / [47 12] X-AntiAbuse: Sender Address Domain - anastigmatix.net X-Get-Message-Sender-Via: bay.acenet.us: authenticated_id: chap@anastigmatix.net X-Authenticated-Sender: bay.acenet.us: chap@anastigmatix.net X-Source: X-Source-Args: X-Source-Dir: X-From-Rewrite: unmodified, already matched List-Id: List-Help: List-Subscribe: List-Post: List-Owner: List-Archive: Archived-At: Precedence: bulk On 2022-07-13 00:26, Pavel Stehule wrote: > 1. I am not sure if get_call_trftypes is a good name - the prefix > get_call > is used when some runtime data is processed. I guess I hadn't caught on that the prefix carried that meaning. To me, it appeared to be a prefix used to avoid being specific to 'function' or 'procedure'. > This function just returns > reformatted data from the system catalogue. Maybe > get_func_trftypes_list, > or just replace function get_func_trftypes (now, the list is an array, > so > there should not be performance issues). For consistency, the new > function > should be used in plperl and plpython too. Probably this function is > not If it is acceptable to replace get_func_trftypes like that, I can produce such a patch. > 2. > > + It also contains the OID of the intended procedural language and > whether > + that procedural language is declared as > TRUSTED, > useful > + if a single inline handler is supporting more than one procedural > language. > > I am not sure if this sentence is in the correct place. Maybe can be > mentioned separately, > so generally handlers can be used by more than one procedural language. > But > maybe > I don't understand this sentence. My point was that, if the structure did /not/ include the OID of the PL and its TRUSTED property, then it would not be possible for a single inline handler to support more than one PL. So that is why it is a good thing that those are included in the structure, and why it would be a bad thing if they were not. Would it be clearer to say: It also contains the OID of the intended procedural language and whether that procedural language is declared as TRUSTED. While these values are redundant if the inline handler is serving only a single procedural language, they are necessary to allow one inline handler to serve more than one PL. Regards, -Chap