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 1nqwnZ-0004A7-CF for pgsql-bugs@arkaria.postgresql.org; Tue, 17 May 2022 12:59:38 +0000 Received: from localhost ([127.0.0.1] helo=malur.postgresql.org) by malur.postgresql.org with esmtp (Exim 4.92) (envelope-from ) id 1nqwnY-0006UR-4w for pgsql-bugs@arkaria.postgresql.org; Tue, 17 May 2022 12:59:36 +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 1nqwnX-0006UI-IS for pgsql-bugs@lists.postgresql.org; Tue, 17 May 2022 12:59:35 +0000 Received: from mail.postgrespro.ru ([93.174.131.139]) by makus.postgresql.org with esmtp (Exim 4.92) (envelope-from ) id 1nqwnP-0001xY-St for pgsql-bugs@lists.postgresql.org; Tue, 17 May 2022 12:59:34 +0000 Received: from [192.168.28.53] (cyclops.postgrespro.ru [93.174.131.138]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (Client did not present a certificate) by mail.postgrespro.ru (Postfix) with ESMTPSA id DBB9B21C043D for ; Tue, 17 May 2022 15:59:24 +0300 (MSK) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=postgrespro.ru; s=mail; t=1652792365; bh=RF+P22Gmn12OcG7V3cMCAwyruDocpGsiLzYil49fS2Y=; h=Date:Subject:From:To:References:In-Reply-To; b=o7IA9N2aXsn5bgG9tnq8zu+mAIp+itIPC66EdbBYNo7alk7ZBKTyjXwC+KgNyFnER 88nns5aN2AdEVqtryLt2h9QouNfYDGpNppAJDRnAKz7jnN/+XPf/o3v2qXpgOLYOH8 oB9GtlaA7dK5WCwhmaEPUyGkeE7UOSu6z4oRCvBQ= Content-Type: multipart/mixed; boundary="------------s0lTp7n3vq49pHH3h0ISncMU" Message-ID: Date: Tue, 17 May 2022 17:59:23 +0500 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:91.0) Gecko/20100101 Thunderbird/91.9.0 Subject: Re: Negative value of numGroups Content-Language: en-US From: Andrey Lepikhov To: pgsql-bugs@lists.postgresql.org References: Organization: Postgres Professional In-Reply-To: List-Id: List-Help: List-Subscribe: List-Post: List-Owner: List-Archive: Archived-At: Precedence: bulk This is a multi-part message in MIME format. --------------s0lTp7n3vq49pHH3h0ISncMU Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit On 13/5/2022 11:56, Andrey Lepikhov wrote: > (long) Min(numGroups, (double) LONG_MAX); > > can return negative value, if numGroups > LONG_MAX. So, because this problem still breaks sqlancer tests I prepared a patch (with regression test) that fixes it. -- regards, Andrey Lepikhov Postgres Professional --------------s0lTp7n3vq49pHH3h0ISncMU Content-Type: text/plain; charset=UTF-8; name="0001-Safe-calculation-of-the-minimum-number-of-groups-fro.patch" Content-Disposition: attachment; filename*0="0001-Safe-calculation-of-the-minimum-number-of-groups-fro.pa"; filename*1="tch" Content-Transfer-Encoding: base64 RnJvbSAyNGEyYzY2NjRlMzg0NDhmNjUyYTE3Yjk2ZDE2Y2NmNThiY2Y0NjQzIE1vbiBTZXAg MTcgMDA6MDA6MDAgMjAwMQpGcm9tOiAiQW5kcmV5IFYuIExlcGlraG92IiA8YS5sZXBpa2hv dkBwb3N0Z3Jlc3Byby5ydT4KRGF0ZTogVHVlLCAxNyBNYXkgMjAyMiAxNzo0ODo0OSArMDUw MApTdWJqZWN0OiBbUEFUQ0hdIFNhZmUgY2FsY3VsYXRpb24gb2YgdGhlIG1pbmltdW0gbnVt YmVyIG9mIGdyb3VwcyBmcm9tIGNvdXBsZQogb2YgYSBsb25nIGFuZCBhIGRvdWJsZSB2YWx1 ZXMuIFByZXZpb3VzIGltcGxlbWVudGF0aW9uIHJldHVybmVkIG5lZ2F0aXZlCiB2YWx1ZSBp biB0aGUgY2FzZSBvZiBhIGRvdWJsZSA+IExPTkdfTUFYIHZhbHVlLgoKLS0tCiBzcmMvYmFj a2VuZC9leGVjdXRvci9ub2RlU3VicGxhbi5jICAgICAgIHwgIDMgKy0KIHNyYy9iYWNrZW5k L29wdGltaXplci9wbGFuL2NyZWF0ZXBsYW4uYyAgfCAgOCArKystLQogc3JjL3Rlc3QvcmVn cmVzcy9leHBlY3RlZC9hZ2dyZWdhdGVzLm91dCB8IDQxICsrKysrKysrKysrKysrKysrKysr KysrKwogc3JjL3Rlc3QvcmVncmVzcy9zcWwvYWdncmVnYXRlcy5zcWwgICAgICB8IDEyICsr KysrKysKIDQgZmlsZXMgY2hhbmdlZCwgNjAgaW5zZXJ0aW9ucygrKSwgNCBkZWxldGlvbnMo LSkKCmRpZmYgLS1naXQgYS9zcmMvYmFja2VuZC9leGVjdXRvci9ub2RlU3VicGxhbi5jIGIv c3JjL2JhY2tlbmQvZXhlY3V0b3Ivbm9kZVN1YnBsYW4uYwppbmRleCA2MGQyMjkwMDMwLi44 OWRmZTA5OTcwIDEwMDY0NAotLS0gYS9zcmMvYmFja2VuZC9leGVjdXRvci9ub2RlU3VicGxh bi5jCisrKyBiL3NyYy9iYWNrZW5kL2V4ZWN1dG9yL25vZGVTdWJwbGFuLmMKQEAgLTQ5OCw3 ICs0OTgsOCBAQCBidWlsZFN1YlBsYW5IYXNoKFN1YlBsYW5TdGF0ZSAqbm9kZSwgRXhwckNv bnRleHQgKmVjb250ZXh0KQogCW5vZGUtPmhhdmVoYXNocm93cyA9IGZhbHNlOwogCW5vZGUt PmhhdmVudWxscm93cyA9IGZhbHNlOwogCi0JbmJ1Y2tldHMgPSAobG9uZykgTWluKHBsYW5z dGF0ZS0+cGxhbi0+cGxhbl9yb3dzLCAoZG91YmxlKSBMT05HX01BWCk7CisJbmJ1Y2tldHMg PSAocGxhbnN0YXRlLT5wbGFuLT5wbGFuX3Jvd3MgPCAoZG91YmxlKSBMT05HX01BWCkgPwor CQkJCQkJCQkobG9uZykgcGxhbnN0YXRlLT5wbGFuLT5wbGFuX3Jvd3MgOiBMT05HX01BWDsK IAlpZiAobmJ1Y2tldHMgPCAxKQogCQluYnVja2V0cyA9IDE7CiAKZGlmZiAtLWdpdCBhL3Ny Yy9iYWNrZW5kL29wdGltaXplci9wbGFuL2NyZWF0ZXBsYW4uYyBiL3NyYy9iYWNrZW5kL29w dGltaXplci9wbGFuL2NyZWF0ZXBsYW4uYwppbmRleCBmNGNjNTYwMzljLi5mYjk0ZDI3NDcz IDEwMDY0NAotLS0gYS9zcmMvYmFja2VuZC9vcHRpbWl6ZXIvcGxhbi9jcmVhdGVwbGFuLmMK KysrIGIvc3JjL2JhY2tlbmQvb3B0aW1pemVyL3BsYW4vY3JlYXRlcGxhbi5jCkBAIC0yNzI0 LDcgKzI3MjQsOCBAQCBjcmVhdGVfc2V0b3BfcGxhbihQbGFubmVySW5mbyAqcm9vdCwgU2V0 T3BQYXRoICpiZXN0X3BhdGgsIGludCBmbGFncykKIAkJCQkJCQkJICBmbGFncyB8IENQX0xB QkVMX1RMSVNUKTsKIAogCS8qIENvbnZlcnQgbnVtR3JvdXBzIHRvIGxvbmcgaW50IC0tLSBi dXQgJ3dhcmUgb3ZlcmZsb3chICovCi0JbnVtR3JvdXBzID0gKGxvbmcpIE1pbihiZXN0X3Bh dGgtPm51bUdyb3VwcywgKGRvdWJsZSkgTE9OR19NQVgpOworCW51bUdyb3VwcyA9IChiZXN0 X3BhdGgtPm51bUdyb3VwcyA8IChkb3VibGUpIExPTkdfTUFYKSA/CisJCQkJCQkJCQkJKGxv bmcpIGJlc3RfcGF0aC0+bnVtR3JvdXBzIDogTE9OR19NQVg7CiAKIAlwbGFuID0gbWFrZV9z ZXRvcChiZXN0X3BhdGgtPmNtZCwKIAkJCQkJICBiZXN0X3BhdGgtPnN0cmF0ZWd5LApAQCAt Mjc2MSw3ICsyNzYyLDggQEAgY3JlYXRlX3JlY3Vyc2l2ZXVuaW9uX3BsYW4oUGxhbm5lcklu Zm8gKnJvb3QsIFJlY3Vyc2l2ZVVuaW9uUGF0aCAqYmVzdF9wYXRoKQogCXRsaXN0ID0gYnVp bGRfcGF0aF90bGlzdChyb290LCAmYmVzdF9wYXRoLT5wYXRoKTsKIAogCS8qIENvbnZlcnQg bnVtR3JvdXBzIHRvIGxvbmcgaW50IC0tLSBidXQgJ3dhcmUgb3ZlcmZsb3chICovCi0JbnVt R3JvdXBzID0gKGxvbmcpIE1pbihiZXN0X3BhdGgtPm51bUdyb3VwcywgKGRvdWJsZSkgTE9O R19NQVgpOworCW51bUdyb3VwcyA9IChiZXN0X3BhdGgtPm51bUdyb3VwcyA8IChkb3VibGUp IExPTkdfTUFYKSA/CisJCQkJCQkJCQkJKGxvbmcpIGJlc3RfcGF0aC0+bnVtR3JvdXBzIDog TE9OR19NQVg7CiAKIAlwbGFuID0gbWFrZV9yZWN1cnNpdmVfdW5pb24odGxpc3QsCiAJCQkJ CQkJCWxlZnRwbGFuLApAQCAtNjU1NCw3ICs2NTU2LDcgQEAgbWFrZV9hZ2coTGlzdCAqdGxp c3QsIExpc3QgKnF1YWwsCiAJbG9uZwkJbnVtR3JvdXBzOwogCiAJLyogUmVkdWNlIHRvIGxv bmcsIGJ1dCAnd2FyZSBvdmVyZmxvdyEgKi8KLQludW1Hcm91cHMgPSAobG9uZykgTWluKGRO dW1Hcm91cHMsIChkb3VibGUpIExPTkdfTUFYKTsKKwludW1Hcm91cHMgPSBkTnVtR3JvdXBz IDwgKGRvdWJsZSkgTE9OR19NQVggPyAobG9uZykgZE51bUdyb3VwcyA6IExPTkdfTUFYOwog CiAJbm9kZS0+YWdnc3RyYXRlZ3kgPSBhZ2dzdHJhdGVneTsKIAlub2RlLT5hZ2dzcGxpdCA9 IGFnZ3NwbGl0OwpkaWZmIC0tZ2l0IGEvc3JjL3Rlc3QvcmVncmVzcy9leHBlY3RlZC9hZ2dy ZWdhdGVzLm91dCBiL3NyYy90ZXN0L3JlZ3Jlc3MvZXhwZWN0ZWQvYWdncmVnYXRlcy5vdXQK aW5kZXggNjAxMDQ3ZmEzZC4uMDAzNzk4MWZjNCAxMDA2NDQKLS0tIGEvc3JjL3Rlc3QvcmVn cmVzcy9leHBlY3RlZC9hZ2dyZWdhdGVzLm91dAorKysgYi9zcmMvdGVzdC9yZWdyZXNzL2V4 cGVjdGVkL2FnZ3JlZ2F0ZXMub3V0CkBAIC0zMDQ5LDEwICszMDQ5LDUxIEBAIHNldCB3b3Jr X21lbSB0byBkZWZhdWx0OwogLS0tLSstLS0tKy0tLS0KICgwIHJvd3MpCiAKK0NSRUFURSBU QUJMRSBhZ2dfZ3JvdXBfNSBBUyAoCisJU0VMRUNUIDEgQVMgeCwgTlVMTCBBUyB4MSBGUk9N IGdlbmVyYXRlX3NlcmllcygxLDFlNSkgeCk7CitBTkFMWVpFIGFnZ19ncm91cF81OworLS0g U3RyZXNzIHRlc3QgZm9yIGdyb3VwaW5nOiBleGNlZWQgbnVtYmVyIG9mIDJeNTMgZ3JvdXBz IHRvIGNoZWNrCistLSBsb25nIDwtPiBkb3VibGUgY29udmVyc2lvbi4KK0VYUExBSU4gKENP U1RTIE9GRikgU0VMRUNUIHQxLngxIEZST00KKyAgYWdnX2dyb3VwXzUgdDEsYWdnX2dyb3Vw XzUgdDIsYWdnX2dyb3VwXzUgdDMsYWdnX2dyb3VwXzUgdDQsYWdnX2dyb3VwXzUgdDUsCisg IGFnZ19ncm91cF81IHQ2LGFnZ19ncm91cF81IHQ3LGFnZ19ncm91cF81IHQ4LGFnZ19ncm91 cF81IHQ5CitHUk9VUCBCWSAodDEueDEsdDIueDEsdDMueDEsdDQueDEsdDUueDEsdDYueDEs dDcueDEsdDgueDEsdDkueDEpOworICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgUVVFUlkgUExBTiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg IAorLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIEhhc2hBZ2dyZWdhdGUK KyAgIEdyb3VwIEtleTogdDEueDEsIHQyLngxLCB0My54MSwgdDQueDEsIHQ1LngxLCB0Ni54 MSwgdDcueDEsIHQ4LngxLCB0OS54MQorICAgLT4gIE5lc3RlZCBMb29wCisgICAgICAgICAt PiAgTmVzdGVkIExvb3AKKyAgICAgICAgICAgICAgIC0+ICBOZXN0ZWQgTG9vcAorICAgICAg ICAgICAgICAgICAgICAgLT4gIE5lc3RlZCBMb29wCisgICAgICAgICAgICAgICAgICAgICAg ICAgICAtPiAgTmVzdGVkIExvb3AKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg IC0+ICBOZXN0ZWQgTG9vcAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgLT4gIE5lc3RlZCBMb29wCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAtPiAgTmVzdGVkIExvb3AKKyAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgIC0+ICBTZXEgU2NhbiBvbiBhZ2dfZ3JvdXBfNSB0 MQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg LT4gIE1hdGVyaWFsaXplCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAtPiAgU2VxIFNjYW4gb24gYWdnX2dyb3VwXzUgdDIKKyAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC0+ICBNYXRlcmlh bGl6ZQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgLT4gIFNlcSBTY2FuIG9uIGFnZ19ncm91cF81IHQzCisgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAtPiAgTWF0ZXJpYWxpemUKKyAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgIC0+ICBTZXEgU2NhbiBvbiBhZ2dfZ3JvdXBf NSB0NAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLT4gIE1hdGVyaWFsaXpl CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAtPiAgU2VxIFNjYW4g b24gYWdnX2dyb3VwXzUgdDUKKyAgICAgICAgICAgICAgICAgICAgICAgICAgIC0+ICBNYXRl cmlhbGl6ZQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLT4gIFNlcSBTY2Fu IG9uIGFnZ19ncm91cF81IHQ2CisgICAgICAgICAgICAgICAgICAgICAtPiAgTWF0ZXJpYWxp emUKKyAgICAgICAgICAgICAgICAgICAgICAgICAgIC0+ICBTZXEgU2NhbiBvbiBhZ2dfZ3Jv dXBfNSB0NworICAgICAgICAgICAgICAgLT4gIE1hdGVyaWFsaXplCisgICAgICAgICAgICAg ICAgICAgICAtPiAgU2VxIFNjYW4gb24gYWdnX2dyb3VwXzUgdDgKKyAgICAgICAgIC0+ICBN YXRlcmlhbGl6ZQorICAgICAgICAgICAgICAgLT4gIFNlcSBTY2FuIG9uIGFnZ19ncm91cF81 IHQ5CisoMjcgcm93cykKKwogZHJvcCB0YWJsZSBhZ2dfZ3JvdXBfMTsKIGRyb3AgdGFibGUg YWdnX2dyb3VwXzI7CiBkcm9wIHRhYmxlIGFnZ19ncm91cF8zOwogZHJvcCB0YWJsZSBhZ2df Z3JvdXBfNDsKK2Ryb3AgdGFibGUgYWdnX2dyb3VwXzU7CiBkcm9wIHRhYmxlIGFnZ19oYXNo XzE7CiBkcm9wIHRhYmxlIGFnZ19oYXNoXzI7CiBkcm9wIHRhYmxlIGFnZ19oYXNoXzM7CmRp ZmYgLS1naXQgYS9zcmMvdGVzdC9yZWdyZXNzL3NxbC9hZ2dyZWdhdGVzLnNxbCBiL3NyYy90 ZXN0L3JlZ3Jlc3Mvc3FsL2FnZ3JlZ2F0ZXMuc3FsCmluZGV4IGM2ZTBkN2JhMmIuLmUxOWQ3 NGZlZjUgMTAwNjQ0Ci0tLSBhL3NyYy90ZXN0L3JlZ3Jlc3Mvc3FsL2FnZ3JlZ2F0ZXMuc3Fs CisrKyBiL3NyYy90ZXN0L3JlZ3Jlc3Mvc3FsL2FnZ3JlZ2F0ZXMuc3FsCkBAIC0xMzUxLDEw ICsxMzUxLDIyIEBAIHNldCB3b3JrX21lbSB0byBkZWZhdWx0OwogICB1bmlvbiBhbGwKIChz ZWxlY3QgKiBmcm9tIGFnZ19ncm91cF80IGV4Y2VwdCBzZWxlY3QgKiBmcm9tIGFnZ19oYXNo XzQpOwogCitDUkVBVEUgVEFCTEUgYWdnX2dyb3VwXzUgQVMgKAorCVNFTEVDVCAxIEFTIHgs IE5VTEwgQVMgeDEgRlJPTSBnZW5lcmF0ZV9zZXJpZXMoMSwxZTUpIHgpOworQU5BTFlaRSBh Z2dfZ3JvdXBfNTsKKworLS0gU3RyZXNzIHRlc3QgZm9yIGdyb3VwaW5nOiBleGNlZWQgbnVt YmVyIG9mIDJeNTMgZ3JvdXBzIHRvIGNoZWNrCistLSBsb25nIDwtPiBkb3VibGUgY29udmVy c2lvbi4KK0VYUExBSU4gKENPU1RTIE9GRikgU0VMRUNUIHQxLngxIEZST00KKyAgYWdnX2dy b3VwXzUgdDEsYWdnX2dyb3VwXzUgdDIsYWdnX2dyb3VwXzUgdDMsYWdnX2dyb3VwXzUgdDQs YWdnX2dyb3VwXzUgdDUsCisgIGFnZ19ncm91cF81IHQ2LGFnZ19ncm91cF81IHQ3LGFnZ19n cm91cF81IHQ4LGFnZ19ncm91cF81IHQ5CitHUk9VUCBCWSAodDEueDEsdDIueDEsdDMueDEs dDQueDEsdDUueDEsdDYueDEsdDcueDEsdDgueDEsdDkueDEpOworCiBkcm9wIHRhYmxlIGFn Z19ncm91cF8xOwogZHJvcCB0YWJsZSBhZ2dfZ3JvdXBfMjsKIGRyb3AgdGFibGUgYWdnX2dy b3VwXzM7CiBkcm9wIHRhYmxlIGFnZ19ncm91cF80OworZHJvcCB0YWJsZSBhZ2dfZ3JvdXBf NTsKIGRyb3AgdGFibGUgYWdnX2hhc2hfMTsKIGRyb3AgdGFibGUgYWdnX2hhc2hfMjsKIGRy b3AgdGFibGUgYWdnX2hhc2hfMzsKLS0gCjIuMzYuMAoK --------------s0lTp7n3vq49pHH3h0ISncMU--