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 1oBKtq-0001SD-Tg for pgsql-docs@arkaria.postgresql.org; Tue, 12 Jul 2022 18:46:22 +0000 Received: from localhost ([127.0.0.1] helo=malur.postgresql.org) by malur.postgresql.org with esmtp (Exim 4.92) (envelope-from ) id 1oBKto-0003JJ-Jg for pgsql-docs@arkaria.postgresql.org; Tue, 12 Jul 2022 18:46:20 +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 1oBKto-0003JA-C8 for pgsql-docs@lists.postgresql.org; Tue, 12 Jul 2022 18:46:20 +0000 Received: from momjian.us ([72.94.173.45]) by magus.postgresql.org with esmtps (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1oBKtl-0003ut-N1; Tue, 12 Jul 2022 18:46:19 +0000 Received: from bruce by momjian.us with local (Exim 4.94.2) (envelope-from ) id 1oBKti-00HFbw-NZ; Tue, 12 Jul 2022 14:46:14 -0400 Date: Tue, 12 Jul 2022 14:46:14 -0400 From: Bruce Momjian To: Michael Meskes Cc: "ideriha.takeshi@fujitsu.com" , "'pgsql-docs@lists.postgresql.org'" Subject: Re: No documentation exists about ecpg ORACLE comptaible mode Message-ID: References: MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: List-Id: List-Help: List-Subscribe: List-Post: List-Owner: List-Archive: Archived-At: Precedence: bulk On Tue, Jul 12, 2022 at 10:20:08AM +0200, Michael Meskes wrote: > On Sat, Jul 09, 2022 at 09:15:52PM -0400, Bruce Momjian wrote: > > This is a very good point. I have studied the issue and created the > > attached patch to document Oracle-compatibility mode. > > ... > > Looks good to me. Thanks a bunch Bruce. Great, thanks. > I wonder if we should also mention somewhere that some other Oracle > compatibility features are enable in all modes, like a slightly different > CONNECT syntax. Good question. We support syntax from other databases, only sometimes with documentation. I think the rules we use are that we document compatibility-only behavior when it is useful and obviously if it is turned in by an option. In contrast, look at this from backend/parser/gram.y: /* INOUT is SQL99 standard, IN OUT is for Oracle compatibility */ arg_class: IN_P { $$ = FUNC_PARAM_IN; } | OUT_P { $$ = FUNC_PARAM_OUT; } | INOUT { $$ = FUNC_PARAM_INOUT; } | IN_P OUT_P { $$ = FUNC_PARAM_INOUT; } | VARIADIC { $$ = FUNC_PARAM_VARIADIC; } We don't document "IN OUT" anywhere, we just support it silently for Oracle compatibility, and I am guessing your ecpg connection syntax is similar. I think this is done so we don't confuse people with syntax that has not value unless they are coming from another database. Therefore, I don't think we should document it, but I would be interested to hear if anyone disagrees. -- Bruce Momjian https://momjian.us EDB https://enterprisedb.com Indecision is a decision. Inaction is an action. Mark Batterson