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 1osauo-0003ED-PH for pgsql-hackers@arkaria.postgresql.org; Wed, 09 Nov 2022 02:34:10 +0000 Received: from localhost ([127.0.0.1] helo=malur.postgresql.org) by malur.postgresql.org with esmtp (Exim 4.92) (envelope-from ) id 1osaum-0002Wa-Oa for pgsql-hackers@arkaria.postgresql.org; Wed, 09 Nov 2022 02:34:08 +0000 Received: from magus.postgresql.org ([2a02:c0:301:0:ffff::29]) by malur.postgresql.org with esmtps (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1osaum-0002WG-F0 for pgsql-hackers@lists.postgresql.org; Wed, 09 Nov 2022 02:34:08 +0000 Received: from mahout.postgresql.org ([2001:4800:3e1:1::227]) by magus.postgresql.org with esmtps (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1osauj-0007Md-ES for pgsql-hackers@lists.postgresql.org; Wed, 09 Nov 2022 02:34:08 +0000 Received: from coridan.postgresql.org ([2001:4800:3e1:1::213]) by mahout.postgresql.org with esmtps (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1osauh-000258-Jy for pgsql-hackers@lists.postgresql.org; Wed, 09 Nov 2022 02:34:03 +0000 Received: from localhost ([127.0.0.1] helo=coridan.postgresql.org) by coridan.postgresql.org with esmtp (Exim 4.94.2) (envelope-from ) id 1osauf-000jkX-PW for pgsql-hackers@lists.postgresql.org; Wed, 09 Nov 2022 02:34:02 +0000 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: base64 Subject: Re: [PATCH] Teach pg_waldump to extract FPIs from the WAL To: pgsql-hackers@lists.postgresql.org From: sho kato Cc: David Christensen Date: Wed, 09 Nov 2022 02:33:10 +0000 User-Agent: pgcommitfest X-cfsender: kato-sho In-Reply-To: References: Message-ID: <166796119059.1126.8001665249724628876.pgcf@coridan.postgresql.org> List-Id: List-Help: List-Subscribe: List-Post: List-Owner: List-Archive: Archived-At: Precedence: bulk VGhlIGZvbGxvd2luZyByZXZpZXcgaGFzIGJlZW4gcG9zdGVkIHRocm91Z2ggdGhlIGNvbW1pdGZl c3QgYXBwbGljYXRpb246Cm1ha2UgaW5zdGFsbGNoZWNrLXdvcmxkOiAgdGVzdGVkLCBmYWlsZWQK SW1wbGVtZW50cyBmZWF0dXJlOiAgICAgICB0ZXN0ZWQsIGZhaWxlZApTcGVjIGNvbXBsaWFudDog ICAgICAgICAgIHRlc3RlZCwgZmFpbGVkCkRvY3VtZW50YXRpb246ICAgICAgICAgICAgdGVzdGVk LCBmYWlsZWQKCkhlbGxvLA0KDQpJIHRlc3RlZCB0aGlzIHBhdGNoIG9uIExpbnV4IGFuZCB0aGVy ZSBpcyBubyBwcm9ibGVtLg0KQWxzbywgSSByZXZpZXdlZCB0aGlzIHBhdGNoIGFuZCBjb21tZW50 ZWQgYmVsb3cuDQoNCkBAIC00MzksNiArNDQ3LDEwNyBAQCBYTG9nUmVjb3JkSGFzRlBXKFhMb2dS ZWFkZXJTdGF0ZSAqcmVjb3JkKQ0KKyAgICAgICBpZiAoZm9yayA+PSAwICYmIGZvcmsgPD0gTUFY X0ZPUktOVU0pDQorICAgICAgIHsNCisgICAgICAgICAgIGlmIChmb3JrKQ0KKyAgICAgICAgICAg ICAgIHNwcmludGYoZm9ya25hbWUsICJfJXMiLCBmb3JrTmFtZXNbZm9ya10pOw0KKyAgICAgICAg ICAgZWxzZQ0KKyAgICAgICAgICAgICAgIGZvcmtuYW1lWzBdID0gMDsNCisgICAgICAgfQ0KKyAg ICAgICBlbHNlDQorICAgICAgICAgICBwZ19mYXRhbCgiZm91bmQgaW52YWxpZCBmb3JrIG51bWJl cjogJXUiLCBmb3JrKTsNCg0KU2hvdWxkIHdlIGFkZCB0aGUgY29tbWVudCBpZiB0aGUgbWFpbiBm b3JrIGlzIHNhdmVkIHdpdGhvdXQgIl9tYWluIiBzdWZmaXggZm9yIGNvZGUgcmVhZGFiaWxpdHk/ DQoNCkBAIC02NzksNiArNzg4LDkgQEAgdXNhZ2Uodm9pZCkNCiAgICAgICAgICAgICAiICAgICAg ICAgICAgICAgICAgICAgICAgIChkZWZhdWx0OiAxIG9yIHRoZSB2YWx1ZSB1c2VkIGluIFNUQVJU U0VHKVxuIikpOw0KICAgIHByaW50ZihfKCIgIC1WLCAtLXZlcnNpb24gICAgICAgICAgb3V0cHV0 IHZlcnNpb24gaW5mb3JtYXRpb24sIHRoZW4gZXhpdFxuIikpOw0KICAgIHByaW50ZihfKCIgIC13 LCAtLWZ1bGxwYWdlICAgICAgICAgb25seSBzaG93IHJlY29yZHMgd2l0aCBhIGZ1bGwgcGFnZSB3 cml0ZVxuIikpOw0KKyAgIHByaW50ZihfKCIgIC1XLCAtLXNhdmUtZnBpPXBhdGggICAgc2F2ZSBm dWxsIHBhZ2UgaW1hZ2VzIHRvIGdpdmVuIHBhdGggYXNcbiINCisgICAgICAgICAgICAiICAgICAg ICAgICAgICAgICAgICAgICAgIExTTi5ULkQuUi5CX0ZcbiIpKTsNCisgICBwcmludGYoXygiICAt WCwgLS1maXh1cC1mcGk9cGF0aCAgIGxpa2UgLS1zYXZlLWZwaSBidXQgYXBwbHkgTFNOIGZpeHVw cyB0byBzYXZlZCBwYWdlXG4iKSk7DQogICAgcHJpbnRmKF8oIiAgLXgsIC0teGlkPVhJRCAgICAg ICAgICBvbmx5IHNob3cgcmVjb3JkcyB3aXRoIHRyYW5zYWN0aW9uIElEIFhJRFxuIikpOw0KICAg IHByaW50ZihfKCIgIC16LCAtLXN0YXRzWz1yZWNvcmRdICAgc2hvdyBzdGF0aXN0aWNzIGluc3Rl YWQgb2YgcmVjb3Jkc1xuIg0KICAgICAgICAgICAgICIgICAgICAgICAgICAgICAgICAgICAgICAg KG9wdGlvbmFsbHksIHNob3cgcGVyLXJlY29yZCBzdGF0aXN0aWNzKVxuIikpOw0KDQpTaW5jZSBs b3dlci1jYXNlIG9wdGlvbnMgYXJlIGRpc3BsYXllZCBhdCB0aGUgdG9wLCBzaG91bGQgd2Ugc3dp dGNoIHRoZSBvcmRlciBvZiAteCBhbmQgLVg/DQoNCkBAIC05NzIsNiArMTA5MywyNSBAQCBtYWlu KGludCBhcmdjLCBjaGFyICoqYXJndikNCiAgICAgICAgfQ0KICAgIH0NCg0KKyAgICAgICBpbnQg ICAgICAgICBkaXJfc3RhdHVzID0gcGdfY2hlY2tfZGlyKGNvbmZpZy5zYXZlX2Zwd19wYXRoKTsN CisNCisgICAgICAgaWYgKGRpcl9zdGF0dXMgPCAwKQ0KKyAgICAgICB7DQorICAgICAgICAgICBw Z19sb2dfZXJyb3IoImNvdWxkIG5vdCBhY2Nlc3Mgb3V0cHV0IGRpcmVjdG9yeTogJXMiLCBjb25m aWcuc2F2ZV9mcHdfcGF0aCk7DQorICAgICAgICAgICBnb3RvIGJhZF9hcmd1bWVudDsNCisgICAg ICAgfQ0KDQpTaG91bGQgd2Ugb3V0cHV0ICVzIGVuY2xvc2VkIHdpdGggXCI/DQoNClJlZ2FyZHMs DQpTaG8gS2F0bw==