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.96) (envelope-from ) id 1wAD8I-002ATY-06 for pgsql-committers@arkaria.postgresql.org; Tue, 07 Apr 2026 20:34:46 +0000 Received: from localhost ([127.0.0.1] helo=malur.postgresql.org) by malur.postgresql.org with esmtp (Exim 4.96) (envelope-from ) id 1wAD8G-002Oks-0b for pgsql-committers@arkaria.postgresql.org; Tue, 07 Apr 2026 20:34:44 +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.96) (envelope-from ) id 1wAD8F-002Okk-34 for pgsql-committers@lists.postgresql.org; Tue, 07 Apr 2026 20:34:44 +0000 Received: from mahout.postgresql.org ([2001:4800:3e1:1::227]) by magus.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.98.2) (envelope-from ) id 1wAD8D-00000001B2o-3T8I for pgsql-committers@lists.postgresql.org; Tue, 07 Apr 2026 20:34:44 +0000 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=postgresql.org; s=20171124; h=Date:Message-Id:Subject:To:From:MIME-Version: Content-Type:Sender:Reply-To:Cc:Content-Transfer-Encoding:Content-ID: Content-Description:In-Reply-To:References; bh=bhKPChanN0gKuwmlW+n+dOqgS+9sp/bkuG7TbClCGJs=; b=FxCxvHb93GWQkMZUTKWDDSagwO 9JP4cPa9QCbml8q3ZzB7OEkbuZn9v1rZnrSATmo6vDUernR3PAQC8stbqLFqFqeKPorB/Wqz2slK9 hKCtNYfESfg8Jm/gGkVH3KaMeOmrnFQOPfeJdUu5+oSb2ud5/3manSwem+GVpb7rBFewEZrvKMDWr 9QUE/5EMGD2DceOzkMWB6MV+xuMuCPvd0tMvsDifQWUvTrPkOkmh7ApXVEK7tpvX+WSSURG8QfJvd z/6mmB2kqXcA10TM4zf9M/nwNRnqHWA14qnPyCxCkeRNB/udEWwtB2pTgafCVRXAixwYkfv1cTSZe TY1fbsMA==; Received: from gemulon.postgresql.org ([2001:4800:3e1:1::198]) by mahout.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.96) (envelope-from ) id 1wAD8C-003533-2S for pgsql-committers@lists.postgresql.org; Tue, 07 Apr 2026 20:34:41 +0000 Received: from localhost ([127.0.0.1] helo=gemulon.postgresql.org) by gemulon.postgresql.org with esmtp (Exim 4.96) (envelope-from ) id 1wAD8C-003Rvs-04 for pgsql-committers@lists.postgresql.org; Tue, 07 Apr 2026 20:34:40 +0000 Content-Type: multipart/mixed; boundary="===============6177248865540285160==" MIME-Version: 1.0 From: Tomas Vondra To: pgsql-committers@lists.postgresql.org Subject: pgsql: Add EXPLAIN (IO) infrastructure with BitmapHeapScan support X-Auto-Response-Suppress: All Auto-Submitted: auto-generated Message-Id: Date: Tue, 07 Apr 2026 20:34:40 +0000 List-Id: List-Help: List-Subscribe: List-Post: List-Owner: List-Archive: Archived-At: Precedence: bulk --===============6177248865540285160== Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: base64 QWRkIEVYUExBSU4gKElPKSBpbmZyYXN0cnVjdHVyZSB3aXRoIEJpdG1hcEhlYXBTY2FuIHN1cHBv cnQKCkFsbG93cyBjb2xsZWN0aW5nIGRldGFpbHMgYWJvdXQgQUlPIC8gcHJlZmV0Y2ggZm9yIHNj YW4gbm9kZXMgYmFja2VkIGJ5CmEgUmVhZFN0cmVhbS4gVGhpcyBtYXkgYmUgZW5hYmxlZCBieSBh IG5ldyAiSU8iIG9wdGlvbiBpbiBFWFBMQUlOLCBhbmQKaXQgc2hvd3MgaW5mb3JtYXRpb24gYWJv dXQgdGhlIHByZWZldGNoIGRpc3RhbmNlIGFuZCBJL08gcmVxdWVzdHMuCgpBcyBvZiB0aGlzIGNv bW1pdCB0aGlzIGFwcGxpZXMgb25seSB0byBCaXRtYXBIZWFwU2NhbiwgYmVjYXVzZSB0aGF0J3MK dGhlIG9ubHkgc2NhbiBub2RlIHVzaW5nIGEgUmVhZFN0cmVhbSBhbmQgY29sbGVjdGluZyBpbnN0 cnVtZW50YXRpb24KZnJvbSB3b3JrZXJzIGluIGEgcGFyYWxsZWwgcXVlcnkuIFN1cHBvcnQgZm9y IFNlcVNjYW4gYW5kIFRpZFJhbmdlU2NhbiwKdGhlIG90aGVyIHNjYW4gbm9kZXMgdXNpbmcgUmVh ZFN0cmVhbSwgd2lsbCBiZSBhZGRlZCBpbiBzdWJzZXF1ZW50CmNvbW1pdHMuCgpUaGUgc3RhdHMg YXJlIGNvbGxlY3RlZCBvbmx5IHdoZW4gcmVxdWlyZWQgYnkgRVhQTEFJTiBBTkFMWVpFLCB3aXRo IHRoZQpJTyBvcHRpb24gKGRpc2FibGVkIGJ5IGRlZmF1bHQpLiBUaGUgYW1vdW50IG9mIGNvbGxl Y3RlZCBzdGF0aXN0aWNzIGlzCnZlcnkgbGltaXRlZCwgYnV0IHdlIGRvbid0IHdhbnQgdG8gY2x1 dHRlciBFWFBMQUlOIHdpdGggdG9vIG11Y2ggZGF0YS4KClRoZSBJT1N0YXRzIHN0cnVjdCBpcyBz dG9yZWQgaW4gdGhlIHNjYW4gZGVzY3JpcHRvciBhcyBhIGZpZWxkLCBuZXh0IHRvCm90aGVyIGZp ZWxkcyB1c2VkIGJ5IHRhYmxlIEFNcy4gQSBwb2ludGVyIHRvIHRoZSBmaWVsZCBpcyBwYXNzZWQg dG8gdGhlClJlYWRTdHJlYW0sIGFuZCB1cGRhdGVkIGRpcmVjdGx5LgoKSXQncyB0aGUgcmVzcG9u c2liaWxpdHkgb2YgdGhlIHRhYmxlIEFNIHRvIGFsbG9jYXRlIHRoZSBzdHJ1Y3QgKGUuZy4gaW4K YW1iZWdpbnNjYW4pIHdoZW5ldmVyIHRoZSBmbGFnIFNPX1NDQU5fSU5TVFJVTUVOVCBmbGFnIGlz IHBhc3NlZCB0byB0aGUKc2Nhbiwgc28gdGhhdCB0aGUgZXhlY3V0b3IgYW5kIFJlYWRTdHJlYW0g aGFzIGFjY2VzcyB0byBpdC4KClRoZSBjb2xsZWN0ZWQgc3RhdHMgYXJlIGRlc2lnbmVkIGZvciBS ZWFkU3RyZWFtLCBidXQgYXJlIG1lYW50IHRvIGJlCnJlYXNvbmFibHkgZ2VuZXJpYyBpbiBjYXNl IGEgVEFNIG1hbmFnZXMgSS9PcyBpbiBkaWZmZXJlbnQgd2F5cy4KCkF1dGhvcjogVG9tYXMgVm9u ZHJhIDx0b21hc0B2b25kcmEubWU+ClJldmlld2VkLWJ5OiBNZWxhbmllIFBsYWdlbWFuIDxtZWxh bmllcGxhZ2VtYW5AZ21haWwuY29tPgpSZXZpZXdlZC1ieTogTHVrYXMgRml0dGwgPGx1a2FzQGZp dHRsLmNvbT4KUmV2aWV3ZWQtYnk6IEFuZHJlcyBGcmV1bmQgPGFuZHJlc0BhbmFyYXplbC5kZT4K RGlzY3Vzc2lvbjogaHR0cHM6Ly9wb3N0Z3IuZXMvbS9mbGF0L2ExNzdhNmRkLTI0MGItNDU1YS04 ZjI1LWFjYTBiMWMwOGM2ZSU0MHZvbmRyYS5tZQoKQnJhbmNoCi0tLS0tLQptYXN0ZXIKCkRldGFp bHMKLS0tLS0tLQpodHRwczovL2dpdC5wb3N0Z3Jlc3FsLm9yZy9wZy9jb21taXRkaWZmLzY4MWRh ZWQ5MzE2OWZmNWJlZDI3OTZkZDVjOGM3NmVlMmZhZTFlYmQKCk1vZGlmaWVkIEZpbGVzCi0tLS0t LS0tLS0tLS0tCmRvYy9zcmMvc2dtbC9yZWYvZXhwbGFpbi5zZ21sICAgICAgICAgICAgIHwgIDEy ICsrKwpzcmMvYmFja2VuZC9hY2Nlc3MvaGVhcC9oZWFwYW0uYyAgICAgICAgICB8ICAxMyArKysK c3JjL2JhY2tlbmQvY29tbWFuZHMvZXhwbGFpbi5jICAgICAgICAgICAgfCAxMjggKysrKysrKysr KysrKysrKysrKysrKysrKysrKysrCnNyYy9iYWNrZW5kL2NvbW1hbmRzL2V4cGxhaW5fc3RhdGUu YyAgICAgIHwgICA4ICsrCnNyYy9iYWNrZW5kL2V4ZWN1dG9yL25vZGVCaXRtYXBIZWFwc2Nhbi5j IHwgIDE5ICsrKystCnNyYy9iYWNrZW5kL3N0b3JhZ2UvYWlvL3JlYWRfc3RyZWFtLmMgICAgIHwg IDg3ICsrKysrKysrKysrKysrKysrKysrCnNyYy9pbmNsdWRlL2FjY2Vzcy9yZWxzY2FuLmggICAg ICAgICAgICAgIHwgICA2ICsrCnNyYy9pbmNsdWRlL2FjY2Vzcy90YWJsZWFtLmggICAgICAgICAg ICAgIHwgICAzICsKc3JjL2luY2x1ZGUvY29tbWFuZHMvZXhwbGFpbl9zdGF0ZS5oICAgICAgfCAg IDEgKwpzcmMvaW5jbHVkZS9leGVjdXRvci9pbnN0cnVtZW50LmggICAgICAgICB8ICAgMSArCnNy Yy9pbmNsdWRlL2V4ZWN1dG9yL2luc3RydW1lbnRfbm9kZS5oICAgIHwgIDUwICsrKysrKysrKysr KwpzcmMvaW5jbHVkZS9zdG9yYWdlL3JlYWRfc3RyZWFtLmggICAgICAgICB8ICAgMiArCnNyYy90 b29scy9wZ2luZGVudC90eXBlZGVmcy5saXN0ICAgICAgICAgIHwgICAyICsKMTMgZmlsZXMgY2hh bmdlZCwgMzMwIGluc2VydGlvbnMoKyksIDIgZGVsZXRpb25zKC0pCgo= --===============6177248865540285160==--