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 1pZndx-0000Mh-OC for pgsql-hackers@arkaria.postgresql.org; Wed, 08 Mar 2023 06:51:22 +0000 Received: from localhost ([127.0.0.1] helo=malur.postgresql.org) by malur.postgresql.org with esmtp (Exim 4.92) (envelope-from ) id 1pZndu-00035c-JO for pgsql-hackers@arkaria.postgresql.org; Wed, 08 Mar 2023 06:51:18 +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 1pZndu-00035S-6k for pgsql-hackers@lists.postgresql.org; Wed, 08 Mar 2023 06:51:18 +0000 Received: from esa13.fujitsucc.c3s2.iphmx.com ([68.232.156.96]) by magus.postgresql.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1pZndq-0008Dq-EP for pgsql-hackers@lists.postgresql.org; Wed, 08 Mar 2023 06:51:17 +0000 DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=fujitsu.com; i=@fujitsu.com; q=dns/txt; s=fj1; t=1678258275; x=1709794275; h=from:to:cc:subject:date:message-id:references: in-reply-to:content-transfer-encoding:mime-version; bh=8iebWIdY/1BDrNiUmP0d2/2gLQbaSqkhz/alWbnYNis=; b=gX3FJA96xNtNdDKHE02CfpaLppiXZo80a3PPIKEtOkxBKSZOzslyIrk2 u34RJSqcGUe+5mdhUxUdUPOkQuaZxIgI9yN5JwSJ4n13VUe7mkJJg3eF7 vIKYmcbBd7Nx89liw4aUlPotXbg95GWhUK1ciXV6jdMdJlMNWjfJFUcCE 9Q4/xyZoR1uAF7ukNATS8sIyCZicg78LIPBZ8m9o813AJJjQU8KZu3sDL q2fWZiFQnrbxaN4BlBOf+FlTsL/8zkT/d6SkJ5YK6sMcDeLi14Xz3Rv4+ nq4ZMofQ+x7l7GUxKYIk2gYPk4eP7KZMBeuEntSHQA3ulN8LWCvQy8ex1 w==; X-IronPort-AV: E=McAfee;i="6500,9779,10642"; a="78476373" X-IronPort-AV: E=Sophos;i="5.98,243,1673881200"; d="scan'208";a="78476373" Received: from mail-tycjpn01lp2173.outbound.protection.outlook.com (HELO JPN01-TYC-obe.outbound.protection.outlook.com) ([104.47.23.173]) by ob1.fujitsucc.c3s2.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 08 Mar 2023 15:51:11 +0900 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=ErnNjxRqXa9jQ/V7/W3FC47E5mHzuWfUfspryDokoIH2D3ijjIjZUXn0EowZLNb7jNXCzL9JxvIk134qGrXX6x7w/Ei9EXvoi9HGoNMdVth0cWmMRqGmTikprvjxKkcmoBRCyqsNUouWkOPwpHjkriSIkA5gmg16+n20p732yxpfcvh1V/dEXkpYU7+KImtKuz+WaWitg848F5qjYtatOHhI38BLAHUTZGjzYy0PbWjg/yKcp+5MMAYKAJimFXDvaaqKey8TlkMalch6kex1+yyXiL0YIYgogjtgT0qHMFc4IrM0WM5WSv+NGJq3R2+gOXJRaxQ/yUfUvS3fAxm6lw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=8iebWIdY/1BDrNiUmP0d2/2gLQbaSqkhz/alWbnYNis=; b=cLDfcuRuw4OLVcx1Je4SDDMip4xS0Ojwtv+1Le1ED7f0llIpi49IzbfmI5JCb7v396SeI4ugeVIYfkj4vhx0/0Y7KQhTjQJGs0i80YxwdwbnIMA333Tjg6PxG2b/EGADddLOVsM/k3yEm0d8xs+tFl7FCMrI4uYA7XOa85o0vokJrzvHd1YFBDcSe2HI7dnKrbBIDEvakvlazszXBi0fOFCA0hsea+ZpC/rJ9iPYg//u87yyE+l6JC7SfDORTKtClvM3CDkperXW1vWG3eqDmfC/RSUXRXc8btadpadhkxAcOWO1Zo5el1/XzCOYsKWVzZIRiT/HTp3Gwy9c7zAQ5A== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=fujitsu.com; dmarc=pass action=none header.from=fujitsu.com; dkim=pass header.d=fujitsu.com; arc=none Received: from OS0PR01MB5716.jpnprd01.prod.outlook.com (2603:1096:604:bb::12) by TYCPR01MB8407.jpnprd01.prod.outlook.com (2603:1096:400:150::5) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6156.29; Wed, 8 Mar 2023 06:51:07 +0000 Received: from OS0PR01MB5716.jpnprd01.prod.outlook.com ([fe80::4656:3259:be27:f810]) by OS0PR01MB5716.jpnprd01.prod.outlook.com ([fe80::4656:3259:be27:f810%4]) with mapi id 15.20.6156.029; Wed, 8 Mar 2023 06:51:07 +0000 From: "houzj.fnst@fujitsu.com" To: =?utf-8?B?w5ZuZGVyIEthbGFjxLE=?= , Amit Kapila CC: Peter Smith , "shiy.fnst@fujitsu.com" , "wangw.fnst@fujitsu.com" , Marco Slot , Tom Lane , Andres Freund , PostgreSQL Hackers Subject: RE: [PATCH] Use indexes on the subscriber when REPLICA IDENTITY is full on the publisher Thread-Topic: [PATCH] Use indexes on the subscriber when REPLICA IDENTITY is full on the publisher Thread-Index: AQHYlfR7CJSWSsHDaUq9h2Xjdmrbd62Ds22AgAGwZACAAVjRgIAAp0wAgAFDuYCAAfjlAIAVnJQAgAUWeQCAByaZAIALYnOAgAQg0ACAAPBUAIBQzuQAgADkkQCABa1vgIAAnAmAgAJDPYCAAjNigIAhRLMAgCd0kQCACRS1gIApNn4AgAM5QoCAAAlUAIAQwyqAgAsHsICABLrhgIAEaA8AgANUUgCAEMu/AIAADCUAgAoSUACAAZIFgIAK1FsAgAFsOwCAAC3vAIAANIcAgADnVwCAACmugIAEhUIAgABuzoCAAVfKgIAAFBoAgAAIOQCAACyWgIAAGymAgAEdlAA= Date: Wed, 8 Mar 2023 06:51:07 +0000 Message-ID: References: In-Reply-To: Accept-Language: ja-JP, en-US Content-Language: ja-JP X-MS-Has-Attach: X-MS-TNEF-Correlator: msip_labels: =?utf-8?B?TVNJUF9MYWJlbF9hNzI5NWNjMS1kMjc5LTQyYWMtYWI0ZC0zYjBmNGZlY2Uw?= =?utf-8?B?NTBfQWN0aW9uSWQ9OGY5ZDU1ZGItMTI2Ny00YzE1LTk0N2QtZmQ1NmQ3MTkx?= =?utf-8?B?MTY5O01TSVBfTGFiZWxfYTcyOTVjYzEtZDI3OS00MmFjLWFiNGQtM2IwZjRm?= =?utf-8?B?ZWNlMDUwX0NvbnRlbnRCaXRzPTA7TVNJUF9MYWJlbF9hNzI5NWNjMS1kMjc5?= =?utf-8?B?LTQyYWMtYWI0ZC0zYjBmNGZlY2UwNTBfRW5hYmxlZD10cnVlO01TSVBfTGFi?= =?utf-8?B?ZWxfYTcyOTVjYzEtZDI3OS00MmFjLWFiNGQtM2IwZjRmZWNlMDUwX01ldGhv?= =?utf-8?B?ZD1TdGFuZGFyZDtNU0lQX0xhYmVsX2E3Mjk1Y2MxLWQyNzktNDJhYy1hYjRk?= =?utf-8?B?LTNiMGY0ZmVjZTA1MF9OYW1lPUZVSklUU1UtUkVTVFJJQ1RFRO+/ou++gA==?= =?utf-8?B?776LO01TSVBfTGFiZWxfYTcyOTVjYzEtZDI3OS00MmFjLWFiNGQtM2IwZjRm?= =?utf-8?B?ZWNlMDUwX1NldERhdGU9MjAyMy0wMy0wOFQwNjo0OToxNFo7TVNJUF9MYWJl?= =?utf-8?B?bF9hNzI5NWNjMS1kMjc5LTQyYWMtYWI0ZC0zYjBmNGZlY2UwNTBfU2l0ZUlk?= =?utf-8?Q?=3Da19f121d-81e1-4858-a9d8-736e267fd4c7;?= authentication-results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=fujitsu.com; x-ms-publictraffictype: Email x-ms-traffictypediagnostic: OS0PR01MB5716:EE_|TYCPR01MB8407:EE_ x-ms-office365-filtering-correlation-id: 054ffb62-2e7d-496c-4315-08db1fa17e9d x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: VwPsdI7xb2+waVD86dwleboakonQsUXYlXGG2W8nV/NESpUTfqR6ZXJZ2eUptgG6HfwcOgFfeUvXyUOAO+HEVqV1EbdxQx2Xil+ovs9hOv0mwEooqp/bXmOe98FDVZKt205CIytDMGlafZyZ/QE5quc/am5iRv/FN+RjPgnS7l0+cMPIWrmDWc9yPQS7YP8+BSiUtHBCrQvDvuIh4KlFJQ9WZ0nnrWLXeK/Abfgf1NNZJSURa9RSa2nfL9jIvlrqNPVH0tgadnczB33RxqEWnK1MjgxrczrwdUeADEPsuEs7s7ww9KxuxXSvDua+16S5nSznboPSNrgiDONaJpsad0LI1o7B5uBl2J+8mVvDIv4DMIqv2RcZsqgas4hbPCFW2X9sp02W49OL7j015v1RdozKKcy+g8GMTOmKpMdlGDOIlyk3BZr8go6w+BAk5EVdSgJir60i1xgmRpvJ0tZAH6r37hHcJif76QQY++yLlg5g+HTnAylYXIrHcu2eL5IztKp8dkeK3ZHRG5IhlRmPEMkwMWbhfMBtECqhXAke5b3ffupYLXvBL8Y5mQwzpqAYdsoDUo4oeDTKDSeavgXqTN4npAp1rIBM8u2wVRUlpmVmw0UNjCD/YjqwBXP5Ek8GLnClC3iZ4NcqqE8VKfVfE4EgkY5dxr4wBONij25d540qn2Y264h+aM9gX/sIj3E5n95ctYw/q+mfA7QLG4unJA7t0N/6U2SuXCBUN7LRakeOuhX/Zk1rVWGxCqP/c5ghldpycP2cF8//grn52WTURA== x-forefront-antispam-report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:OS0PR01MB5716.jpnprd01.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230025)(4636009)(136003)(396003)(376002)(346002)(366004)(39860400002)(451199018)(1590799015)(122000001)(38070700005)(38100700002)(82960400001)(64756008)(33656002)(66446008)(66476007)(86362001)(85182001)(5660300002)(66946007)(2906002)(76116006)(4326008)(41300700001)(66556008)(8676002)(8936002)(52536014)(53546011)(9686003)(26005)(186003)(66574015)(83380400001)(478600001)(316002)(54906003)(6506007)(71200400001)(110136005)(55016003)(7696005)(1580799012)(366874004);DIR:OUT;SFP:1101; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?utf-8?B?UnVtK1FGdWIwNkVubjdKTEFqeUUrVmdRaEJKQ3VnbCtoQXc3ZmRZbUs2dGdB?= =?utf-8?B?RUR1WjBKbmVubkplQjJGanJxeEgzbVQrczd0U29sWEJ2bENNZ3NBS2VXQmRL?= =?utf-8?B?NnJndm1vKzF2VjZXN08vT1pTZzZsVitod2tzdnJSOC9JbUxlUlYwT1FlTCtn?= =?utf-8?B?clVrUUdaZjlSVmZEM29sY2QzZU9SY0M5eVRLcUtFME54OUFzZjNodzdJUktS?= =?utf-8?B?dVJacHh3YjM4dFdZQitiN0JudlZvOXZPVWtSR3Y5bEU3QURZRXF0cTllZmk1?= =?utf-8?B?U1FNOFpWbUZjdjBUMlNnZi94SGMvdjF3UmlQVDBCVW9wM3VjTnIweHhTK0pp?= =?utf-8?B?KzRtOGdFNks1cVpXYnNkNSs1b09pOFJEd1ppRFU0RVA0Zk02VDN3cnN0WGpO?= =?utf-8?B?b3dZNGNkVVpiOTBwdm1lRFc2T3BwcHdsKzZuWmdGTmpIUlMxVmh5dThHQ09z?= =?utf-8?B?dmV3d05QUUVxVGlPTy81MHIxUjB0TXVSQzNzU3hsMEVwT3B2NlhnZ3VGWWFs?= =?utf-8?B?Wi9FWmtQN0NSaU9FTnNsd0pwQ3dVdmNYdkVvUGpOYkRrNTVsbytOVm8wdk52?= =?utf-8?B?SU1UdnZwQU9mdmh3ZXdFK1BSa0VuYWZhdmZ0V2NPVmd2T0JpRVIwcWN0VHdh?= =?utf-8?B?aXF3MjVOSlJzUEVLYkgyMXRYZjRiMzhlK3RNems0NkYvVzMxa0FPVjFsTlF0?= =?utf-8?B?bW53Vk1oQXFnVDR5cWRxektjSnZ2WDNpZjIwU0RXY3pldVo2emJMZGdTUjRS?= =?utf-8?B?ejdGa2VDQW1zNTl0M1RtSkFQUGx6K1NPZmdDNHNRSGM2L0xBdERJVDBpbWg3?= =?utf-8?B?VDJBZkliYUl2NDZvRHRZaTRKQ0dES2NEbjlOWk1QcEJENCtmN2Y0TEtuT28w?= =?utf-8?B?WnR3aGcyamFHM2pKN3RYRndXcGRta3lKRGFicDhjSXRSVVNiR2lwSElLVW9B?= =?utf-8?B?YUIvSU13a0VSMnF0dzNTQjJJV1h4UEhrbHRVVndWdDIvcG5wa2kySFBYb1dY?= =?utf-8?B?UEEzNGRadHRxcXcyeXBTa0dOeisyM0psUFZqeWFub1JkSUE0ejNWM2ZUNTFO?= =?utf-8?B?TjhuTFhvbDF4dmQ4dmY0c3pzQXQyUWx2TzRGY2xsU2JBRGE5L0RLMzhUbmFS?= =?utf-8?B?cVJvU25UMkpnbW5maHBRVVRxeC9UdFlOdlZrdVBmM3RHNmdIenpoYkNhL0VY?= =?utf-8?B?c2tXRmJ6M08xUGg5d3FrQ0xEak95WVRpODlFTDh1Y1pvTDFrNS80SlJHaTll?= =?utf-8?B?OVZGTjJQOEZLWHFaVDM4a0tsR3FmZytydS9vVjBsRk1LdzZrOVNnL0VWN0Vp?= =?utf-8?B?akhvMVJJekQwejM5ak5mK3dCMUtrRURxbnljNnRIajlGdjMyM0kwQ0xoRVJq?= =?utf-8?B?TEQrUHc3RnhJYWNIWFVNTUtrdjgxYnV0dlp6TENWYzZoUlZwWUxENWtnaFRv?= =?utf-8?B?SjNnNjRYZE9kOUN4emhWZ1lHa0kxdThQYS9Ea2k1M2FGb1hUM2xVeVpvQ0Ru?= =?utf-8?B?UTM1djcyTU15SGZVZXR1SDdrR3paYldXZWFSKzhNa3d4eG9ET0lTM3V1aGR6?= =?utf-8?B?bEp1b2RTTEFTcnFiYkRlRk9kV1c3VldndWc4ZkwvbDlrNlJ6UUVaeHRRL3BD?= =?utf-8?B?SG5TMEJpbHlQK0JPMlRzeXV6LzdObFZ5a29LSWNwazRpY0FCcUhJRnFiVGVv?= =?utf-8?B?Z2VtU0RaR0srT2RYODRpaldOT09EZkNmOEYva05URTlkNmUydWF5eXBEcmtN?= =?utf-8?B?M2cwMjB0ZWgwdVZYTVg3MEJPMzFTS2VsK1JWT2hlblh4WW1aM2s1Q1pPcjlK?= =?utf-8?B?UVV6RUxsMXduMEs1amZMYjM0L3dTcFdoWDJ2WFJtOVM3RS8za05IZE5HMVZI?= =?utf-8?B?TVY5NkptQXd1V2xHYU5FSUdRVEpMblU4eUhQS0dKMlpnTUprcWdTUFBTMkdu?= =?utf-8?B?bERVbGs0cmdwRVk0Y3RLbGltYmVWbDY3MVNCYkFWWEw5Mm5ja0w5c25GWklP?= =?utf-8?B?amFlZTFRUEhVWHEvZ282K2dWSDVjdVBPMTV2NS9EQ0xwdkJ2MjBITnhnK09h?= =?utf-8?B?WG52NStCdFZpK1hLRFpTRTRRZ0Q4cTVaT3VjemRpOU45TFFMczNCS0lRTXZw?= =?utf-8?Q?gegCZNhlNpyhSa3ILBnpipvjW?= Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 MIME-Version: 1.0 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: wQ7LCElNlUyaaKRYYIIwHOWz7TX6oKaObFhtADsdMCKc2IltaB7H6M/scYwzfnaP/nhheYzyB3DyYdzNZ20jTdK3XSslEhj/hEjl7+vjxDlOfajd9R+bWrGLcgWDyKjDjVCKYw3YPV4VqY1EKLN1rUDkl6aApI3vKThHjFES9WxMYBItIkAZfhj9/WZ7kJLIClylLuV/sS8TPjm+OjeHEFHo8WoIZ7Xkhpb3XmZby5sKpW/YOyBSsAPmBCm71x7+K6PHExg8WCD3cpthJGIdudfM+AcS+hurYBzo1B8PaQ6Pf/2hmPrIQUppE4s+MxAQtSGQqepWim0jOjvBGPrKRP3gopMPoO2A/Z7jTWw9bDZ01RIDf5LpZ3mH4FuJlHYYFCNk3M8FTw4R5tgeTL+Ib8dx/2pOFCxTxUKJ1sg3I5S6Mo2UKso0nzkR2NoKmUJAn0t+IZyj41QfMBMMyEuWoMEdYUcVe2pQzQHnKIpsr1fypWNPmzfkVzzIhoncP3FPBJW+nEqZSAmsBQa/YVn6h4PpWgZxFk7EaEGlLKJJ+/u6fQERF2mWWUFRnYrQZZTbIpe4A0veIPh/E/JvOh2dpQbqUewS8o8XDKapbzRuuvumb961W3UgATYQS/gFAmJApmb2UbRcdBwiJ2Ux1v8oX2/8GA+9el9dZt2uZV0OAyJvRiNYxYLKDm4Lyb/O9o5RwhB4VziplKL2R6QwJA4OrVB/sIm4logAlIecQOs5Blq6S57rN+nfp64iZWRY+P8lj+SNWOxGwqxWJIVfK52vbu7D0gonrm6ZK4KI6brD7zOIqhhzwXrUU+xcvtYkHkOpIOtSk/6sCT7iLRVmv04sTNYdkvQg1EUwzNq6yCnO9SBkP12fR+9NmfoJ+NoyYXCi X-OriginatorOrg: fujitsu.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: OS0PR01MB5716.jpnprd01.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 054ffb62-2e7d-496c-4315-08db1fa17e9d X-MS-Exchange-CrossTenant-originalarrivaltime: 08 Mar 2023 06:51:07.6863 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: a19f121d-81e1-4858-a9d8-736e267fd4c7 X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: dfz3zF0E5yWG6VTUUInJAzhwwrWWvWmLmkaRIsnSrajd75FmpVi1UOnQT5Llq+3XPur7OI37KlvRaWnReSbt2A== X-MS-Exchange-Transport-CrossTenantHeadersStamped: TYCPR01MB8407 List-Id: List-Help: List-Subscribe: List-Post: List-Owner: List-Archive: Archived-At: Precedence: bulk T24gVHVlc2RheSwgTWFyY2ggNywgMjAyMyA5OjQ3IFBNIMOWbmRlciBLYWxhY8SxIDxvbmRlcmth bGFjaUBnbWFpbC5jb20+ICB3cm90ZToNCg0KSGksDQoNCj4gPiA+IExldCBtZSBnaXZlIGFuIGV4 YW1wbGUgdG8gZGVtb25zdHJhdGUgd2h5IEkgdGhvdWdodCBzb21ldGhpbmcgaXMgZmlzaHkgaGVy ZToNCj4gPiA+DQo+ID4gPiBJbWFnaW5lIHJlbCBoYXMgYSAobm9uLWRlZmF1bHQpIFJFUExJQ0Eg SURFTlRJVFkgd2l0aCBPaWQ9MTExMS4NCj4gPiA+IEltYWdpbmUgdGhlIHNhbWUgcmVsIGhhcyBh IFBSSU1BUlkgS0VZIHdpdGggT2lkPTIyMjIuDQo+ID4gPg0KPiANCj4gSG1tLCBhbHJpZ2h0LCB0 aGlzIGlzIHN5bnRhY3RpY2FsbHkgcG9zc2libGUsIGJ1dCBub3Qgc3VyZSBpZiBhbnkgdXNlciAN Cj4gd291bGQgZG8gdGhpcy4gU3RpbGwgdGhhbmtzIGZvciBjYXRjaGluZyB0aGlzLg0KPiANCj4g QW5kLCB5b3UgYXJlIHJpZ2h0LCBpZiBhIHVzZXIgaGFzIGNyZWF0ZWQgc3VjaCBhIHNjaGVtYSwg SWR4SXNSZWxhdGlvbklkZW50aXR5T3JQSygpIA0KPiB3b3VsZCByZXR1cm4gdGhlIHdyb25nIHJl c3VsdCBhbmQgd2UnZCB1c2Ugc2VxdWVudGlhbCBzY2FuIGluc3RlYWQgb2YgaW5kZXggc2Nhbi4g DQo+IFRoaXMgd291bGQgYmUgYSByZWdyZXNzaW9uLiBJIHRoaW5rIHdlIHNob3VsZCBjaGFuZ2Ug dGhlIGZ1bmN0aW9uLiANCg0KSSBhbSBsb29raW5nIGF0IHRoZSBsYXRlc3QgcGF0Y2ggYW5kIGhh dmUgYSBxdWVzdGlvbiBhYm91dCB0aGUgZm9sbG93aW5nIGNvZGUuDQoNCiAJLyogVHJ5IHRvIGZp bmQgdGhlIHR1cGxlICovDQotCWlmIChpbmRleF9nZXRuZXh0X3Nsb3Qoc2NhbiwgRm9yd2FyZFNj YW5EaXJlY3Rpb24sIG91dHNsb3QpKQ0KKwl3aGlsZSAoaW5kZXhfZ2V0bmV4dF9zbG90KHNjYW4s IEZvcndhcmRTY2FuRGlyZWN0aW9uLCBvdXRzbG90KSkNCiAJew0KLQkJZm91bmQgPSB0cnVlOw0K KwkJLyoNCisJCSAqIEF2b2lkIGV4cGVuc2l2ZSBlcXVhbGl0eSBjaGVjayBpZiB0aGUgaW5kZXgg aXMgcHJpbWFyeSBrZXkgb3INCisJCSAqIHJlcGxpY2EgaWRlbnRpdHkgaW5kZXguDQorCQkgKi8N CisJCWlmICghaWR4SXNSZWxhdGlvbklkZW50aXR5T3JQSykNCisJCXsNCisJCQlpZiAoZXEgPT0g TlVMTCkNCisJCQl7DQorI2lmZGVmIFVTRV9BU1NFUlRfQ0hFQ0tJTkcNCisJCQkJLyogYXBwbHkg YXNzZXJ0aW9ucyBvbmx5IG9uY2UgZm9yIHRoZSBpbnB1dCBpZHhvaWQgKi8NCisJCQkJSW5kZXhJ bmZvICAqaW5kZXhJbmZvID0gQnVpbGRJbmRleEluZm8oaWR4cmVsKTsNCisJCQkJQXNzZXJ0KElz SW5kZXhVc2FibGVGb3JSZXBsaWNhSWRlbnRpdHlGdWxsKGluZGV4SW5mbykpOw0KKyNlbmRpZg0K Kw0KKwkJCQkvKg0KKwkJCQkgKiBXZSBvbmx5IG5lZWQgdG8gYWxsb2NhdGUgb25jZS4gVGhpcyBp cyBhbGxvY2F0ZWQgd2l0aGluIHBlcg0KKwkJCQkgKiB0dXBsZSBjb250ZXh0IC0tIEFwcGx5TWVz c2FnZUNvbnRleHQgLS0gaGVuY2Ugbm8gbmVlZCB0bw0KKwkJCQkgKiBleHBsaWNpdGx5IHBmcmVl KCkuDQorCQkJCSAqLw0KKwkJCQllcSA9IHBhbGxvYzAoc2l6ZW9mKCplcSkgKiBvdXRzbG90LT50 dHNfdHVwbGVEZXNjcmlwdG9yLT5uYXR0cyk7DQorCQkJfQ0KKw0KKwkJCWlmICghdHVwbGVzX2Vx dWFsKG91dHNsb3QsIHNlYXJjaHNsb3QsIGVxKSkNCisJCQkJY29udGludWU7DQorCQl9DQoNCklJ UkMsIGl0IGludm9rZXMgdHVwbGVzX2VxdWFsIGZvciBhbGwgY2FzZXMgdW5sZXNzIHdlIGFyZSB1 c2luZyByZXBsaWNhDQppZGVudGl0eSBrZXkgb3IgcHJpbWFyeSBrZXkgdG8gc2Nhbi4gQnV0IHRo ZXJlIHNlZW0gc29tZSBvdGhlciBjYXNlcyB3aGVyZSB0aGUNCnR1cGxlc19lcXVhbCBsb29rcyB1 bm5lY2Vzc2FyeS4NCg0KRm9yIGV4YW1wbGUsIGlmIHRoZSB0YWJsZSBvbiBzdWJzY3JpYmVyIGRv bid0IGhhdmUgYSBQSyBvciBSSSBrZXkgYnV0IGhhdmUgYQ0Kbm90LW51bGwsIG5vbi1kZWZlcnJh YmxlLCB1bmlxdWUga2V5LiBBbmQgaWYgdGhlIGFwcGx5IHdvcmtlciBjaG9vc2UgdGhpcyBpbmRl eA0KdG8gZG8gdGhlIHNjYW4sIGl0IHNlZW1zIHdlIGNhbiBza2lwIHRoZSB0dXBsZXNfZXF1YWwg YXMgd2VsbC4NCg0KLS1FeGFtcGxlDQpwdWI6DQpDUkVBVEUgVEFCTEUgdGVzdF9yZXBsaWNhX2lk X2Z1bGwgKGEgaW50LCBiIGludCBub3QgbnVsbCk7DQpBTFRFUiBUQUJMRSB0ZXN0X3JlcGxpY2Ff aWRfZnVsbCBSRVBMSUNBIElERU5USVRZIEZVTEw7DQpDUkVBVEUgUFVCTElDQVRJT04gdGFwX3B1 Yl9yZXBfZnVsbCBGT1IgVEFCTEUgdGVzdF9yZXBsaWNhX2lkX2Z1bGw7DQoNCnN1YjoNCkNSRUFU RSBUQUJMRSB0ZXN0X3JlcGxpY2FfaWRfZnVsbCAoYSBpbnQsIGIgaW50IG5vdCBudWxsKTsNCkNS RUFURSBVTklRVUUgSU5ERVggdGVzdF9yZXBsaWNhX2lkX2Z1bGxfaWR4IE9OIHRlc3RfcmVwbGlj YV9pZF9mdWxsKGIpOw0KLS0NCg0KSSBhbSBub3QgMTAwJSBzdXJlIGlmIGl0J3Mgd29ydGggb3B0 aW1pemluZyB0aGlzIGJ5IGNvbXBsaWNhdGluZyB0aGUgY2hlY2sgaW4NCmlkeElzUmVsYXRpb25J ZGVudGl0eU9yUEsuIFdoYXQgZG8geW91IHRoaW5rID8NCg0KQmVzdCBSZWdhcmRzLA0KSG91IHpq DQo=