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 1pSD4Q-000831-IW for pgsql-hackers@arkaria.postgresql.org; Wed, 15 Feb 2023 08:23:18 +0000 Received: from localhost ([127.0.0.1] helo=malur.postgresql.org) by malur.postgresql.org with esmtp (Exim 4.92) (envelope-from ) id 1pSD4P-0007FK-Dn for pgsql-hackers@arkaria.postgresql.org; Wed, 15 Feb 2023 08:23:17 +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 1pSD4O-0007FB-VB for pgsql-hackers@lists.postgresql.org; Wed, 15 Feb 2023 08:23:17 +0000 Received: from mail-wm1-x331.google.com ([2a00:1450:4864:20::331]) by makus.postgresql.org with esmtps (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92) (envelope-from ) id 1pSD4E-00089C-HT for pgsql-hackers@lists.postgresql.org; Wed, 15 Feb 2023 08:23:15 +0000 Received: by mail-wm1-x331.google.com with SMTP id j29-20020a05600c1c1d00b003dc52fed235so873149wms.1 for ; Wed, 15 Feb 2023 00:23:06 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=in-reply-to:from:content-language:references:cc:to:subject :user-agent:mime-version:date:message-id:from:to:cc:subject:date :message-id:reply-to; bh=4QcSJNYPgPaBdfcBBWeic5ueY8jt34iRTx5UYaSdWyo=; b=jPQRjnGQ6KtZQChh7fXJh8Qvuzqr/BruqmvxOU7PFvDvJuqRxVjYCaNARDthqhuee7 P1YcexsPzetIiKAeWwb91QK1hgfVXaBcbjJe4Li2aPl1zM+dwocS0OBtju6QzzFzRm+k 7zdzN0kZI07xz4vyBYcCQWdmaq1fx/Es+2XUB4G9VZ2ANsaGf2lUIMkHjyYVx1wdrS0g XKWzH/J4zCnago5Gzih4BLHr0BxAx45GxhM3CUHUfVPAvW3lDoNGppgAqjsG983USwJB GCBE68fmsC+TVbPiQ2XdPtXSM3qe1wTw8aqlDUZbTqxx2zbvikBUA7OQVdPQw2Pjpmok pazw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=in-reply-to:from:content-language:references:cc:to:subject :user-agent:mime-version:date:message-id:x-gm-message-state:from:to :cc:subject:date:message-id:reply-to; bh=4QcSJNYPgPaBdfcBBWeic5ueY8jt34iRTx5UYaSdWyo=; b=pjKdz5EDRyV+F+BnR7pt6f9dik8/v5JL7QE5RQG7uTIJiNlDG38IyEjQWhf+5JxrM0 l9aj0p3aYzlswjJh2ykQ/vrsSs8hH/aYzp5ENu/KeUshedBH+j4DC05yBi40nECSm+nD 48j4uQC7i3fz4q1RBHjjEhkdRLh9oawD6jYrwkDlNCKHrW5mQNODsjVTNOPYECYfwLFT ztSktJmpZvv/OezLcAXhyOG+LewZcgAGCUHfVNOxozY8v3v61OcqjdMUgtPvaeVwhajX rHW37K8B+mKUwVaO2yP/v+ZG2r6/gFdn8CIoMWw1Ycflptp+rQP9sxZ7w/xVJEOtR9+A 3DlQ== X-Gm-Message-State: AO0yUKUMuxgG1iaE5OZN+bZO6FChf15R2hpGEguXm4beo/+9/OpmsRqp eeMesQO5wUXWwkrqkTgMB7M= X-Google-Smtp-Source: AK7set/BIeRR/ww1Ihn6QaL4hUXFZFxzh9BUJKl4i0f4/WlNn0jK70SwLMxIFtw5TJdFcxqzO77IBQ== X-Received: by 2002:a05:600c:18a2:b0:3dc:5abb:2f50 with SMTP id x34-20020a05600c18a200b003dc5abb2f50mr1360051wmp.19.1676449385043; Wed, 15 Feb 2023 00:23:05 -0800 (PST) Received: from [192.168.20.42] ([54.239.6.185]) by smtp.gmail.com with ESMTPSA id c13-20020adffb4d000000b002c573a6216fsm21669wrs.37.2023.02.15.00.23.04 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Wed, 15 Feb 2023 00:23:04 -0800 (PST) Content-Type: multipart/mixed; boundary="------------ZI403tkz1VXZp8D3MKcYi0yL" Message-ID: <130095b4-7c6d-b6f1-69d4-94f66231f81d@gmail.com> Date: Wed, 15 Feb 2023 09:21:48 +0100 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:102.0) Gecko/20100101 Thunderbird/102.7.1 Subject: Re: Reconcile stats in find_tabstat_entry() and get rid of PgStat_BackendFunctionEntry To: Kyotaro Horiguchi Cc: andres@anarazel.de, pgsql-hackers@lists.postgresql.org References: <20230214.151102.1070436528757437157.horikyota.ntt@gmail.com> <9262b2a9-6785-1f83-bf7f-7fcf90c2c113@gmail.com> <20230215.095644.822493184688844040.horikyota.ntt@gmail.com> Content-Language: en-US From: "Drouvot, Bertrand" In-Reply-To: <20230215.095644.822493184688844040.horikyota.ntt@gmail.com> 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. --------------ZI403tkz1VXZp8D3MKcYi0yL Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit Hi, On 2/15/23 1:56 AM, Kyotaro Horiguchi wrote: > At Tue, 14 Feb 2023 15:43:26 +0100, "Drouvot, Bertrand" wrote in > > The comment assumed that the function directly returns an entry from > shared memory, but now it copies the entry's contents into a palloc'ed > memory and stores the sums of some counters for the current > transaction in it. Do you think we should update the comment to > reflect this change? > Good point, thanks! Yeah, definitively, done in V5 attached. Regards, -- Bertrand Drouvot PostgreSQL Contributors Team RDS Open Source Databases Amazon Web Services: https://aws.amazon.com --------------ZI403tkz1VXZp8D3MKcYi0yL Content-Type: text/plain; charset=UTF-8; name="v5-0001-find_tabstat_entry_recon.patch" Content-Disposition: attachment; filename="v5-0001-find_tabstat_entry_recon.patch" Content-Transfer-Encoding: base64 ZGlmZiAtLWdpdCBhL3NyYy9iYWNrZW5kL3V0aWxzL2FjdGl2aXR5L3Bnc3RhdF9yZWxhdGlv bi5jIGIvc3JjL2JhY2tlbmQvdXRpbHMvYWN0aXZpdHkvcGdzdGF0X3JlbGF0aW9uLmMKaW5k ZXggZjc5M2FjMTUxNi4uYjI2ZTJhNWE3YSAxMDA2NDQKLS0tIGEvc3JjL2JhY2tlbmQvdXRp bHMvYWN0aXZpdHkvcGdzdGF0X3JlbGF0aW9uLmMKKysrIGIvc3JjL2JhY2tlbmQvdXRpbHMv YWN0aXZpdHkvcGdzdGF0X3JlbGF0aW9uLmMKQEAgLTQ3MSwyMCArNDcxLDQ2IEBAIHBnc3Rh dF9mZXRjaF9zdGF0X3RhYmVudHJ5X2V4dChib29sIHNoYXJlZCwgT2lkIHJlbG9pZCkKICAq IEZpbmQgYW55IGV4aXN0aW5nIFBnU3RhdF9UYWJsZVN0YXR1cyBlbnRyeSBmb3IgcmVsX2lk IGluIHRoZSBjdXJyZW50CiAgKiBkYXRhYmFzZS4gSWYgbm90IGZvdW5kLCB0cnkgZmluZGlu ZyBmcm9tIHNoYXJlZCB0YWJsZXMuCiAgKgorICogSWYgYW4gZW50cnkgaXMgZm91bmQsIGNv cHkgaXQgYW5kIGluY3JlbWVudCB0aGUgY29weSdzIGNvdW50ZXJzIHdpdGggdGhlaXIKKyAq IHN1YnRyYW5zYWN0aW9ucyBjb3VudGVycGFydHMuIFRoZW4gcmV0dXJuIHRoZSBjb3B5LiBU aGVyZSBpcyBubyBuZWVkIGZvciB0aGUKKyAqIGNhbGxlciB0byBwZnJlZSB0aGUgY29weSBh cyB0aGUgTWVtb3J5Q29udGV4dCB3aWxsIGJlIHJlc2V0IHNvb24gYWZ0ZXIuCisgKgogICog SWYgbm8gZW50cnkgZm91bmQsIHJldHVybiBOVUxMLCBkb24ndCBjcmVhdGUgYSBuZXcgb25l CiAgKi8KIFBnU3RhdF9UYWJsZVN0YXR1cyAqCiBmaW5kX3RhYnN0YXRfZW50cnkoT2lkIHJl bF9pZCkKIHsKIAlQZ1N0YXRfRW50cnlSZWYgKmVudHJ5X3JlZjsKKwlQZ1N0YXRfVGFibGVY YWN0U3RhdHVzICp0cmFuczsKKwlQZ1N0YXRfVGFibGVTdGF0dXMgKnRhYmVudHJ5ID0gTlVM TDsKKwlQZ1N0YXRfVGFibGVTdGF0dXMgKnRhYmxlc3RhdHVzID0gTlVMTDsKIAogCWVudHJ5 X3JlZiA9IHBnc3RhdF9mZXRjaF9wZW5kaW5nX2VudHJ5KFBHU1RBVF9LSU5EX1JFTEFUSU9O LCBNeURhdGFiYXNlSWQsIHJlbF9pZCk7CiAJaWYgKCFlbnRyeV9yZWYpCisJewogCQllbnRy eV9yZWYgPSBwZ3N0YXRfZmV0Y2hfcGVuZGluZ19lbnRyeShQR1NUQVRfS0lORF9SRUxBVElP TiwgSW52YWxpZE9pZCwgcmVsX2lkKTsKKwkJaWYoIWVudHJ5X3JlZikKKwkJCXJldHVybiB0 YWJsZXN0YXR1czsKKwl9CisKKwl0YWJlbnRyeSA9IChQZ1N0YXRfVGFibGVTdGF0dXMgKikg ZW50cnlfcmVmLT5wZW5kaW5nOworCXRhYmxlc3RhdHVzID0gcGFsbG9jKHNpemVvZihQZ1N0 YXRfVGFibGVTdGF0dXMpKTsKKwkqdGFibGVzdGF0dXMgPSAqdGFiZW50cnk7CisKKwkvKgor CSAqIExpdmUgc3VidHJhbnNhY3Rpb25zJyBjb3VudHMgYXJlbid0IGluIHRfY291bnRzIHll dC4gVGhpcyBpcyBub3QgYSBob3QKKwkgKiBjb2RlIHBhdGggc28gaXQgc291bmRzIG9rIHRv IHJlY29uY2lsZSBmb3IgdHVwbGVzX2luc2VydGVkLAorCSAqIHR1cGxlc191cGRhdGVkIGFu ZCB0dXBsZXNfZGVsZXRlZCBldmVuIGlmIHRoaXMgaXMgbm90IHdoYXQgdGhlIGNhbGxlcgor CSAqIGlzIGludGVyZXN0ZWQgaW4uCisJICovCisJZm9yICh0cmFucyA9IHRhYmVudHJ5LT50 cmFuczsgdHJhbnMgIT0gTlVMTDsgdHJhbnMgPSB0cmFucy0+dXBwZXIpCisJeworCQl0YWJs ZXN0YXR1cy0+dF9jb3VudHMudF90dXBsZXNfaW5zZXJ0ZWQgKz0gdHJhbnMtPnR1cGxlc19p bnNlcnRlZDsKKwkJdGFibGVzdGF0dXMtPnRfY291bnRzLnRfdHVwbGVzX3VwZGF0ZWQgKz0g dHJhbnMtPnR1cGxlc191cGRhdGVkOworCQl0YWJsZXN0YXR1cy0+dF9jb3VudHMudF90dXBs ZXNfZGVsZXRlZCArPSB0cmFucy0+dHVwbGVzX2RlbGV0ZWQ7CisJfQogCi0JaWYgKGVudHJ5 X3JlZikKLQkJcmV0dXJuIGVudHJ5X3JlZi0+cGVuZGluZzsKLQlyZXR1cm4gTlVMTDsKKwly ZXR1cm4gdGFibGVzdGF0dXM7CiB9CiAKIC8qCmRpZmYgLS1naXQgYS9zcmMvYmFja2VuZC91 dGlscy9hZHQvcGdzdGF0ZnVuY3MuYyBiL3NyYy9iYWNrZW5kL3V0aWxzL2FkdC9wZ3N0YXRm dW5jcy5jCmluZGV4IDlkNzA3YzM1MjEuLjQwNWQwODBkYWEgMTAwNjQ0Ci0tLSBhL3NyYy9i YWNrZW5kL3V0aWxzL2FkdC9wZ3N0YXRmdW5jcy5jCisrKyBiL3NyYy9iYWNrZW5kL3V0aWxz L2FkdC9wZ3N0YXRmdW5jcy5jCkBAIC0xNTQ4LDE3ICsxNTQ4LDExIEBAIHBnX3N0YXRfZ2V0 X3hhY3RfdHVwbGVzX2luc2VydGVkKFBHX0ZVTkNUSU9OX0FSR1MpCiAJT2lkCQkJcmVsaWQg PSBQR19HRVRBUkdfT0lEKDApOwogCWludDY0CQlyZXN1bHQ7CiAJUGdTdGF0X1RhYmxlU3Rh dHVzICp0YWJlbnRyeTsKLQlQZ1N0YXRfVGFibGVYYWN0U3RhdHVzICp0cmFuczsKIAogCWlm ICgodGFiZW50cnkgPSBmaW5kX3RhYnN0YXRfZW50cnkocmVsaWQpKSA9PSBOVUxMKQogCQly ZXN1bHQgPSAwOwogCWVsc2UKLQl7Ci0JCXJlc3VsdCA9IHRhYmVudHJ5LT50X2NvdW50cy50 X3R1cGxlc19pbnNlcnRlZDsKLQkJLyogbGl2ZSBzdWJ0cmFuc2FjdGlvbnMnIGNvdW50cyBh cmVuJ3QgaW4gdF90dXBsZXNfaW5zZXJ0ZWQgeWV0ICovCi0JCWZvciAodHJhbnMgPSB0YWJl bnRyeS0+dHJhbnM7IHRyYW5zICE9IE5VTEw7IHRyYW5zID0gdHJhbnMtPnVwcGVyKQotCQkJ cmVzdWx0ICs9IHRyYW5zLT50dXBsZXNfaW5zZXJ0ZWQ7Ci0JfQorCQlyZXN1bHQgPSAoaW50 NjQpICh0YWJlbnRyeS0+dF9jb3VudHMudF90dXBsZXNfaW5zZXJ0ZWQpOwogCiAJUEdfUkVU VVJOX0lOVDY0KHJlc3VsdCk7CiB9CkBAIC0xNTY5LDE3ICsxNTYzLDExIEBAIHBnX3N0YXRf Z2V0X3hhY3RfdHVwbGVzX3VwZGF0ZWQoUEdfRlVOQ1RJT05fQVJHUykKIAlPaWQJCQlyZWxp ZCA9IFBHX0dFVEFSR19PSUQoMCk7CiAJaW50NjQJCXJlc3VsdDsKIAlQZ1N0YXRfVGFibGVT dGF0dXMgKnRhYmVudHJ5OwotCVBnU3RhdF9UYWJsZVhhY3RTdGF0dXMgKnRyYW5zOwogCiAJ aWYgKCh0YWJlbnRyeSA9IGZpbmRfdGFic3RhdF9lbnRyeShyZWxpZCkpID09IE5VTEwpCiAJ CXJlc3VsdCA9IDA7CiAJZWxzZQotCXsKLQkJcmVzdWx0ID0gdGFiZW50cnktPnRfY291bnRz LnRfdHVwbGVzX3VwZGF0ZWQ7Ci0JCS8qIGxpdmUgc3VidHJhbnNhY3Rpb25zJyBjb3VudHMg YXJlbid0IGluIHRfdHVwbGVzX3VwZGF0ZWQgeWV0ICovCi0JCWZvciAodHJhbnMgPSB0YWJl bnRyeS0+dHJhbnM7IHRyYW5zICE9IE5VTEw7IHRyYW5zID0gdHJhbnMtPnVwcGVyKQotCQkJ cmVzdWx0ICs9IHRyYW5zLT50dXBsZXNfdXBkYXRlZDsKLQl9CisJCXJlc3VsdCA9IChpbnQ2 NCkgKHRhYmVudHJ5LT50X2NvdW50cy50X3R1cGxlc191cGRhdGVkKTsKIAogCVBHX1JFVFVS Tl9JTlQ2NChyZXN1bHQpOwogfQpAQCAtMTU5MCwxNyArMTU3OCwxMSBAQCBwZ19zdGF0X2dl dF94YWN0X3R1cGxlc19kZWxldGVkKFBHX0ZVTkNUSU9OX0FSR1MpCiAJT2lkCQkJcmVsaWQg PSBQR19HRVRBUkdfT0lEKDApOwogCWludDY0CQlyZXN1bHQ7CiAJUGdTdGF0X1RhYmxlU3Rh dHVzICp0YWJlbnRyeTsKLQlQZ1N0YXRfVGFibGVYYWN0U3RhdHVzICp0cmFuczsKIAogCWlm ICgodGFiZW50cnkgPSBmaW5kX3RhYnN0YXRfZW50cnkocmVsaWQpKSA9PSBOVUxMKQogCQly ZXN1bHQgPSAwOwogCWVsc2UKLQl7Ci0JCXJlc3VsdCA9IHRhYmVudHJ5LT50X2NvdW50cy50 X3R1cGxlc19kZWxldGVkOwotCQkvKiBsaXZlIHN1YnRyYW5zYWN0aW9ucycgY291bnRzIGFy ZW4ndCBpbiB0X3R1cGxlc19kZWxldGVkIHlldCAqLwotCQlmb3IgKHRyYW5zID0gdGFiZW50 cnktPnRyYW5zOyB0cmFucyAhPSBOVUxMOyB0cmFucyA9IHRyYW5zLT51cHBlcikKLQkJCXJl c3VsdCArPSB0cmFucy0+dHVwbGVzX2RlbGV0ZWQ7Ci0JfQorCQlyZXN1bHQgPSAoaW50NjQp ICh0YWJlbnRyeS0+dF9jb3VudHMudF90dXBsZXNfZGVsZXRlZCk7CiAKIAlQR19SRVRVUk5f SU5UNjQocmVzdWx0KTsKIH0K --------------ZI403tkz1VXZp8D3MKcYi0yL--