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 1pQ2Mw-0004id-PW for pgsql-hackers@arkaria.postgresql.org; Thu, 09 Feb 2023 08:33:26 +0000 Received: from localhost ([127.0.0.1] helo=malur.postgresql.org) by malur.postgresql.org with esmtp (Exim 4.92) (envelope-from ) id 1pQ2Mv-00035k-Km for pgsql-hackers@arkaria.postgresql.org; Thu, 09 Feb 2023 08:33:25 +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 1pQ2Mv-00035b-6E for pgsql-hackers@lists.postgresql.org; Thu, 09 Feb 2023 08:33:25 +0000 Received: from new2-smtp.messagingengine.com ([66.111.4.224]) by makus.postgresql.org with esmtps (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1pQ2Mr-00087v-Mm for pgsql-hackers@postgresql.org; Thu, 09 Feb 2023 08:33:24 +0000 Received: from compute5.internal (compute5.nyi.internal [10.202.2.45]) by mailnew.nyi.internal (Postfix) with ESMTP id DC86558203A; Thu, 9 Feb 2023 03:33:20 -0500 (EST) Received: from mailfrontend2 ([10.202.2.163]) by compute5.internal (MEProxy); Thu, 09 Feb 2023 03:33:20 -0500 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= messagingengine.com; h=cc:content-type:date:date:feedback-id :feedback-id:from:from:in-reply-to:in-reply-to:message-id :mime-version:references:reply-to:sender:subject:subject:to:to :x-me-proxy:x-me-proxy:x-me-sender:x-me-sender:x-sasl-enc; s= fm1; t=1675931600; x=1675938800; bh=ozMYtkNgSKmrEP6ZDFNu0i0nEq+N ESsIdRtUW61i4Jg=; b=T1Ax4C5hgoMIZDAuitfM64jdQ98QVKGJ+HhaBADmUSFW repx9R+7NiBIxt5GO4/TPHOl+aV3eAlEeTDDzwm/brEfqExELShMKpnqQ5twAJu0 YMrWZmWod7gxKKih58rYAfIa2O5JLiyEetVStrCCVtvJXcY1XEXNylrBu3PAxdrb XfgdAcUbQunvIKAnx4g7ihJwR/VeSCJT+7gyUIHXjYhKjABm6fbGDvtFKWL2PD6E UujMAfWbSvsDROmAjSntQO8gvIayqQ/XxDaLWFxHYhgrqLKsi7+Bu2Q1ohJbnNAc rROixDa+ovO5EeJscEz9WTJVu4grssfOTi0YLdShoQ== X-ME-Sender: X-ME-Received: X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgedvhedrudehvddgieegucetufdoteggodetrfdotf fvucfrrhhofhhilhgvmecuhfgrshhtofgrihhlpdfqfgfvpdfurfetoffkrfgpnffqhgen uceurghilhhouhhtmecufedttdenucesvcftvggtihhpihgvnhhtshculddquddttddmne cujfgurheptgfkffggfgfuvfhfhfgjsehmtderredtfeejnecuhfhrohhmpefrvghtvghr ucfgihhsvghnthhrrghuthcuoehpvghtvghrrdgvihhsvghnthhrrghuthesvghnthgvrh hprhhishgvuggsrdgtohhmqeenucggtffrrghtthgvrhhnpedutdevledtvedvteduvdef vdfhieetkeelvdfhhfejfeejvdeujeeggeefudegtdenucevlhhushhtvghrufhiiigvpe dtnecurfgrrhgrmhepmhgrihhlfhhrohhmpehpvghtvghrrdgvihhsvghnthhrrghuthes vghnthgvrhhprhhishgvuggsrdgtohhm X-ME-Proxy: Feedback-ID: i131946ab:Fastmail Received: by mail.messagingengine.com (Postfix) with ESMTPA; Thu, 9 Feb 2023 03:33:19 -0500 (EST) Content-Type: multipart/mixed; boundary="------------3wND2ACklXkGNvahwSDxI8sA" Message-ID: <5f6ed461-331f-47b5-9ce2-90fc660d78f5@enterprisedb.com> Date: Thu, 9 Feb 2023 09:33:16 +0100 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:102.0) Gecko/20100101 Thunderbird/102.6.1 Subject: Re: Consolidate ItemPointer to Datum conversion functions Content-Language: en-US To: Heikki Linnakangas , pgsql-hackers References: <844dd4c5-e5a1-3df1-bfaf-d1e1c2a16e45@enterprisedb.com> From: Peter Eisentraut 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. --------------3wND2ACklXkGNvahwSDxI8sA Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit On 06.02.23 11:11, Heikki Linnakangas wrote: > On 06/02/2023 11:54, Peter Eisentraut wrote: >> Instead of defining the same set of macros several times, define it once >> in an appropriate header file.  In passing, convert to inline functions. > > Looks good to me. Did you consider moving PG_GETARG_ITEMPOINTER and > PG_RETURN_ITEMPOINTER, too? They're only used in tid.c, but for most > datatypes, we define the PG_GETARG and PG_RETURN macros in the same > header file as the the Datum conversion functions. Yeah that makes sense. Here is an updated patch for that. --------------3wND2ACklXkGNvahwSDxI8sA Content-Type: text/plain; charset=UTF-8; name="v2-0001-Consolidate-ItemPointer-to-Datum-conversion-funct.patch" Content-Disposition: attachment; filename*0="v2-0001-Consolidate-ItemPointer-to-Datum-conversion-funct.pa"; filename*1="tch" Content-Transfer-Encoding: base64 RnJvbSA0N2IzMTZlYjZjZmE1MDQxMmQ4MWZkMTgzYThiNTRlMGExMDRhNjg1IE1vbiBTZXAg MTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBQZXRlciBFaXNlbnRyYXV0IDxwZXRlckBlaXNlbnRy YXV0Lm9yZz4KRGF0ZTogVGh1LCA5IEZlYiAyMDIzIDA5OjIzOjIwICswMTAwClN1YmplY3Q6 IFtQQVRDSCB2Ml0gQ29uc29saWRhdGUgSXRlbVBvaW50ZXIgdG8gRGF0dW0gY29udmVyc2lv biBmdW5jdGlvbnMKCkluc3RlYWQgb2YgZGVmaW5pbmcgdGhlIHNhbWUgc2V0IG9mIG1hY3Jv cyBzZXZlcmFsIHRpbWVzLCBkZWZpbmUgaXQKb25jZSBpbiBhbiBhcHByb3ByaWF0ZSBoZWFk ZXIgZmlsZS4gIEluIHBhc3NpbmcsIGNvbnZlcnQgdG8gaW5saW5lCmZ1bmN0aW9ucy4KCkRp c2N1c3Npb246IGh0dHBzOi8vd3d3LnBvc3RncmVzcWwub3JnL21lc3NhZ2UtaWQvZmxhdC84 NDRkZDRjNS1lNWExLTNkZjEtYmZhZi1kMWUxYzJhMTZlNDUlNDBlbnRlcnByaXNlZGIuY29t Ci0tLQogY29udHJpYi9wYWdlaW5zcGVjdC9idHJlZWZ1bmNzLmMgfCAgMiAtLQogY29udHJp Yi9wYWdlaW5zcGVjdC9naW5mdW5jcy5jICAgfCAgMyAtLS0KIGNvbnRyaWIvcGFnZWluc3Bl Y3QvZ2lzdGZ1bmNzLmMgIHwgIDIgLS0KIHNyYy9iYWNrZW5kL3V0aWxzL2FkdC90aWQuYyAg ICAgIHwgIDUgLS0tLS0KIHNyYy9pbmNsdWRlL3N0b3JhZ2UvaXRlbXB0ci5oICAgIHwgMjAg KysrKysrKysrKysrKysrKysrKysKIDUgZmlsZXMgY2hhbmdlZCwgMjAgaW5zZXJ0aW9ucygr KSwgMTIgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvY29udHJpYi9wYWdlaW5zcGVjdC9i dHJlZWZ1bmNzLmMgYi9jb250cmliL3BhZ2VpbnNwZWN0L2J0cmVlZnVuY3MuYwppbmRleCBl NGU1ZGMzYzgxLi45Y2RjOGUxODJiIDEwMDY0NAotLS0gYS9jb250cmliL3BhZ2VpbnNwZWN0 L2J0cmVlZnVuY3MuYworKysgYi9jb250cmliL3BhZ2VpbnNwZWN0L2J0cmVlZnVuY3MuYwpA QCAtNTAsOCArNTAsNiBAQCBQR19GVU5DVElPTl9JTkZPX1YxKGJ0X211bHRpX3BhZ2Vfc3Rh dHMpOwogCiAjZGVmaW5lIElTX0lOREVYKHIpICgociktPnJkX3JlbC0+cmVsa2luZCA9PSBS RUxLSU5EX0lOREVYKQogI2RlZmluZSBJU19CVFJFRShyKSAoKHIpLT5yZF9yZWwtPnJlbGFt ID09IEJUUkVFX0FNX09JRCkKLSNkZWZpbmUgRGF0dW1HZXRJdGVtUG9pbnRlcihYKQkgKChJ dGVtUG9pbnRlcikgRGF0dW1HZXRQb2ludGVyKFgpKQotI2RlZmluZSBJdGVtUG9pbnRlckdl dERhdHVtKFgpCSBQb2ludGVyR2V0RGF0dW0oWCkKIAogLyogLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiAgKiBzdHJ1Y3R1cmUgZm9yIHNpbmds ZSBidHJlZSBwYWdlIHN0YXRpc3RpY3MKZGlmZiAtLWdpdCBhL2NvbnRyaWIvcGFnZWluc3Bl Y3QvZ2luZnVuY3MuYyBiL2NvbnRyaWIvcGFnZWluc3BlY3QvZ2luZnVuY3MuYwppbmRleCBl ZmFhNDdlODZkLi4wZjg0Njk4OGRmIDEwMDY0NAotLS0gYS9jb250cmliL3BhZ2VpbnNwZWN0 L2dpbmZ1bmNzLmMKKysrIGIvY29udHJpYi9wYWdlaW5zcGVjdC9naW5mdW5jcy5jCkBAIC0y MSw5ICsyMSw2IEBACiAjaW5jbHVkZSAidXRpbHMvYnVpbHRpbnMuaCIKICNpbmNsdWRlICJ1 dGlscy9yZWwuaCIKIAotI2RlZmluZSBEYXR1bUdldEl0ZW1Qb2ludGVyKFgpCSAoKEl0ZW1Q b2ludGVyKSBEYXR1bUdldFBvaW50ZXIoWCkpCi0jZGVmaW5lIEl0ZW1Qb2ludGVyR2V0RGF0 dW0oWCkJIFBvaW50ZXJHZXREYXR1bShYKQotCiAKIFBHX0ZVTkNUSU9OX0lORk9fVjEoZ2lu X21ldGFwYWdlX2luZm8pOwogUEdfRlVOQ1RJT05fSU5GT19WMShnaW5fcGFnZV9vcGFxdWVf aW5mbyk7CmRpZmYgLS1naXQgYS9jb250cmliL3BhZ2VpbnNwZWN0L2dpc3RmdW5jcy5jIGIv Y29udHJpYi9wYWdlaW5zcGVjdC9naXN0ZnVuY3MuYwppbmRleCAzYTk0N2M4MmFmLi4xMDA2 OTc4MTRkIDEwMDY0NAotLS0gYS9jb250cmliL3BhZ2VpbnNwZWN0L2dpc3RmdW5jcy5jCisr KyBiL2NvbnRyaWIvcGFnZWluc3BlY3QvZ2lzdGZ1bmNzLmMKQEAgLTMxLDggKzMxLDYgQEAg UEdfRlVOQ1RJT05fSU5GT19WMShnaXN0X3BhZ2VfaXRlbXNfYnl0ZWEpOwogCiAjZGVmaW5l IElTX0dJU1QocikgKChyKS0+cmRfcmVsLT5yZWxhbSA9PSBHSVNUX0FNX09JRCkKIAotI2Rl ZmluZSBJdGVtUG9pbnRlckdldERhdHVtKFgpCSBQb2ludGVyR2V0RGF0dW0oWCkKLQogCiBE YXR1bQogZ2lzdF9wYWdlX29wYXF1ZV9pbmZvKFBHX0ZVTkNUSU9OX0FSR1MpCmRpZmYgLS1n aXQgYS9zcmMvYmFja2VuZC91dGlscy9hZHQvdGlkLmMgYi9zcmMvYmFja2VuZC91dGlscy9h ZHQvdGlkLmMKaW5kZXggMjUxMjE5YTFlZi4uNzdmYjc0YWIwYyAxMDA2NDQKLS0tIGEvc3Jj L2JhY2tlbmQvdXRpbHMvYWR0L3RpZC5jCisrKyBiL3NyYy9iYWNrZW5kL3V0aWxzL2FkdC90 aWQuYwpAQCAtMzcsMTEgKzM3LDYgQEAKICNpbmNsdWRlICJ1dGlscy92YXJsZW5hLmgiCiAK IAotI2RlZmluZSBEYXR1bUdldEl0ZW1Qb2ludGVyKFgpCSAoKEl0ZW1Qb2ludGVyKSBEYXR1 bUdldFBvaW50ZXIoWCkpCi0jZGVmaW5lIEl0ZW1Qb2ludGVyR2V0RGF0dW0oWCkJIFBvaW50 ZXJHZXREYXR1bShYKQotI2RlZmluZSBQR19HRVRBUkdfSVRFTVBPSU5URVIobikgRGF0dW1H ZXRJdGVtUG9pbnRlcihQR19HRVRBUkdfREFUVU0obikpCi0jZGVmaW5lIFBHX1JFVFVSTl9J VEVNUE9JTlRFUih4KSByZXR1cm4gSXRlbVBvaW50ZXJHZXREYXR1bSh4KQotCiAjZGVmaW5l IExERUxJTQkJCScoJwogI2RlZmluZSBSREVMSU0JCQknKScKICNkZWZpbmUgREVMSU0JCQkn LCcKZGlmZiAtLWdpdCBhL3NyYy9pbmNsdWRlL3N0b3JhZ2UvaXRlbXB0ci5oIGIvc3JjL2lu Y2x1ZGUvc3RvcmFnZS9pdGVtcHRyLmgKaW5kZXggMzU0ZTUwZTY4Yi4uZmFmZWZhMTRjZCAx MDA2NDQKLS0tIGEvc3JjL2luY2x1ZGUvc3RvcmFnZS9pdGVtcHRyLmgKKysrIGIvc3JjL2lu Y2x1ZGUvc3RvcmFnZS9pdGVtcHRyLmgKQEAgLTIyMiw0ICsyMjIsMjQgQEAgZXh0ZXJuIGlu dDMyIEl0ZW1Qb2ludGVyQ29tcGFyZShJdGVtUG9pbnRlciBhcmcxLCBJdGVtUG9pbnRlciBh cmcyKTsKIGV4dGVybiB2b2lkIEl0ZW1Qb2ludGVySW5jKEl0ZW1Qb2ludGVyIHBvaW50ZXIp OwogZXh0ZXJuIHZvaWQgSXRlbVBvaW50ZXJEZWMoSXRlbVBvaW50ZXIgcG9pbnRlcik7CiAK Ky8qIC0tLS0tLS0tLS0tLS0tLS0KKyAqCQlEYXR1bSBjb252ZXJzaW9uIGZ1bmN0aW9ucwor ICogLS0tLS0tLS0tLS0tLS0tLQorICovCisKK3N0YXRpYyBpbmxpbmUgSXRlbVBvaW50ZXIK K0RhdHVtR2V0SXRlbVBvaW50ZXIoRGF0dW0gWCkKK3sKKwlyZXR1cm4gKEl0ZW1Qb2ludGVy KSBEYXR1bUdldFBvaW50ZXIoWCk7Cit9CisKK3N0YXRpYyBpbmxpbmUgRGF0dW0KK0l0ZW1Q b2ludGVyR2V0RGF0dW0oY29uc3QgSXRlbVBvaW50ZXJEYXRhICpYKQoreworCXJldHVybiBQ b2ludGVyR2V0RGF0dW0oWCk7Cit9CisKKyNkZWZpbmUgUEdfR0VUQVJHX0lURU1QT0lOVEVS KG4pIERhdHVtR2V0SXRlbVBvaW50ZXIoUEdfR0VUQVJHX0RBVFVNKG4pKQorI2RlZmluZSBQ R19SRVRVUk5fSVRFTVBPSU5URVIoeCkgcmV0dXJuIEl0ZW1Qb2ludGVyR2V0RGF0dW0oeCkK KwogI2VuZGlmCQkJCQkJCS8qIElURU1QVFJfSCAqLwotLSAKMi4zOS4xCgo= --------------3wND2ACklXkGNvahwSDxI8sA--