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.96) (envelope-from ) id 1wCf3D-002CYC-03 for pgsql-hackers@arkaria.postgresql.org; Tue, 14 Apr 2026 14:47:39 +0000 Received: from localhost ([127.0.0.1] helo=malur.postgresql.org) by malur.postgresql.org with esmtp (Exim 4.96) (envelope-from ) id 1wCf38-00CO5F-3D for pgsql-hackers@arkaria.postgresql.org; Tue, 14 Apr 2026 14:47:35 +0000 Received: from makus.postgresql.org ([2001:4800:3e1:1::229]) by malur.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.96) (envelope-from ) id 1wCf38-00CO57-1s for pgsql-hackers@lists.postgresql.org; Tue, 14 Apr 2026 14:47:35 +0000 Received: from mail-vk1-xa33.google.com ([2607:f8b0:4864:20::a33]) by makus.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 (Exim 4.98.2) (envelope-from ) id 1wCf37-00000000zGe-0HWH for pgsql-hackers@lists.postgresql.org; Tue, 14 Apr 2026 14:47:34 +0000 Received: by mail-vk1-xa33.google.com with SMTP id 71dfb90a1353d-56f72d27e7eso1120199e0c.0 for ; Tue, 14 Apr 2026 07:47:33 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1776178053; cv=none; d=google.com; s=arc-20240605; b=UPZiRjzflh5/bIbPhQmjbxYFaKCJUuGnZiIt87oPtSgsbv4fnespPC8d831D5H8hmq nA57v1dfBAu2WLDJOnFokpfsobV75C9PMfUGBM4agezzzQ6cN3A4Jkkw8u7ejtIfyEpD LsEz8x5+zCZllDDSiBdz9TTgYp918tdCsqwH1vy2s+5TJv3L+tUIZVPwVxD0os+Xu6Mq EsN98f46sc69yIR4mEwQk0n412CkHbHxGQmfMN4F0EKZDFYiCGDCaGPb0nwTGmJQRPBC ukuYyyqSv8DbC3dvAZt/IW9gSAcKuAU9HXkE/YLHm1Jo+SuLF4RCUleWpD/xpOBpKnug FZcg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20240605; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:dkim-signature; bh=nIXxFrtDlilz9Mln91dbzgfLRl8gLnx+vNbILe/h8Ac=; fh=xJCJY1yj/SYzdEIhHhlf7nE521InIj2qCVgn5a5q7J8=; b=Yj6zuZ7eMevZ3AG3CwYsQhp8q870PO/rvN5wk/IjD8U8v6ZKDTRQFZEDZC/Q7981qS pcolfAHS3YGSXYrmKcBCI+oy4Ac3xnOQzgNcI1w9tWAHACLTR/37g4cjj0jrd845XACy KnGMdV0LTESIPrrKFNsQddZF2vEkfO2cOl1iCLYCwE87Bk77Rt/xZ3Yme5nybAuD9Q60 FH5AyCK4vMwxqF7466DZHcLg8ombYLxU2HfqZkgQWhJ1bZVbjf36J6Oy+NIMcH54IJ2L 3OOoPxdBMJbT1y3pguHlR7v6iVSeWn9xQVUtr4Y0nHJ1BxFXP+HDFuxVJWnLPl6P8hWm 5Uzw==; darn=lists.postgresql.org ARC-Authentication-Results: i=1; mx.google.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20251104; t=1776178053; x=1776782853; darn=lists.postgresql.org; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:from:to:cc:subject:date:message-id:reply-to; bh=nIXxFrtDlilz9Mln91dbzgfLRl8gLnx+vNbILe/h8Ac=; b=oF5fdecHkPmscFv3EphmR9xVNY5hQG3zC7ytb+uLj+Ztiih95S+0z6LeSWReO5mYko Sd1xP8U2ApfJMeP4jGD4Cji1FoGY+BbSafW0KL3bulhi7q3QNATi2aPXQa/L4JGgdLNE URwPsiSAW1m1ViVdXi5mKWjzZLRZmJHahOK4tDs06yhbm08+4r1W1NB5U+EaXK9swq2m zmDe/drn/LYQgBvlozAxtD8qO5yvRlcN7+uHXMVmuQGNCwAh6SgwofWS0bFLHvfpR9aa m7FVZ+/rvKoU8Lgbx7/BbTK5OcE/E2dKjLTEpL82o6/+q5XXsHycEFuyoBV36ij9xBnU ExeA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1776178053; x=1776782853; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:x-gm-gg:x-gm-message-state:from:to:cc:subject:date :message-id:reply-to; bh=nIXxFrtDlilz9Mln91dbzgfLRl8gLnx+vNbILe/h8Ac=; b=gYEvao5oAR7gSzCwTaHAHNAgHgVhXaZ5OWoqiEdf8xH2vL0m8+hRpgmWEPlbLAdsNz hDg+FJqb3I5fEAVUxbRLXYTwg7+wMae4bAyskXlyVV3mLOviMRIH0YDQlHiytm0Ym7k6 rypuGQuFv9b9gcRuf0ItmbFVJErirAOBdo6un0FDpn9/ywN7EBy7NRoJyIthwTesJwle xTtCneSNlGhQZzgasDmw8qJO0upu1lWL2PeE+YKYjXAgjZPaV4fG7twpjP7noqJx2zh3 7PKUbdNnSlunXuVNspumeK8gIPjdWB4/wtkiMhwj7/7InqQC//lHBgJj8ZAzWZQ1eB80 uaKw== X-Gm-Message-State: AOJu0Yy6n+DCln/BAXDtI5jEgf1sES7WUEtA8U37G7o6F/JwEnC5jbaN +z9LOm6DGqyZAWR46Vb/cP5fm/c6RPyGR0iY7hF87mbfwqookIrejFUf/nZZrDFnADgswZXxNsD lxVBzIT7nwSvRJiFyfEp6EaHNkvejSfM= X-Gm-Gg: AeBDieuehPzHvgesVqIWo2tZ6RNFXuMCLywi6WixNNXenU+MGR8DjV1pvnL+xUcDdfI KsVpvHFTlvEf6XgRpZ+1n93BrDxaTjdFjet8YVv6tLvnKQjIyGuMjN6+VZJTSomJ4y+KIsD9wFv YZ5VTbx+mAVhSzh0a2AHalKoxDwzSLdnaXrGOMH3uhv8RDUB+Yy3B+wAW+cxJvyl6AVNA8xPH// mP6P8G++3bmCWRaLSJT/+r8wjv5te9kuDZyIgIyUB14V8Nelm8stsa67ILNAryHCu1XCHsb2SIY RkAGU8FUcKnzkMjpRySZVspa2aBmLrEa/H5nhgsOdKdklKmyVOuT7cbsOSIJjCMQ9W4Tf3K7v1V sOXU5ZvKCMZ4YTii9tu3sPj5EDilzCUO1ScsxhhmyaCRo34pV26ELMBHnN0oEyEFvnpYdLjGoYS yLoim5UanqbyD35vZP/aSJTA== X-Received: by 2002:a05:6102:580c:b0:5ff:ecd0:1d1f with SMTP id ada2fe7eead31-60870fec197mr8847145137.19.1776178052650; Tue, 14 Apr 2026 07:47:32 -0700 (PDT) MIME-Version: 1.0 References: In-Reply-To: From: jian he Date: Tue, 14 Apr 2026 22:46:56 +0800 X-Gm-Features: AQROBzBxP37LoSSHvLS1-crdiyQw5rcKODthfJoGktAgyMxBX-woUf0GCOEl8aY Message-ID: Subject: Re: Bug: COPY FORMAT JSON includes generated columns unlike text/CSV To: SATYANARAYANA NARLAPURAM Cc: PostgreSQL Hackers , Richard Guo Content-Type: multipart/mixed; boundary="000000000000e34205064f6cad1a" List-Id: List-Help: List-Subscribe: List-Post: List-Owner: List-Archive: Archived-At: Precedence: bulk --000000000000e34205064f6cad1a Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable On Mon, Apr 13, 2026 at 5:21=E2=80=AFPM SATYANARAYANA NARLAPURAM wrote: > > Hi hackers, > > COPY TO with FORMAT json includes generated columns in the output, > while text and CSV formats correctly exclude them. Virtual generated > columns appear as null (since they aren't materialized), and stored > generated columns appear with their values Attached a patch to address t= his. > The patch looks good to me. It seems there's a ``git apply`` issue applying the V1 patch. The attached v2 is the same as your v1, it should apply without issue using `git apply` or `git am`. -- jian https://www.enterprisedb.com/ --000000000000e34205064f6cad1a Content-Type: text/x-patch; charset="US-ASCII"; name="v2-0001-COPY-FORMAT-JSON-with-generated.patch" Content-Disposition: attachment; filename="v2-0001-COPY-FORMAT-JSON-with-generated.patch" Content-Transfer-Encoding: base64 Content-ID: X-Attachment-Id: f_mnyqh7qy0 RnJvbSA0MTNiYzcwYWFlZTllZmU4Y2Y0MDE1M2JiMzFjODBkZTY5ZjVhOTA5IE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBqaWFuIGhlIDxqaWFuLnVuaXZlcnNhbGl0eUBnbWFpbC5jb20+ CkRhdGU6IE1vbiwgMTMgQXByIDIwMjYgMjI6NDg6NDcgKzA4MDAKU3ViamVjdDogW1BBVENIIHYy IDEvMV0gQ09QWSBGT1JNQVQgSlNPTiB3aXRoIGdlbmVyYXRlZAoKQXV0aG9yOiAgCVNBVFlBTkFS QVlBTkEgTkFSTEFQVVJBTSA8c2F0eWFuYXJsYXB1cmFtKGF0KWdtYWlsKGRvdCljb20+CmRpc2N1 c3Npb246IGh0dHBzOi8vcG9zdGdyLmVzL20vQ0FIZyUyQlFEY2ZwR0RvUEwzZnZmalhSdGZuJTNE Zm55NkRkSlI2QkF5NlRwUzFYajJFWmZYQSU0MG1haWwuZ21haWwuY29tCmNvbW1pdGZlc3QgZW50 cnk6IGh0dHBzOi8vY29tbWl0ZmVzdC5wb3N0Z3Jlc3FsLm9yZy9wYXRjaC8KLS0tCiBzcmMvYmFj a2VuZC9jb21tYW5kcy9jb3B5dG8uYyAgICAgICAgICAgICAgICAgICB8IDIgKy0KIHNyYy90ZXN0 L3JlZ3Jlc3MvZXhwZWN0ZWQvZ2VuZXJhdGVkX3N0b3JlZC5vdXQgIHwgNiArKysrKysKIHNyYy90 ZXN0L3JlZ3Jlc3MvZXhwZWN0ZWQvZ2VuZXJhdGVkX3ZpcnR1YWwub3V0IHwgNiArKysrKysKIHNy Yy90ZXN0L3JlZ3Jlc3Mvc3FsL2dlbmVyYXRlZF9zdG9yZWQuc3FsICAgICAgIHwgMyArKysKIHNy Yy90ZXN0L3JlZ3Jlc3Mvc3FsL2dlbmVyYXRlZF92aXJ0dWFsLnNxbCAgICAgIHwgMyArKysKIDUg ZmlsZXMgY2hhbmdlZCwgMTkgaW5zZXJ0aW9ucygrKSwgMSBkZWxldGlvbigtKQoKZGlmZiAtLWdp dCBhL3NyYy9iYWNrZW5kL2NvbW1hbmRzL2NvcHl0by5jIGIvc3JjL2JhY2tlbmQvY29tbWFuZHMv Y29weXRvLmMKaW5kZXggZjBlMDE0N2M2NjUuLjg1ZDE1MzUzNjQ3IDEwMDY0NAotLS0gYS9zcmMv YmFja2VuZC9jb21tYW5kcy9jb3B5dG8uYworKysgYi9zcmMvYmFja2VuZC9jb21tYW5kcy9jb3B5 dG8uYwpAQCAtMTAzMyw3ICsxMDMzLDcgQEAgQmVnaW5Db3B5VG8oUGFyc2VTdGF0ZSAqcHN0YXRl LAogCXsKIAkJY3N0YXRlLT5qc29uX2J1ZiA9IG1ha2VTdHJpbmdJbmZvKCk7CiAKLQkJaWYgKGF0 dG5hbWVsaXN0ICE9IE5JTCAmJiByZWwpCisJCWlmIChyZWwgJiYgbGlzdF9sZW5ndGgoY3N0YXRl LT5hdHRudW1saXN0KSA8IHR1cERlc2MtPm5hdHRzKQogCQl7CiAJCQlpbnQJCQluYXR0cyA9IGxp c3RfbGVuZ3RoKGNzdGF0ZS0+YXR0bnVtbGlzdCk7CiAJCQlUdXBsZURlc2MJcmVzdWx0RGVzYzsK ZGlmZiAtLWdpdCBhL3NyYy90ZXN0L3JlZ3Jlc3MvZXhwZWN0ZWQvZ2VuZXJhdGVkX3N0b3JlZC5v dXQgYi9zcmMvdGVzdC9yZWdyZXNzL2V4cGVjdGVkL2dlbmVyYXRlZF9zdG9yZWQub3V0CmluZGV4 IDQzY2RkZWFjMzczLi40ZDMyOWM2MDk5NCAxMDA2NDQKLS0tIGEvc3JjL3Rlc3QvcmVncmVzcy9l eHBlY3RlZC9nZW5lcmF0ZWRfc3RvcmVkLm91dAorKysgYi9zcmMvdGVzdC9yZWdyZXNzL2V4cGVj dGVkL2dlbmVyYXRlZF9zdG9yZWQub3V0CkBAIC01NDEsNiArNTQxLDEyIEBAIFNFTEVDVCAqIEZS T00gZ3Rlc3QzIE9SREVSIEJZIGE7CiAgNCB8IDEyCiAoNCByb3dzKQogCistLSBDT1BZIEpTT04g c2hvdWxkIGV4Y2x1ZGUgZ2VuZXJhdGVkIGNvbHVtbnMsIHNhbWUgYXMgdGV4dC9DU1YKK0NPUFkg Z3Rlc3QxIFRPIHN0ZG91dCBXSVRIIChGT1JNQVQganNvbik7Cit7ImEiOjF9Cit7ImEiOjJ9Cit7 ImEiOjN9Cit7ImEiOjR9CiAtLSBudWxsIHZhbHVlcwogQ1JFQVRFIFRBQkxFIGd0ZXN0MiAoYSBp bnQgUFJJTUFSWSBLRVksIGIgaW50IEdFTkVSQVRFRCBBTFdBWVMgQVMgKE5VTEwpIFNUT1JFRCk7 CiBJTlNFUlQgSU5UTyBndGVzdDIgVkFMVUVTICgxKTsKZGlmZiAtLWdpdCBhL3NyYy90ZXN0L3Jl Z3Jlc3MvZXhwZWN0ZWQvZ2VuZXJhdGVkX3ZpcnR1YWwub3V0IGIvc3JjL3Rlc3QvcmVncmVzcy9l eHBlY3RlZC9nZW5lcmF0ZWRfdmlydHVhbC5vdXQKaW5kZXggMjM0MDYxZmExZjcuLmZjNDFjNDgw ZDQwIDEwMDY0NAotLS0gYS9zcmMvdGVzdC9yZWdyZXNzL2V4cGVjdGVkL2dlbmVyYXRlZF92aXJ0 dWFsLm91dAorKysgYi9zcmMvdGVzdC9yZWdyZXNzL2V4cGVjdGVkL2dlbmVyYXRlZF92aXJ0dWFs Lm91dApAQCAtNTM1LDYgKzUzNSwxMiBAQCBTRUxFQ1QgKiBGUk9NIGd0ZXN0MyBPUkRFUiBCWSBh OwogIDQgfCAxMgogKDQgcm93cykKIAorLS0gQ09QWSBKU09OIHNob3VsZCBleGNsdWRlIGdlbmVy YXRlZCBjb2x1bW5zLCBzYW1lIGFzIHRleHQvQ1NWCitDT1BZIGd0ZXN0MSBUTyBzdGRvdXQgV0lU SCAoRk9STUFUIGpzb24pOworeyJhIjoxfQoreyJhIjoyfQoreyJhIjozfQoreyJhIjo0fQogLS0g bnVsbCB2YWx1ZXMKIENSRUFURSBUQUJMRSBndGVzdDIgKGEgaW50IFBSSU1BUlkgS0VZLCBiIGlu dCBHRU5FUkFURUQgQUxXQVlTIEFTIChOVUxMKSBWSVJUVUFMKTsKIElOU0VSVCBJTlRPIGd0ZXN0 MiBWQUxVRVMgKDEpOwpkaWZmIC0tZ2l0IGEvc3JjL3Rlc3QvcmVncmVzcy9zcWwvZ2VuZXJhdGVk X3N0b3JlZC5zcWwgYi9zcmMvdGVzdC9yZWdyZXNzL3NxbC9nZW5lcmF0ZWRfc3RvcmVkLnNxbApp bmRleCAyODAwMjFkNzliNy4uMTA2NDgzOWRjZDIgMTAwNjQ0Ci0tLSBhL3NyYy90ZXN0L3JlZ3Jl c3Mvc3FsL2dlbmVyYXRlZF9zdG9yZWQuc3FsCisrKyBiL3NyYy90ZXN0L3JlZ3Jlc3Mvc3FsL2dl bmVyYXRlZF9zdG9yZWQuc3FsCkBAIC0yMzksNiArMjM5LDkgQEAgQ09QWSBndGVzdDMgKGEsIGIp IEZST00gc3RkaW47CiAKIFNFTEVDVCAqIEZST00gZ3Rlc3QzIE9SREVSIEJZIGE7CiAKKy0tIENP UFkgSlNPTiBzaG91bGQgZXhjbHVkZSBnZW5lcmF0ZWQgY29sdW1ucywgc2FtZSBhcyB0ZXh0L0NT VgorQ09QWSBndGVzdDEgVE8gc3Rkb3V0IFdJVEggKEZPUk1BVCBqc29uKTsKKwogLS0gbnVsbCB2 YWx1ZXMKIENSRUFURSBUQUJMRSBndGVzdDIgKGEgaW50IFBSSU1BUlkgS0VZLCBiIGludCBHRU5F UkFURUQgQUxXQVlTIEFTIChOVUxMKSBTVE9SRUQpOwogSU5TRVJUIElOVE8gZ3Rlc3QyIFZBTFVF UyAoMSk7CmRpZmYgLS1naXQgYS9zcmMvdGVzdC9yZWdyZXNzL3NxbC9nZW5lcmF0ZWRfdmlydHVh bC5zcWwgYi9zcmMvdGVzdC9yZWdyZXNzL3NxbC9nZW5lcmF0ZWRfdmlydHVhbC5zcWwKaW5kZXgg NGQ5YWQzYzVkY2EuLjliMzI0MTNlM2E5IDEwMDY0NAotLS0gYS9zcmMvdGVzdC9yZWdyZXNzL3Nx bC9nZW5lcmF0ZWRfdmlydHVhbC5zcWwKKysrIGIvc3JjL3Rlc3QvcmVncmVzcy9zcWwvZ2VuZXJh dGVkX3ZpcnR1YWwuc3FsCkBAIC0yMzksNiArMjM5LDkgQEAgQ09QWSBndGVzdDMgKGEsIGIpIEZS T00gc3RkaW47CiAKIFNFTEVDVCAqIEZST00gZ3Rlc3QzIE9SREVSIEJZIGE7CiAKKy0tIENPUFkg SlNPTiBzaG91bGQgZXhjbHVkZSBnZW5lcmF0ZWQgY29sdW1ucywgc2FtZSBhcyB0ZXh0L0NTVgor Q09QWSBndGVzdDEgVE8gc3Rkb3V0IFdJVEggKEZPUk1BVCBqc29uKTsKKwogLS0gbnVsbCB2YWx1 ZXMKIENSRUFURSBUQUJMRSBndGVzdDIgKGEgaW50IFBSSU1BUlkgS0VZLCBiIGludCBHRU5FUkFU RUQgQUxXQVlTIEFTIChOVUxMKSBWSVJUVUFMKTsKIElOU0VSVCBJTlRPIGd0ZXN0MiBWQUxVRVMg KDEpOwotLSAKMi4zNC4xCgo= --000000000000e34205064f6cad1a--