Received: from malur.postgresql.org ([217.196.149.56]) by arkaria.postgresql.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_CBC_SHA1:256) (Exim 4.89) (envelope-from ) id 1hrjpt-0003Pb-0y for pgsql-hackers@arkaria.postgresql.org; Sun, 28 Jul 2019 14:07:41 +0000 Received: from localhost ([127.0.0.1] helo=malur.postgresql.org) by malur.postgresql.org with esmtp (Exim 4.89) (envelope-from ) id 1hrjpq-0005kt-HH for pgsql-hackers@arkaria.postgresql.org; Sun, 28 Jul 2019 14:07:38 +0000 Received: from makus.postgresql.org ([2001:4800:3e1:1::229]) by malur.postgresql.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_CBC_SHA1:256) (Exim 4.89) (envelope-from ) id 1hrjpq-0005ic-4R for pgsql-hackers@lists.postgresql.org; Sun, 28 Jul 2019 14:07:38 +0000 Received: from sss.pgh.pa.us ([66.207.139.130]) by makus.postgresql.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_CBC_SHA1:256) (Exim 4.92) (envelope-from ) id 1hrjpi-0007IH-QU for pgsql-hackers@lists.postgresql.org; Sun, 28 Jul 2019 14:07:36 +0000 Received: from sss1.sss.pgh.pa.us (localhost [127.0.0.1]) by sss.pgh.pa.us (8.14.4/8.14.4) with ESMTP id x6SE7RDJ025198; Sun, 28 Jul 2019 10:07:28 -0400 From: Tom Lane To: Michael Paquier cc: Alvaro Herrera , Julien Rouhaud , Peter Eisentraut , Thomas Munro , Daniel Verite , PostgreSQL Hackers , Kevin Grittner Subject: Re: Add parallelism and glibc dependent only options to reindexdb In-reply-to: <20190728072813.GB2029@paquier.xyz> References: <27884.1563811033@sss.pgh.pa.us> <20190722170532.GA26019@alvherre.pgsql> <20190728072813.GB2029@paquier.xyz> Comments: In-reply-to Michael Paquier message dated "Sun, 28 Jul 2019 16:28:13 +0900" MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-ID: <25196.1564322847.1@sss.pgh.pa.us> Date: Sun, 28 Jul 2019 10:07:27 -0400 Message-ID: <25197.1564322847@sss.pgh.pa.us> List-Id: List-Help: List-Subscribe: List-Post: List-Owner: List-Archive: Precedence: bulk Michael Paquier writes: > Just wondering something... List cells include one pointer, one > signed integer and an OID. The two last entries are basically 4-byte > each, hence could we reduce a bit the bloat by unifying both of them? We couldn't really simplify the API that way; for example, lfirst_int and lfirst_oid *must* be different because they must return different types. I think it'd be a bad idea to have some parts of the API that distinguish the two types while others pretend they're the same, so there's not much room for shortening that. You could imagine unifying the implementations of many of the _int and _oid functions, but I can't get excited about that. It would add confusion for not a lot of code savings. > I understand that the distinction exists because both may not be of > the same size.. Well, even more to the point, one's signed and one isn't. In the long run, might we ever switch to 64-bit OIDs? I dunno. Now that we kicked them out of user tables, it might be feasible, but by the same token there's not much pressure to do it. regards, tom lane