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 1u4erH-005Rrh-Hf for pgsql-hackers@arkaria.postgresql.org; Tue, 15 Apr 2025 11:53:44 +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 1u4erF-0094Dk-JU for pgsql-hackers@arkaria.postgresql.org; Tue, 15 Apr 2025 11:53:42 +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 1u4erF-0094Dc-5g for pgsql-hackers@lists.postgresql.org; Tue, 15 Apr 2025 11:53:42 +0000 Received: from mail-pg1-x534.google.com ([2607:f8b0:4864:20::534]) by magus.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 (Exim 4.96) (envelope-from ) id 1u4erC-000CwH-1X for pgsql-hackers@postgresql.org; Tue, 15 Apr 2025 11:53:41 +0000 Received: by mail-pg1-x534.google.com with SMTP id 41be03b00d2f7-af5cdf4a2f8so4006363a12.3 for ; Tue, 15 Apr 2025 04:53:38 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1744718016; x=1745322816; darn=postgresql.org; h=to:subject:message-id:date:from:mime-version:from:to:cc:subject :date:message-id:reply-to; bh=jtOMxX+FDyA9kim8ogFqk0v08ZAkdnTy0tUoRsAXBnY=; b=E7WiyfFYvD8WHBMwNqUckgQJGR02+vRtQjUK1u8BBpL2EC3l8WQyeMD/v206Ib3UgT dVZmREeu+l46jtfD12ix9K/FqgppXCCRU6ZulxbmFcw1qHYG77kgMMCJfGKxt41hwwYJ gnL8XanLu+MLs+z47gadUCUL+jVcaOydwsKoWE6h4TIVnzTgdJADeaa6mcwCZDoCf6QB yLMmjslT4qYNJ6vsSY4kF8yQWmnZzihpMMQajcxb1JkkVKqcSpr+QMDbEkiquwP1wJ/j Mql7vH3T1RZxw+SkiyHC72rUYyhJUAY7stIpWE0kCAuaUbxHobOBwVOt32ci+5cVgULK NMKQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1744718016; x=1745322816; h=to:subject:message-id:date:from:mime-version:x-gm-message-state :from:to:cc:subject:date:message-id:reply-to; bh=jtOMxX+FDyA9kim8ogFqk0v08ZAkdnTy0tUoRsAXBnY=; b=TwHwdzY5/Al+F4FtZ1YJRh2jxc09KdcBtBixgPqz7zm4/wPZN7e8/iTF/aPS9Dx24P b+p/CEwhRLN8pmAIP9u0qCOHbM73dnXZ/GvAZDAXa9RSJ/4bLUUO/IQOAkKnmgD36/7Z nkg/qau9BiOeP3EeEfrkc4QoDnsOKS+EMJ3hpLQWiu8F5EpepzTaN2FBQImqRgIYRmlC v/XhcWlcB8IN4byk5Eq9K4W6boGK7lRV7a3yK63jMEuUva/hh1ngi4xUb2piHgdPizwV TpuWRTJjjg3RzGMM+IjVLIWq4zSzcgiPd2AvIWDbY5Lza/Sh0BnTH1vnCwTgu/1uSa/8 59xQ== X-Gm-Message-State: AOJu0YzyGmUgDJaIlbPvYPXbjV/zPtNBT6KFHFo6PX3GpnoLFLU2wik6 iOPv4FweGzuXdIzZ2e60U/ewifxgRRQcwOSJwr9th2z9yCJlnl8jtSGj4sdy5nYxEZ0HqXhbujo aQY1E3iXPD62q9UqsOAE7hVHP8fjXT9OYV7I= X-Gm-Gg: ASbGncuVpT7xb2Svd3/IoZU/7d8cgQ2ykHNVDVnFZH9IZ+JmRZgqOBVDfuGfV5Op2k+ wpZl+7pStnPhGHFUEcuJX73rbwjTDYZmqS/qZojDYYiGephSSgu+osWC9eAM03GiHsByclea/Pe 22kxKl9pPgyy81mg1Nz9yBzg== X-Google-Smtp-Source: AGHT+IESlDd4IabHPMDGDt7jTwvx6NEAH6c/EQueKw/7ueMQgiL4r/Fx6XnhwARKpu2hdxXYBUL7lw4YMahdiBwjkPo= X-Received: by 2002:a17:90b:274e:b0:2f9:c139:b61f with SMTP id 98e67ed59e1d1-30823670d71mr26797839a91.14.1744718016385; Tue, 15 Apr 2025 04:53:36 -0700 (PDT) MIME-Version: 1.0 From: Ranier Vilela Date: Tue, 15 Apr 2025 08:53:43 -0300 X-Gm-Features: ATxdqUH3LLFAmKQXyaDma2SkWOY1wlXZ-ReNVmH86ISyMFfdV7zrtBvH4R6YQk4 Message-ID: Subject: Silence using uninitialized value To: Pg Hackers Content-Type: multipart/mixed; boundary="00000000000099b21e0632cfd150" List-Id: List-Help: List-Subscribe: List-Post: List-Owner: List-Archive: Archived-At: Precedence: bulk --00000000000099b21e0632cfd150 Content-Type: multipart/alternative; boundary="00000000000099b21e0632cfd14e" --00000000000099b21e0632cfd14e Content-Type: text/plain; charset="UTF-8" Hi. Per Coverity. Coverity has new report about tablecmds.c and tablespace.c tablecmds.c: CID 1608920: (#1 of 1): Uninitialized scalar variable (UNINIT) 6. uninit_use_in_call: Using uninitialized value *repl_val when calling heap_modify_tuple. CID 1608899: (#1 of 1): Uninitialized scalar variable (UNINIT) 16. uninit_use_in_call: Using uninitialized value *repl_val when calling heap_modify_tuple. tablespace.c: CID 1608898: (#1 of 1): Uninitialized scalar variable (UNINIT) 6. uninit_use_in_call: Using uninitialized value *repl_val when calling heap_modify_tuple. I don't think that is a bug. But really the uninitialized value is read here: (src/backend/access/common/heaptuple.c ) 3. read_value: Reading value replValues[attoff]. 1242 values[attoff] = replValues[attoff]; 1243 isnull[attoff] = replIsnull[attoff]; 1244 } There a common pattern in the source code: value = (Datum) 0; null = true; So I believe it is worth changing to the standard used. patch attached. best regards, Ranier Vilela --00000000000099b21e0632cfd14e Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable
Hi.

Per Coverity.
=
Coverity has new report about tablecmds.c and tablespace.c

tablecmds.c:
CID 1608920: (#1 of 1): Uninitialized sca= lar variable (UNINIT)
6. uninit_use_in_call: Using uninitialized value *repl_val w= hen calling heap_modify_tuple.


CID 1608899: (#1 of 1): Uninitialized sca= lar variable (UNINIT)
16. uninit_use_in_call: Using uninitialized value *repl_val w= hen calling heap_modify_tuple.


= tablespace.c:
CID 1608898: (#1 of 1): Uninitialized sca= lar variable (UNINIT)
6. uninit_use_in_call: Using uninitialized value *repl_val w= hen calling heap_modify_tuple.


= I don't think that is a bug.
But really the uninitialized val= ue is read here:

3. read_value: Reading value replValues[attoff]. =20
1242=C2=A0=C2=A0= =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0values<= /span>[attoff]=C2=A0=3D=C2=A0replValues= [attoff];
1243=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0= =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0isnull[attoff]=C2=A0=3D=C2=A0replIsnull[attoff];
1244=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0= }

There a common pattern in the source code:

value =3D (Datum) 0;
null =3D true;
<= div>
So I believe it is worth changing to the standard used.<= /div>

patch attached.

best rega= rds,
Ranier Vilela

--00000000000099b21e0632cfd14e-- --00000000000099b21e0632cfd150 Content-Type: application/octet-stream; name="fix_read_unitialized_variable_tablecmds.patch" Content-Disposition: attachment; filename="fix_read_unitialized_variable_tablecmds.patch" Content-Transfer-Encoding: base64 Content-ID: X-Attachment-Id: f_m9ifw5h60 ZGlmZiAtLWdpdCBhL3NyYy9iYWNrZW5kL2NvbW1hbmRzL3RhYmxlY21kcy5jIGIvc3JjL2JhY2tl bmQvY29tbWFuZHMvdGFibGVjbWRzLmMKaW5kZXggNjg2ZjE4NTBjYS4uMWRjZjZhYmQ0MiAxMDA2 NDQKLS0tIGEvc3JjL2JhY2tlbmQvY29tbWFuZHMvdGFibGVjbWRzLmMKKysrIGIvc3JjL2JhY2tl bmQvY29tbWFuZHMvdGFibGVjbWRzLmMKQEAgLTg5ODcsNyArODk4NywxMCBAQCBBVEV4ZWNTZXRT dGF0aXN0aWNzKFJlbGF0aW9uIHJlbCwgY29uc3QgY2hhciAqY29sTmFtZSwgaW50MTYgY29sTnVt LCBOb2RlICpuZXdWYQogCWlmICghbmV3dGFyZ2V0X2RlZmF1bHQpCiAJCXJlcGxfdmFsW0FudW1f cGdfYXR0cmlidXRlX2F0dHN0YXR0YXJnZXQgLSAxXSA9IG5ld3RhcmdldDsKIAllbHNlCisJewor CQlyZXBsX3ZhbFtBbnVtX3BnX2F0dHJpYnV0ZV9hdHRzdGF0dGFyZ2V0IC0gMV0gPSAoRGF0dW0p IDA7CiAJCXJlcGxfbnVsbFtBbnVtX3BnX2F0dHJpYnV0ZV9hdHRzdGF0dGFyZ2V0IC0gMV0gPSB0 cnVlOworCX0KIAlyZXBsX3JlcGxbQW51bV9wZ19hdHRyaWJ1dGVfYXR0c3RhdHRhcmdldCAtIDFd ID0gdHJ1ZTsKIAluZXd0dXBsZSA9IGhlYXBfbW9kaWZ5X3R1cGxlKHR1cGxlLCBSZWxhdGlvbkdl dERlc2NyKGF0dHJlbGF0aW9uKSwKIAkJCQkJCQkJIHJlcGxfdmFsLCByZXBsX251bGwsIHJlcGxf cmVwbCk7CkBAIC05MDYxLDcgKzkwNjQsMTAgQEAgQVRFeGVjU2V0T3B0aW9ucyhSZWxhdGlvbiBy ZWwsIGNvbnN0IGNoYXIgKmNvbE5hbWUsIE5vZGUgKm9wdGlvbnMsCiAJaWYgKG5ld09wdGlvbnMg IT0gKERhdHVtKSAwKQogCQlyZXBsX3ZhbFtBbnVtX3BnX2F0dHJpYnV0ZV9hdHRvcHRpb25zIC0g MV0gPSBuZXdPcHRpb25zOwogCWVsc2UKKwl7CisJCXJlcGxfdmFsW0FudW1fcGdfYXR0cmlidXRl X2F0dG9wdGlvbnMgLSAxXSA9IChEYXR1bSkgMDsKIAkJcmVwbF9udWxsW0FudW1fcGdfYXR0cmli dXRlX2F0dG9wdGlvbnMgLSAxXSA9IHRydWU7CisJfQogCXJlcGxfcmVwbFtBbnVtX3BnX2F0dHJp YnV0ZV9hdHRvcHRpb25zIC0gMV0gPSB0cnVlOwogCW5ld3R1cGxlID0gaGVhcF9tb2RpZnlfdHVw bGUodHVwbGUsIFJlbGF0aW9uR2V0RGVzY3IoYXR0cmVsYXRpb24pLAogCQkJCQkJCQkgcmVwbF92 YWwsIHJlcGxfbnVsbCwgcmVwbF9yZXBsKTsK --00000000000099b21e0632cfd150 Content-Type: application/octet-stream; name="fix-uninitialized-read-variable-tablespace.patch" Content-Disposition: attachment; filename="fix-uninitialized-read-variable-tablespace.patch" Content-Transfer-Encoding: base64 Content-ID: X-Attachment-Id: f_m9ifwcnm1 ZGlmZiAtLWdpdCBhL3NyYy9iYWNrZW5kL2NvbW1hbmRzL3RhYmxlc3BhY2UuYyBiL3NyYy9iYWNr ZW5kL2NvbW1hbmRzL3RhYmxlc3BhY2UuYwppbmRleCBhOTAwNWNjNzIxLi5jNTAyNGIxNjE0IDEw MDY0NAotLS0gYS9zcmMvYmFja2VuZC9jb21tYW5kcy90YWJsZXNwYWNlLmMKKysrIGIvc3JjL2Jh Y2tlbmQvY29tbWFuZHMvdGFibGVzcGFjZS5jCkBAIC0xMDYzLDcgKzEwNjMsMTAgQEAgQWx0ZXJU YWJsZVNwYWNlT3B0aW9ucyhBbHRlclRhYmxlU3BhY2VPcHRpb25zU3RtdCAqc3RtdCkKIAlpZiAo bmV3T3B0aW9ucyAhPSAoRGF0dW0pIDApCiAJCXJlcGxfdmFsW0FudW1fcGdfdGFibGVzcGFjZV9z cGNvcHRpb25zIC0gMV0gPSBuZXdPcHRpb25zOwogCWVsc2UKKwl7CisJCXJlcGxfdmFsW0FudW1f cGdfdGFibGVzcGFjZV9zcGNvcHRpb25zIC0gMV0gPSAoRGF0dW0pIDA7CiAJCXJlcGxfbnVsbFtB bnVtX3BnX3RhYmxlc3BhY2Vfc3Bjb3B0aW9ucyAtIDFdID0gdHJ1ZTsKKwl9CiAJcmVwbF9yZXBs W0FudW1fcGdfdGFibGVzcGFjZV9zcGNvcHRpb25zIC0gMV0gPSB0cnVlOwogCW5ld3R1cGxlID0g aGVhcF9tb2RpZnlfdHVwbGUodHVwLCBSZWxhdGlvbkdldERlc2NyKHJlbCksIHJlcGxfdmFsLAog CQkJCQkJCQkgcmVwbF9udWxsLCByZXBsX3JlcGwpOwo= --00000000000099b21e0632cfd150--