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 1o8Y9c-0007St-NL for pgsql-hackers@arkaria.postgresql.org; Tue, 05 Jul 2022 02:19: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 1o8Y9a-00016N-LG for pgsql-hackers@arkaria.postgresql.org; Tue, 05 Jul 2022 02:19:06 +0000 Received: from makus.postgresql.org ([2001:4800:3e1:1::229]) by malur.postgresql.org with esmtps (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1o8Y9a-00016D-8E for pgsql-hackers@lists.postgresql.org; Tue, 05 Jul 2022 02:19:06 +0000 Received: from mail-qt1-x833.google.com ([2607:f8b0:4864:20::833]) by makus.postgresql.org with esmtps (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92) (envelope-from ) id 1o8Y9U-0001JY-EX for pgsql-hackers@lists.postgresql.org; Tue, 05 Jul 2022 02:19:05 +0000 Received: by mail-qt1-x833.google.com with SMTP id he28so11915991qtb.13 for ; Mon, 04 Jul 2022 19:19:00 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=telsasoft-com.20210112.gappssmtp.com; s=20210112; h=date:from:to:cc:subject:message-id:references:mime-version :content-disposition:in-reply-to:user-agent; bh=UFHia7OhDfApmjETNqnvDKhw+0eNFAu0pzsvbsGtJu4=; b=zZfOtzsP4Omv4JRvcwVoemvgHo8dD9SWLM7DRYjc4QYKnpSVGF1kQwXmXWUkKZ4CYy AUFQEBVcbo+x7NRCUdBpDIk/9ZGkFMr9j6TfpncBb/m4aS4VeQgGn86JHuP2UTJHfcA3 F16ucK2Iavn4oNcw6ev1CZApI4bk49PD1sVq6nMpwDQ4KdyCCldLSHwfjlQVGJcs9fLX eMNY5E9Fmb+5SKk9LBiGbEbIDCKrEd7ZzBX/1g74TXvV61mqK1cy/vRGdCRCnGImbWgs WnN6xUwgRxTMDQLih3+1oZf7X8DthnFv7w55BcVg6byhGnmpJt7l2UZx5ReAjbk/JNcg G55Q== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:date:from:to:cc:subject:message-id:references :mime-version:content-disposition:in-reply-to:user-agent; bh=UFHia7OhDfApmjETNqnvDKhw+0eNFAu0pzsvbsGtJu4=; b=2dL3+rGZJGQf40+ZEqs7h3rigmz8gx06/REOsGxBdTKVIN72aXJqy1z6hp7WYNtDev DpiIijmlukPwRUCJMZpsVbi1mJPUAyQ9zU9LfKpYXvlz011Djmi4yO+rKqpYH4VuZ3pg M8LXsUabwlaQq8QU6nCqqAKpnXtdItJeNDufZiVr74oz8usQFppsG8akoG+YaFVjzgIq OLMLHSWCa8mHqPECjD6TltDuf63v5Mu2K6hsGsIBKLDVw6SljxtyzWOWV+1DbFxGCx21 L7g2tqSuNBjqYe9zUs4r/4liqhyrBz77svhWZ3uEc8sYETRWKjQWxm7NH9JZEHSe8tTH +wyw== X-Gm-Message-State: AJIora94YDgJWgfXRPUxP0SyqChKCImGwpBFHUs1IHyKfuXh5BBaby8j ub/QvS8BJlBKEdxV81oip8r+LeUYWnZBaw== X-Google-Smtp-Source: AGRyM1sF59F9rqbuF6bkPNySz+Dpf0vvPgRlgbC6gYU0hLuXLodz21zynlrXsde+qhPWUpUdU6xmTQ== X-Received: by 2002:a05:6214:410c:b0:470:46e6:bbbf with SMTP id kc12-20020a056214410c00b0047046e6bbbfmr30892833qvb.42.1656987539362; Mon, 04 Jul 2022 19:18:59 -0700 (PDT) Received: from pryzbyj.telsasoft (charmander.telsasoft.com. [50.244.222.1]) by smtp.gmail.com with ESMTPSA id o16-20020a05620a2a1000b006a68fdc2d18sm22766255qkp.130.2022.07.04.19.18.58 (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128); Mon, 04 Jul 2022 19:18:58 -0700 (PDT) Received: by pryzbyj.telsasoft (Postfix, from userid 1000) id C5848800740; Mon, 4 Jul 2022 21:18:57 -0500 (CDT) Date: Mon, 4 Jul 2022 21:18:57 -0500 From: Justin Pryzby To: Tom Lane Cc: pgsql-hackers@lists.postgresql.org Subject: Re: Bugs in copyfuncs/equalfuncs support for JSON node types Message-ID: <20220705021857.GO13040@telsasoft.com> References: <1794155.1656984188@sss.pgh.pa.us> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <1794155.1656984188@sss.pgh.pa.us> User-Agent: Mutt/1.9.4 (2018-02-28) List-Id: List-Help: List-Subscribe: List-Post: List-Owner: List-Archive: Archived-At: Precedence: bulk On Mon, Jul 04, 2022 at 09:23:08PM -0400, Tom Lane wrote: > In reviewing Peter's patch to auto-generate the backend/nodes > support files, I compared what the patch's script produces to > what is in the code now. I found several discrepancies in the > recently-added parse node types for JSON functions, and as far > as I can see every one of those discrepancies is an error in > the existing code. Some of them are relatively harmless > (e.g. COPY_LOCATION_FIELD isn't really different from > COPY_SCALAR_FIELD), but some of them definitely are live bugs. > I propose the attached patch. Do the missing fields indicate a deficiency in test coverage ? _copyJsonTablePlan.pathname and _equalJsonTable.plan. -- Justin