Received: from malur.postgresql.org ([217.196.149.56]) by arkaria.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.94.2) (envelope-from ) id 1ql3AK-000pvS-7L for pgsql-hackers@arkaria.postgresql.org; Tue, 26 Sep 2023 08:11:32 +0000 Received: from localhost ([127.0.0.1] helo=malur.postgresql.org) by malur.postgresql.org with esmtp (Exim 4.94.2) (envelope-from ) id 1ql3AI-00Ag92-Pn for pgsql-hackers@arkaria.postgresql.org; Tue, 26 Sep 2023 08:11:30 +0000 Received: from magus.postgresql.org ([2a02:c0:301:0:ffff::29]) by malur.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.94.2) (envelope-from ) id 1ql3AI-00Ag8o-9i for pgsql-hackers@lists.postgresql.org; Tue, 26 Sep 2023 08:11:30 +0000 Received: from mail-ed1-x536.google.com ([2a00:1450:4864:20::536]) by magus.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 (Exim 4.94.2) (envelope-from ) id 1ql3AF-007dug-Cs for pgsql-hackers@lists.postgresql.org; Tue, 26 Sep 2023 08:11:29 +0000 Received: by mail-ed1-x536.google.com with SMTP id 4fb4d7f45d1cf-53447d0241eso2407613a12.3 for ; Tue, 26 Sep 2023 01:11:27 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=cybertec-at.20230601.gappssmtp.com; s=20230601; t=1695715886; x=1696320686; darn=lists.postgresql.org; h=mime-version:user-agent:references:in-reply-to:date:cc:to:from :subject:message-id:from:to:cc:subject:date:message-id:reply-to; bh=Ti/iEd3EH62N76Rr/sO/3eHv76Y/WVIXzvHZSpMx1Hw=; b=TIgo2BQ1hODcDkgNDq9yIdsRC6nMDsvt43zCrlWGPODRYAMFNRbp0xYaKnpmOV5sfe DIuo+jdLd5xr45HXGReUEANZS3Q7Vuug2nlR40R1fHvg9mImjA9bgN6X10hRczhB3osC fja6kEMd02dQDrCfu57RhjPZkRBzEmVFCRoK2uIrs1U9GAbtypTUqDLFGmYoTl6FWyON lQDnMHYQeLBbCMtWdZsGlOTeE1C1OSzj5JQeph1dK9ZRYk8KaNB3jtrkUOVb7bbab6rb TMxd+Sm/qJl0i53AbwjAen3jI3ixVRZayfsQCSu8dE9VI7JWKAyeBch7ZBXxRofA1r03 5T3Q== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1695715886; x=1696320686; h=mime-version:user-agent:references:in-reply-to:date:cc:to:from :subject:message-id:x-gm-message-state:from:to:cc:subject:date :message-id:reply-to; bh=Ti/iEd3EH62N76Rr/sO/3eHv76Y/WVIXzvHZSpMx1Hw=; b=FX8IXJa88iiYlZ99el6UTvc/8VQMd3RNn0PrzDmy06/x0W4eHmnr9SAzTAvwvKq0eq ZrH7fXKC8VeC3Hseq4FuxewPz585uoGrRTeeg1dEcBx66Id+iy3jP3lkcp2YP2EAxfq4 QcGmTHfuXhUIYGhZTJsVF+4VlFWSqLQza5IkyX8DKBRKoDRRqkTknoFR2TlCI+C4Fliv DwigBxtpxZ7L2GLK8ChqtoswH3EIW8BHVY9aioz5IopVCVg+T9NUPP5S+rbuVRpEehQR p9XWykrxGr8AsJQE0wqAG3lpsLGcISCJ4iT5P3fYvjsoHMhpBnbrclgS+190wClbOY4D iOng== X-Gm-Message-State: AOJu0YxJKUjdiKB4uxub/im8wBiDdWNBAeRcGRV0UUTvt+qeqImyVofY FXMuWBux8vGeU+cAbM9crzCuGg== X-Google-Smtp-Source: AGHT+IFiHI0pD+JgE5I6SBnMZ6v1bqAhDWFxumOBbVdxQQV2q1ZkTp5zm98Oj/Tp37F+UqxmTbg4Ww== X-Received: by 2002:a50:ed8c:0:b0:52f:bb56:af4 with SMTP id h12-20020a50ed8c000000b0052fbb560af4mr7656317edr.23.1695715886488; Tue, 26 Sep 2023 01:11:26 -0700 (PDT) Received: from localhost.localdomain ([2001:871:5e:81cc:60dc:7538:9817:449]) by smtp.gmail.com with ESMTPSA id dn15-20020a05640222ef00b0053448f23b33sm1061614edb.93.2023.09.26.01.11.25 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 26 Sep 2023 01:11:26 -0700 (PDT) Message-ID: Subject: Re: Regression in COPY FROM caused by 9f8377f7a2 From: Laurenz Albe To: Tom Lane , Andrew Dunstan Cc: pgsql-hackers@lists.postgresql.org Date: Tue, 26 Sep 2023 10:11:25 +0200 In-Reply-To: References: <75a7b7483aeb331aa017328d606d568fc715b90d.camel@cybertec.at> <111178fd5653becf9e29d9637c37a2c47cf721f2.camel@cybertec.at> <677f2d81-13b2-6f82-c0b4-4163c753c72f@dunslane.net> <281733.1695678582@sss.pgh.pa.us> Content-Type: multipart/mixed; boundary="=-ZTiUBn/R9v/wmQyndwWg" User-Agent: Evolution 3.48.4 (3.48.4-1.fc38) MIME-Version: 1.0 List-Id: List-Help: List-Subscribe: List-Post: List-Owner: List-Archive: Archived-At: Precedence: bulk --=-ZTiUBn/R9v/wmQyndwWg Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable Here is an improved version of the patch with regression tests. Yours, Laurenz Albe --=-ZTiUBn/R9v/wmQyndwWg Content-Disposition: attachment; filename*0=0001-Evaluate-defaults-in-COPY-FROM-only-if-necessary.V2.patc; filename*1=h Content-Transfer-Encoding: base64 Content-Type: text/x-patch; name="0001-Evaluate-defaults-in-COPY-FROM-only-if-necessary.V2.patch"; charset="UTF-8" RnJvbSA3MTc0NGFkYTFlMmM4Y2ZkYmI1N2UwMzAxODU3MmExYWY2MjNiMDllIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBMYXVyZW56IEFsYmUgPGxhdXJlbnouYWxiZUBjeWJlcnRlYy5h dD4KRGF0ZTogVHVlLCAyNiBTZXAgMjAyMyAxMDowOTo0OSArMDIwMApTdWJqZWN0OiBbUEFUQ0hd IEV2YWx1YXRlIGRlZmF1bHRzIGluIENPUFkgRlJPTSBvbmx5IGlmIG5lY2Vzc2FyeQoKU2luY2Ug Y29tbWl0IDlmODM3N2Y3YTIsIHdlIGV2YWx1YXRlIHRoZSBjb2x1bW4gZGVmYXVsdCB2YWx1ZXMg aW4KQ09QWSBGUk9NIGZvciBhbGwgY29sdW1ucyBleGNlcHQgZ2VuZXJhdGVkIG9uZXMsIGJlY2F1 c2UgdGhleSBjb3VsZApiZSBuZWVkZWQgaWYgdGhlIGlucHV0IHZhbHVlIG1hdGNoZXMgdGhlIERF RkFVTFQgb3B0aW9uLgoKVGhpcyBjYW4gY2F1c2UgYSBzdXJwcmlzaW5nIHJlZ3Jlc3Npb246Cgog IENSRUFURSBUQUJMRSBib29tICh0IGNoYXJhY3RlciB2YXJ5aW5nKDUpIERFRkFVTFQgJ2EgbG9u ZyBzdHJpbmcnKTsKICBDT1BZIGJvb20gRlJPTSBTVERJTjsKICBFUlJPUjogIHZhbHVlIHRvbyBs b25nIGZvciB0eXBlIGNoYXJhY3RlciB2YXJ5aW5nKDUpCgpUaGlzIHdvcmtlZCBiZWZvcmUgOWY4 Mzc3ZjdhMiwgc2luY2UgZGVmYXVsdCB2YWx1ZXMgd2VyZSBvbmx5CmV2YWx1YXRlZCBmb3IgY29s dW1ucyB0aGF0IHdlcmUgbm90IHNwZWNpZmllZCBpbiB0aGUgY29sdW1uIGxpc3QuCgpUbyBmaXgs IGZldGNoIHRoZSBkZWZhdWx0IHZhbHVlcyBvbmx5IGlmIHRoZSBERUZBVUxUIG9wdGlvbiB3YXMK c3BlY2lmaWVkIG9yIGZvciBjb2x1bW5zIG5vdCBzcGVjaWZpZWQgaW4gdGhlIGNvbHVtbiBsaXN0 LgotLS0KIHNyYy9iYWNrZW5kL2NvbW1hbmRzL2NvcHlmcm9tLmMgICAgfCAgOSArKysrKysrKy0K IHNyYy90ZXN0L3JlZ3Jlc3MvZXhwZWN0ZWQvY29weS5vdXQgfCAxNyArKysrKysrKysrKysrKysr Kwogc3JjL3Rlc3QvcmVncmVzcy9zcWwvY29weS5zcWwgICAgICB8IDE1ICsrKysrKysrKysrKysr KwogMyBmaWxlcyBjaGFuZ2VkLCA0MCBpbnNlcnRpb25zKCspLCAxIGRlbGV0aW9uKC0pCgpkaWZm IC0tZ2l0IGEvc3JjL2JhY2tlbmQvY29tbWFuZHMvY29weWZyb20uYyBiL3NyYy9iYWNrZW5kL2Nv bW1hbmRzL2NvcHlmcm9tLmMKaW5kZXggNzA4NzFlZDgxOS4uM2YzZTYzMWRlZSAxMDA2NDQKLS0t IGEvc3JjL2JhY2tlbmQvY29tbWFuZHMvY29weWZyb20uYworKysgYi9zcmMvYmFja2VuZC9jb21t YW5kcy9jb3B5ZnJvbS5jCkBAIC0xNTY3LDcgKzE1NjcsMTQgQEAgQmVnaW5Db3B5RnJvbShQYXJz ZVN0YXRlICpwc3RhdGUsCiAJCS8qIEdldCBkZWZhdWx0IGluZm8gaWYgYXZhaWxhYmxlICovCiAJ CWRlZmV4cHJzW2F0dG51bSAtIDFdID0gTlVMTDsKIAotCQlpZiAoIWF0dC0+YXR0Z2VuZXJhdGVk KQorCQkvKgorCQkgKiBXZSBuZWVkIHRoZSBkZWZhdWx0IHZhbHVlcyBvbmx5IGZvciBjb2x1bW5z IHRoYXQgZG8gbm90IGFwcGVhciBpbiB0aGUKKwkJICogY29sdW1uIGxpc3QuICBCdXQgaWYgdGhl IERFRkFVTFQgb3B0aW9uIHdhcyBnaXZlbiwgd2UgbWF5IG5lZWQgYWxsCisJCSAqIGNvbHVtbiBk ZWZhdWx0IHZhbHVlcy4gIFdlIG5ldmVyIG5lZWQgZGVmYXVsdHMgZm9yIGdlbmVyYXRlZCBjb2x1 bW5zLgorCQkgKi8KKwkJaWYgKChjc3RhdGUtPm9wdHMuZGVmYXVsdF9wcmludCAhPSBOVUxMIHx8 CisJCQkgIWxpc3RfbWVtYmVyX2ludChjc3RhdGUtPmF0dG51bWxpc3QsIGF0dG51bSkpICYmCisJ CQkhYXR0LT5hdHRnZW5lcmF0ZWQpCiAJCXsKIAkJCUV4cHIJICAgKmRlZmV4cHIgPSAoRXhwciAq KSBidWlsZF9jb2x1bW5fZGVmYXVsdChjc3RhdGUtPnJlbCwKIAkJCQkJCQkJCQkJCQkJCQlhdHRu dW0pOwpkaWZmIC0tZ2l0IGEvc3JjL3Rlc3QvcmVncmVzcy9leHBlY3RlZC9jb3B5Lm91dCBiL3Ny Yy90ZXN0L3JlZ3Jlc3MvZXhwZWN0ZWQvY29weS5vdXQKaW5kZXggOGE4YmY0M2ZkZS4uYTU5MTJj MTNhOCAxMDA2NDQKLS0tIGEvc3JjL3Rlc3QvcmVncmVzcy9leHBlY3RlZC9jb3B5Lm91dAorKysg Yi9zcmMvdGVzdC9yZWdyZXNzL2V4cGVjdGVkL2NvcHkub3V0CkBAIC0yNDAsMyArMjQwLDIwIEBA IFNFTEVDVCAqIEZST00gaGVhZGVyX2NvcHl0ZXN0IE9SREVSIEJZIGE7CiAoNSByb3dzKQogCiBk cm9wIHRhYmxlIGhlYWRlcl9jb3B5dGVzdDsKKy0tIHRlc3QgQ09QWSB3aXRoIG92ZXJsb25nIGNv bHVtbiBkZWZhdWx0cworY3JlYXRlIHRlbXAgdGFibGUgb3ZlcnNpemVkX2NvbHVtbl9kZWZhdWx0 ICgKKyAgICBjb2wxIHZhcmNoYXIoNSkgREVGQVVMVCAnbW9yZSB0aGFuIDUgY2hhcnMnLAorICAg IGNvbDIgdmFyY2hhcig1KSk7CistLSBub3JtYWwgQ09QWSBzaG91bGQgd29yaworY29weSBvdmVy c2l6ZWRfY29sdW1uX2RlZmF1bHQgZnJvbSBzdGRpbjsKKy0tIGVycm9yIGlmIHRoZSBjb2x1bW4g aXMgZXhjbHVkZWQKK2NvcHkgb3ZlcnNpemVkX2NvbHVtbl9kZWZhdWx0IChjb2wyKSBmcm9tIHN0 ZGluOworRVJST1I6ICB2YWx1ZSB0b28gbG9uZyBmb3IgdHlwZSBjaGFyYWN0ZXIgdmFyeWluZyg1 KQorXC4KK2ludmFsaWQgY29tbWFuZCBcLgorLS0gZXJyb3IgaWYgdGhlIERFRkFVTFQgb3B0aW9u IGlzIGdpdmVuCitjb3B5IG92ZXJzaXplZF9jb2x1bW5fZGVmYXVsdCBmcm9tIHN0ZGluIChkZWZh dWx0ICcnKTsKK0VSUk9SOiAgdmFsdWUgdG9vIGxvbmcgZm9yIHR5cGUgY2hhcmFjdGVyIHZhcnlp bmcoNSkKK1wuCitpbnZhbGlkIGNvbW1hbmQgXC4KK2Ryb3AgdGFibGUgb3ZlcnNpemVkX2NvbHVt bl9kZWZhdWx0OwpkaWZmIC0tZ2l0IGEvc3JjL3Rlc3QvcmVncmVzcy9zcWwvY29weS5zcWwgYi9z cmMvdGVzdC9yZWdyZXNzL3NxbC9jb3B5LnNxbAppbmRleCBmOWRhN2IxNTA4Li43ZmRiMjZkMTRm IDEwMDY0NAotLS0gYS9zcmMvdGVzdC9yZWdyZXNzL3NxbC9jb3B5LnNxbAorKysgYi9zcmMvdGVz dC9yZWdyZXNzL3NxbC9jb3B5LnNxbApAQCAtMjY4LDMgKzI2OCwxOCBAQCBhCWMJYgogCiBTRUxF Q1QgKiBGUk9NIGhlYWRlcl9jb3B5dGVzdCBPUkRFUiBCWSBhOwogZHJvcCB0YWJsZSBoZWFkZXJf Y29weXRlc3Q7CisKKy0tIHRlc3QgQ09QWSB3aXRoIG92ZXJsb25nIGNvbHVtbiBkZWZhdWx0cwor Y3JlYXRlIHRlbXAgdGFibGUgb3ZlcnNpemVkX2NvbHVtbl9kZWZhdWx0ICgKKyAgICBjb2wxIHZh cmNoYXIoNSkgREVGQVVMVCAnbW9yZSB0aGFuIDUgY2hhcnMnLAorICAgIGNvbDIgdmFyY2hhcig1 KSk7CistLSBub3JtYWwgQ09QWSBzaG91bGQgd29yaworY29weSBvdmVyc2l6ZWRfY29sdW1uX2Rl ZmF1bHQgZnJvbSBzdGRpbjsKK1wuCistLSBlcnJvciBpZiB0aGUgY29sdW1uIGlzIGV4Y2x1ZGVk Citjb3B5IG92ZXJzaXplZF9jb2x1bW5fZGVmYXVsdCAoY29sMikgZnJvbSBzdGRpbjsKK1wuCist LSBlcnJvciBpZiB0aGUgREVGQVVMVCBvcHRpb24gaXMgZ2l2ZW4KK2NvcHkgb3ZlcnNpemVkX2Nv bHVtbl9kZWZhdWx0IGZyb20gc3RkaW4gKGRlZmF1bHQgJycpOworXC4KK2Ryb3AgdGFibGUgb3Zl cnNpemVkX2NvbHVtbl9kZWZhdWx0OwotLSAKMi40MS4wCgo= --=-ZTiUBn/R9v/wmQyndwWg--