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 1lbfga-00010E-KZ for pgsql-hackers@arkaria.postgresql.org; Wed, 28 Apr 2021 08:36:44 +0000 Received: from localhost ([127.0.0.1] helo=malur.postgresql.org) by malur.postgresql.org with esmtp (Exim 4.92) (envelope-from ) id 1lbfgY-0006BL-Fx for pgsql-hackers@arkaria.postgresql.org; Wed, 28 Apr 2021 08:36:42 +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 1lbfgY-0006BE-58 for pgsql-hackers@lists.postgresql.org; Wed, 28 Apr 2021 08:36:42 +0000 Received: from mail-pl1-x62d.google.com ([2607:f8b0:4864:20::62d]) by magus.postgresql.org with esmtps (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92) (envelope-from ) id 1lbfgV-0002Au-Tt for pgsql-hackers@lists.postgresql.org; Wed, 28 Apr 2021 08:36:41 +0000 Received: by mail-pl1-x62d.google.com with SMTP id 20so28457864pll.7 for ; Wed, 28 Apr 2021 01:36:39 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=date:message-id:to:subject:from:user-agent:mime-version :content-transfer-encoding; bh=nnHm4BL6XkOegAo5nWAjEZsAhuukJQqm/7zgn1AxpRw=; b=ZbJnlrTIUMuy+KK6knCcDuLorMx/TwEb494gPJx7DxZSgAjuojfk2vZ6tQkAH5YtgM nmzM5+38TZWPj3P00b0kqKLcB7YlMao/aTnW1LjiAtzYe2+IYEQcknpoGnQvQ/bFB7dQ Zg4hKU8qG/m4ip3pchlRPHu4vsA29A7WOVFgonFqNePW18XmIy3t2UwQxjQOsY6MyCGB hz+MZSnKPZYS3AEhJnQdhXTWL8kG79SkcMM3+BcB9XABMuQCTovMi6eLjJyullRNTxv7 pYkywHWA2V1dg3crlekAX//6SnaE/2tzRCtIBtpiBnj/1QRpt4EnDAKX0vI/FZt3wyGL Db9g== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:date:message-id:to:subject:from:user-agent :mime-version:content-transfer-encoding; bh=nnHm4BL6XkOegAo5nWAjEZsAhuukJQqm/7zgn1AxpRw=; b=E0zGiF1+PpIw0BbOcPwQqai7lhthIVh/D5+EqzxbCzDyFbNua5my2jocj3hTCheAFn PNNz0RccNzECOTq4zq1c4Leku6WRj2JzlQ5gsUIsoD60DIubv2adwZHTY+LnapBRzYDi fnNr2fO6aotzMfc/PlO+xRtTBQLujkVl5XNhNgAOY68xEQipbpWvvZDZr1med5W4gmoq f5AJ5hV8I60AOylVtG2EJSslCqBPeVrH1dv6hwjrXZvSWhiE4QIiuW4ot3Q7UiMHmWm3 TIwh1WTUDydEAqxtYcRs3RQVknuHAnUXgwuvNhqDkLzlFmiYtciV2BWB1eCmqYLHNv5U 0/kA== X-Gm-Message-State: AOAM530RUHwtwV8QK14AYMOa/LCrszvzbHltZq1ZJzeRInSsvIZ4OoxD DCn17p3dEwKUztfizo/+VmjxvbML2a0= X-Google-Smtp-Source: ABdhPJxk5w3ZmJvDIM3kUR3oh5b+ydBxtb4BDMkf/SCxgZccsjRlqcVDEqm0OHGJfZ+KgTBZO2pr8g== X-Received: by 2002:a17:90a:a00e:: with SMTP id q14mr2909069pjp.70.1619598997129; Wed, 28 Apr 2021 01:36:37 -0700 (PDT) Received: from localhost (KD036014041111.ppp-bb.dion.ne.jp. [36.14.41.111]) by smtp.gmail.com with ESMTPSA id jv12sm4390424pjb.56.2021.04.28.01.36.35 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256); Wed, 28 Apr 2021 01:36:36 -0700 (PDT) Date: Wed, 28 Apr 2021 17:36:33 +0900 (JST) Message-Id: <20210428.173633.1525059946206239295.horikyota.ntt@gmail.com> To: pgsql-hackers@lists.postgresql.org Subject: Some doubious error messages and comments From: Kyotaro Horiguchi User-Agent: Mew version 6.8 on Emacs 26.1 Mime-Version: 1.0 Content-Type: Multipart/Mixed; boundary="--Next_Part(Wed_Apr_28_17_36_33_2021_627)--" Content-Transfer-Encoding: 7bit List-Id: List-Help: List-Subscribe: List-Post: List-Owner: List-Archive: Archived-At: Precedence: bulk ----Next_Part(Wed_Apr_28_17_36_33_2021_627)-- Content-Type: Text/Plain; charset=us-ascii Content-Transfer-Encoding: 7bit Hello. 0001: I found some typos in a error message and a comment. multirangetypes.c: 1420 > errmsg("range_intersect_agg must be called with a multirange"))); This "range_intersect_agg" looks like a typo of "multirange_..". operatorcmds.c:303 > * Look up a join estimator function ny name, and verify that it has the "ny" looks like a typo of "by". 0002: The following messages are substantially same and are uselessly split into separate messages. I'm not sure any compiler complains about using %zu for int, explicit casting would work in that case. be-secure-gssapi.c:351 > (errmsg("oversize GSSAPI packet sent by the client (%zu > %zu)", > (size_t) input.length, > PQ_GSS_RECV_BUFFER_SIZE - sizeof(uint32)))); be-secure-gssapi.c:570 > (errmsg("oversize GSSAPI packet sent by the client (%zu > %d)", > (size_t) input.length, > PQ_GSS_RECV_BUFFER_SIZE))); 0003: The messages below seems to be a bit unclear. I'm not sure they worth doing. conversioncmds.c: 130 errmsg("encoding conversion function %s returned incorrect result for empty input", This is not wrong at all, but another message just above is saying that "encoding conversion function %s must return type %s". Why aren't we explicit here, like this? "encoding conversion function %s must return zero for empty input" typecmds.c:4294 > if (requireSuper) > if (!superuser()) > ereport(ERROR, > errmsg("must be superuser to alter a type"))); Where, requireSuper varies depending on the set of operations but the description looks like describing general behavior. I'm not sure but something like the following might be better? + errmsg("must be superuser to perform all operations"))); + errmsg("some of the operations require superuser privilege"))); Any opinions or suggestions? regards. -- Kyotaro Horiguchi NTT Open Source Software Center ----Next_Part(Wed_Apr_28_17_36_33_2021_627)-- Content-Type: Text/X-Patch; charset=us-ascii Content-Transfer-Encoding: 7bit Content-Disposition: inline; filename="0001-Fix-typos.patch" From 1634d8dd87b1474f60cfd6689c1e58acc87c1cfc Mon Sep 17 00:00:00 2001 From: Kyotaro Horiguchi Date: Wed, 28 Apr 2021 17:23:52 +0900 Subject: [PATCH 1/3] Fix typos --- src/backend/commands/operatorcmds.c | 2 +- src/backend/utils/adt/multirangetypes.c | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/src/backend/commands/operatorcmds.c b/src/backend/commands/operatorcmds.c index 809043c5d1..ba456c4dd1 100644 --- a/src/backend/commands/operatorcmds.c +++ b/src/backend/commands/operatorcmds.c @@ -300,7 +300,7 @@ ValidateRestrictionEstimator(List *restrictionName) } /* - * Look up a join estimator function ny name, and verify that it has the + * Look up a join estimator function by name, and verify that it has the * correct signature and we have the permissions to attach it to an * operator. */ diff --git a/src/backend/utils/adt/multirangetypes.c b/src/backend/utils/adt/multirangetypes.c index 0b81649779..2583ddeedf 100644 --- a/src/backend/utils/adt/multirangetypes.c +++ b/src/backend/utils/adt/multirangetypes.c @@ -1417,7 +1417,7 @@ multirange_intersect_agg_transfn(PG_FUNCTION_ARGS) if (!type_is_multirange(mltrngtypoid)) ereport(ERROR, (errcode(ERRCODE_DATATYPE_MISMATCH), - errmsg("range_intersect_agg must be called with a multirange"))); + errmsg("multirange_intersect_agg must be called with a multirange"))); typcache = multirange_get_typcache(fcinfo, mltrngtypoid); -- 2.27.0 ----Next_Part(Wed_Apr_28_17_36_33_2021_627)-- Content-Type: Text/X-Patch; charset=us-ascii Content-Transfer-Encoding: 7bit Content-Disposition: inline; filename="0002-Consolidate-substantially-same-messages.patch" From 14a6b4b81d3b4d35bf690e1c240975bd888531f3 Mon Sep 17 00:00:00 2001 From: Kyotaro Horiguchi Date: Wed, 28 Apr 2021 17:24:31 +0900 Subject: [PATCH 2/3] Consolidate substantially same messages --- src/backend/libpq/be-secure-gssapi.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/backend/libpq/be-secure-gssapi.c b/src/backend/libpq/be-secure-gssapi.c index 316ca65db5..a335f78d47 100644 --- a/src/backend/libpq/be-secure-gssapi.c +++ b/src/backend/libpq/be-secure-gssapi.c @@ -567,9 +567,9 @@ secure_open_gssapi(Port *port) if (input.length > PQ_GSS_RECV_BUFFER_SIZE) { ereport(COMMERROR, - (errmsg("oversize GSSAPI packet sent by the client (%zu > %d)", + (errmsg("oversize GSSAPI packet sent by the client (%zu > %zu)", (size_t) input.length, - PQ_GSS_RECV_BUFFER_SIZE))); + (size_t) PQ_GSS_RECV_BUFFER_SIZE))); return -1; } -- 2.27.0 ----Next_Part(Wed_Apr_28_17_36_33_2021_627)-- Content-Type: Text/X-Patch; charset=us-ascii Content-Transfer-Encoding: 7bit Content-Disposition: inline; filename="0003-Clarify-merror-messages.patch" From 0db041334e0fc4df46f1d98e75e984b04777befe Mon Sep 17 00:00:00 2001 From: Kyotaro Horiguchi Date: Wed, 28 Apr 2021 17:25:36 +0900 Subject: [PATCH 3/3] Clarify merror messages --- src/backend/commands/conversioncmds.c | 2 +- src/backend/commands/typecmds.c | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/src/backend/commands/conversioncmds.c b/src/backend/commands/conversioncmds.c index 5fed97a2f9..307afb909d 100644 --- a/src/backend/commands/conversioncmds.c +++ b/src/backend/commands/conversioncmds.c @@ -127,7 +127,7 @@ CreateConversionCommand(CreateConversionStmt *stmt) if (DatumGetInt32(funcresult) != 0) ereport(ERROR, (errcode(ERRCODE_INVALID_OBJECT_DEFINITION), - errmsg("encoding conversion function %s returned incorrect result for empty input", + errmsg("encoding conversion function %s must return zero for empty input", NameListToString(func_name)))); /* diff --git a/src/backend/commands/typecmds.c b/src/backend/commands/typecmds.c index 036fa69d17..3dd4323386 100644 --- a/src/backend/commands/typecmds.c +++ b/src/backend/commands/typecmds.c @@ -4291,7 +4291,7 @@ AlterType(AlterTypeStmt *stmt) if (!superuser()) ereport(ERROR, (errcode(ERRCODE_INSUFFICIENT_PRIVILEGE), - errmsg("must be superuser to alter a type"))); + errmsg("must be superuser to perform all operations"))); } else { -- 2.27.0 ----Next_Part(Wed_Apr_28_17_36_33_2021_627)----