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.94.2) (envelope-from ) id 1qTKBN-009Bej-8I for pgsql-hackers@arkaria.postgresql.org; Tue, 08 Aug 2023 10:43:21 +0000 Received: from localhost ([127.0.0.1] helo=malur.postgresql.org) by malur.postgresql.org with esmtp (Exim 4.94.2) (envelope-from ) id 1qTKBL-00FrBo-OG for pgsql-hackers@arkaria.postgresql.org; Tue, 08 Aug 2023 10:43:20 +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.94.2) (envelope-from ) id 1qTKBL-00FrBg-At for pgsql-hackers@lists.postgresql.org; Tue, 08 Aug 2023 10:43:19 +0000 Received: from esa7.fujitsucc.c3s2.iphmx.com ([68.232.159.87]) by magus.postgresql.org with esmtps (TLS1.2) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.94.2) (envelope-from ) id 1qTKBH-001GuG-01 for pgsql-hackers@lists.postgresql.org; Tue, 08 Aug 2023 10:43:19 +0000 DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=fujitsu.com; i=@fujitsu.com; q=dns/txt; s=fj1; t=1691491395; x=1723027395; h=from:to:cc:subject:date:message-id:mime-version; bh=Xlu+IIyr2uOwIERNE2DvCRgA/4Ostme2MUbZbwvnNJk=; b=DHutiQRDFQ3huFJyrNIr6LnvRsh5D6Mg/2/n7zB1B+Zh/YoTHSk9AzI0 XX9OtSWHzkDkUOx9ND2hwhITitSvVbBraOacFc9Ed1KswMd0jcBgHeAs/ fDZSvgaqOb5/lNkcrMRgVf92ePw+Hc1aA+MqOUbA3cZMwHoB3mX6znIf9 0RhGqvfJvnqsxgtGwPK5m3pNzxAH6R5c6cBifBZKJTM/HWs23izMC13Jt RhgUX9CrQzD79bExP/f4tJ3OeTOK/P/ucFO9bpyHE22u+TRmcPvqQu2pR KXIe7cnAK6nk8TG9lBK2RfKvk16FYeLl2ncFFGiTx/r3I+BjNTSp8F+nr A==; X-IronPort-AV: E=McAfee;i="6600,9927,10795"; a="91930939" X-IronPort-AV: E=Sophos;i="6.01,263,1684767600"; d="scan'208,223";a="91930939" Received: from mail-os0jpn01lp2106.outbound.protection.outlook.com (HELO JPN01-OS0-obe.outbound.protection.outlook.com) ([104.47.23.106]) by ob1.fujitsucc.c3s2.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 08 Aug 2023 19:43:12 +0900 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=Q362HPoW+XUs2QbOi+fBB428vPGTBh3S0mOBk3LJv7CfW/5HrYwAoHeP8URj02qqu2NmiDTiuPPK2eb4pNzqiz6INoY0jiDWm5nuWexxp06MoOlfkc7S6zDC+J0KssKGY5wuKRjmfxIOIaxxlnjiJ/CdK8Hfn55qABH6OLPV/sLWZr34q8PGcrRxHn6FpBSr0ONoFW6mbAQcSeG7wZtZjM6UpHlOnYMCM38ivTsRPvnS0eUg0BJ7fMcJ9p3BiaPjLX+x2VAYqKiO4lnYPnDXskKpsVr3Uachmnz+17iW3ZgQyVu51xyysFnPtXB68Ts/0Fli9dsPRNBiQuv4e7cbYg== 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=7H+UtrFWOLFLeoA9ZLqG8bBrS1vwYoTs3b1EYBjKD2Q=; b=IIC9i/48014ciJL16uQ8UEVYjtF+gCZCe9UJslwZtRhq8CIzReWtF+7dg2B3l1a8Ui6tWbjpasT7LW5vLtXByNxKxQ2DxiJsEJEzmWd/R6jA4yE//NneX3hi009QBJiSPQI79F+Hxmi9Doy9IgQCUlsZ1NbjxV8riJ02we2KXKjH2L3LPJ3QqUCPHBMYTq4Fu/svzw8p0fTHdUtpTC1wWWgYDcqdHh1FVHUp2pcuEHrHSIuwwpWeO2bxwX2k66brMCK06ai90ThCLo61isTSD7A1BW+NLWEwKIeJ1O8OGKblLSR8isAUo5pYBJapajN5SvOqZrLCPIwSSAbK5cFt3g== 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 TYAPR01MB5866.jpnprd01.prod.outlook.com (2603:1096:404:8056::13) by TYWPR01MB9693.jpnprd01.prod.outlook.com (2603:1096:400:231::6) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6652.27; Tue, 8 Aug 2023 10:43:06 +0000 Received: from TYAPR01MB5866.jpnprd01.prod.outlook.com ([fe80::9437:7145:f0cb:d683]) by TYAPR01MB5866.jpnprd01.prod.outlook.com ([fe80::9437:7145:f0cb:d683%4]) with mapi id 15.20.6652.026; Tue, 8 Aug 2023 10:43:06 +0000 From: "Hayato Kuroda (Fujitsu)" To: PostgreSQL Hackers CC: Julien Rouhaud , Masahiko Sawada , Amit Kapila Subject: Suppress generating WAL records during the upgrade Thread-Topic: Suppress generating WAL records during the upgrade Thread-Index: AdnJ5I+Gdc6/k91PRkOIGyS6qJEQAg== Date: Tue, 8 Aug 2023 10:43:06 +0000 Message-ID: Accept-Language: ja-JP, en-US Content-Language: ja-JP X-MS-Has-Attach: yes X-MS-TNEF-Correlator: msip_labels: MSIP_Label_a7295cc1-d279-42ac-ab4d-3b0f4fece050_Enabled=true; MSIP_Label_a7295cc1-d279-42ac-ab4d-3b0f4fece050_SetDate=2023-08-08T10:38:54Z; MSIP_Label_a7295cc1-d279-42ac-ab4d-3b0f4fece050_Method=Standard; MSIP_Label_a7295cc1-d279-42ac-ab4d-3b0f4fece050_Name=FUJITSU-RESTRICTED?; MSIP_Label_a7295cc1-d279-42ac-ab4d-3b0f4fece050_SiteId=a19f121d-81e1-4858-a9d8-736e267fd4c7; MSIP_Label_a7295cc1-d279-42ac-ab4d-3b0f4fece050_ActionId=844a8d3d-70a0-4c70-b745-a0991cf77f3d; MSIP_Label_a7295cc1-d279-42ac-ab4d-3b0f4fece050_ContentBits=0 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: TYAPR01MB5866:EE_|TYWPR01MB9693:EE_ x-ms-office365-filtering-correlation-id: 32a4e5ae-7890-4c8d-4438-08db97fc4012 x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: A2tam3puh33eoEFXsccLAwe928uQcmmGqvRyqTW/TdivM6xkTHTl3gn/sWL6w2K5PThxI4lY7vaehW7FcLw9SQ6vZUqQrZeGJ1EwnF9W1W8JtsLPVMAzg8y0DKKJjspNeBptUApyAHyv0N5BJ5bl8/z6EX0BtccKFEYJIuRs2/hTvKCJk0be42jgrcnxm0SwKx794pDyFvphoB+zuKm3b438OYyV0013fTQPCpiivLvMsy0CITFGt/2+zCQiJftlFGae+HEzF6J2NPyXVOwrzyWlYFwfenzopeuNCEPkq9Z2eYGrPoEEy0KBWzFvcDLcTeEiWXLOoM1I1+k33tEl6FQJqaV7q2TOczk5nt/7Fc2IecCGhohyqfiGEsH8yVHWa5wENv7oijsLbjG4owRo8uUe/qUZ8fdHSbV2BmR0BAoY02ZSPQMdiuQs2GOoiAIH8Qrewq9yLMrO/TD0PBzHYUc1jqtSpejSbiTj8ivlviJhSc6DIwj9CzXP03xl4BWnQgVFbLTn4cPen5O3ukJ6YlhiOd4hGhq0mkQRC2Th/AszFUYt649SHHZd9nm+M7Rdzpyyjuig8cWpGyhqZVObDehxCJVuq3PfcLS8ynGsvtprq8u5FDq6McRPXKhiw7PoahfoPtlDvi5CI1fsr7L5YA== x-forefront-antispam-report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:TYAPR01MB5866.jpnprd01.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(4636009)(366004)(136003)(376002)(39860400002)(346002)(396003)(451199021)(186006)(1800799003)(1590799018)(66556008)(76116006)(66476007)(64756008)(4326008)(6916009)(66946007)(41300700001)(316002)(66446008)(2906002)(54906003)(478600001)(966005)(7696005)(9686003)(6506007)(71200400001)(26005)(8936002)(8676002)(5660300002)(52536014)(1580799015)(33656002)(85182001)(83380400001)(99936003)(38070700005)(86362001)(82960400001)(55016003)(122000001)(38100700002);DIR:OUT;SFP:1101; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?iso-2022-jp?B?QUtVL3Q3SmxpbDdncTRIOVVqQlNaSFhTdkFQSUMxSEpHZmx2dnlNMGgy?= =?iso-2022-jp?B?eG41cGdFQVhHMVY3b1pZRUNUMTh3eXFES2JCanVRNVM1cmF5UzV1ajJa?= =?iso-2022-jp?B?V2xPQTE2dFpqc21jclVFVGV3TyswVVFyckdrRlVFc0FKSlVDQ2Q5RFRj?= =?iso-2022-jp?B?clNlUzlHRWFMT2MzQ0Q5SnY1VXArNFhDcitVK1VyZ0pGTEpqa29KVDV5?= =?iso-2022-jp?B?cTF0UWxJVTU4bDNyQ0tQc2Z4aTNubWNUT3gzbk5xbzRyQzlYZ0hqRE95?= =?iso-2022-jp?B?cUVwTkZ0dGE1bDVxa2ViZDFxb1VuN3N6Z1N3d0N6clM4Tndpc0hqN0hU?= =?iso-2022-jp?B?SitRNlFYWU9GaXJOUHZYbGkveG5ETlExRCttb28wK01HdWd4aXVtZGFj?= =?iso-2022-jp?B?dFBSTUp0UTlONGpSamJ6bHZWVHM1bDJLMkNlOWJGSGc2VlNwNGI1K3hz?= =?iso-2022-jp?B?SDdScWUramFOdTFIeGZ4WEZReVVTeVlLYUNNSUhFd200ZEtBTkp2YlBJ?= =?iso-2022-jp?B?S21oU0hMUGhIcFdXa01Cak5SSXNVbk16SmUyZGtVd21pK3FYWVVXSmtU?= =?iso-2022-jp?B?V0xRNi9Hd05QcUsxdHdUNXFRcG52VEJjKysvTCtmeERrUi9MQU1SRU01?= =?iso-2022-jp?B?Y3NlOHUvMjA3cTNmSHl4dml0dEp6MW82SWlFL29DVUxwcmJXcjhLWWlW?= =?iso-2022-jp?B?TTlsRDQyWFJwQVliZUo1UlhMazlFcXk4OVBKTGRkSzhydHFDdmVjOEVJ?= =?iso-2022-jp?B?YUt6ZnlNS0FXK28vcXZsdkQvSytTL0VPTUE2Vlc5NGdKWE9UOFhpTmF1?= =?iso-2022-jp?B?L0piYTZDYjZvYndLSVFpRjVIbXJuWXBSc0xpb0IwVEd2dzZEaWh1VmhU?= =?iso-2022-jp?B?a2UxZHZoa0FaSDlyOHNhcE9YSEFVQWNrdDF6OTR0eStCYzNtTnhyWHlu?= =?iso-2022-jp?B?TitSZVJRSnA2RW11cUxiWHNhYjlCQ2xrTlVQbEhtQkFmYVB4QndxT3A5?= =?iso-2022-jp?B?UEpnWWJDTzlGNFFFWFlubHVDdDFPaW9xR3B5OEJSZ3VQcHpLSFdxVHc5?= =?iso-2022-jp?B?R1NqLzA4ZEJzTzZGZSt4SERFeVdCODZpMWZrcmExczBZRDdFczExc1Nj?= =?iso-2022-jp?B?RHQ4K3IrQ1h6N2NTRWtGU3FFYlpMS2liUWgrU0srSUtsWlJWSFVuaGN6?= =?iso-2022-jp?B?WkluVTdwamx6RGdnbm1YYVR2ZHVsRjNmbFMramFRZkU2bjgzemFja2V5?= =?iso-2022-jp?B?cGtad1B0RUxwTzhsckIzR2pWZFVIcHNDOHAvcmU2eGw3cUhqWElvbSth?= =?iso-2022-jp?B?ZlR1dVJnOGU0VXAwc2tDVmtyK2dtMkV3aGpCdUdTVjVReXA0cWdkYnJm?= =?iso-2022-jp?B?NS9BOUNNcjRGU012a2hOTmNia24rU2ZkZGk2ZHFJNlNNQVpza0VZN09M?= =?iso-2022-jp?B?RXYvZ1FIOEdaYk1kWjUwdVVIQWoxclZtZXlzNSs5SmdVelp0QVNid3Jh?= =?iso-2022-jp?B?TmhuaXM1YzdsTERPcVRhaWhaajdQWHhmUnBWQjAvWXVXY1pEeWdxd3c4?= =?iso-2022-jp?B?SjByZGdiejNIbG55M3p4VjN4Z3JIV1h0djZNMUR2eXBqemFuNVc5WWFo?= =?iso-2022-jp?B?OU8yUlBFZGo1UmM3dWs5WFVyTXMxak1EMHZjeFd3L2YzUm1ZK0l6UktX?= =?iso-2022-jp?B?TWozNWNUMjlhUUpaL2RLZHFJOEVJWm1CM1VlM0FkT3dwMDhBWUZNUTVU?= =?iso-2022-jp?B?MktmVXQxR2xrRWRXZC85dmYwSStyK1ZDVml4OEc5dDBhTTA2WFBjVGlm?= =?iso-2022-jp?B?bXhmUXZFbG5ocWZtbGtTbnRRUlVtQ1NENmtwaTM0VlJVazNaVDN2TFFF?= =?iso-2022-jp?B?QWNteVorKzdoVHUydXhsbkF3T1FXbnJRaXByVXgraG9SQ3MwMERhLzIv?= =?iso-2022-jp?B?cEhabTZudlNOWGdEOXlLSHBtV2Q1a3JyN0kreW5pV3huWE9mOHVReVh6?= =?iso-2022-jp?B?SGh0emE1d0pHVXcwWUlwY2FSWXh0TDVIR2M3RXJHNGVReUQ1Qmt4VDhZ?= =?iso-2022-jp?B?SDJsK0tuOW5rU2I4ZVZ1YVVabXozKzV6VzlHMGdrbW9HOW1hcndGbXBE?= =?iso-2022-jp?B?OUczYkxJcFJWcGF5NmpzYUxveDZub2d0aGNud2lsc3FUV29KRURKQ28r?= =?iso-2022-jp?B?OVFBdzkrdTcvb1NWRzVMMFk5NjZ3VWx1aVNKYW8yOWJnTVoxc0ZmbUNl?= =?iso-2022-jp?B?eDJmc3puSjQ3YmlxT0dIbnh2KzZSTk8yQ1p1Qm5YdS9JQ2FpRGliaWMz?= =?iso-2022-jp?B?NDV1bFdOektWTUxGUFFtbzhFWHB0Yk1JUmc9PQ==?= Content-Type: multipart/mixed; boundary="_002_TYAPR01MB58660273EACEFC5BF256B133F50DATYAPR01MB5866jpnp_" MIME-Version: 1.0 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: 1HFr+4FwkKD3C0yKmtW6PWjoLS6pUg20sH9gxSjtpc599FcV4FFb7DPHrin70FXQGtQHn3ActYIEvZfM2Mdku90TdU9N0OpIuaL/8Q4wlbjA7HNvn5pXFNVqMkzDD6dd7H9OZ323gRhX1wvKRldSRbjpOyfGIBKY6BDbSIbARgZkGRiC9XG7fAdMxsbPLGOlhAQmIWjNVn74cQ9u7t9qgAJ+Yi233GEVV7Y6UxLncAty+plli/0p8uj7wPhSx0kOGWcqsbdcFPePstosOYXT7IOA12wp+cLp5ilH5lTaUXOrziFNC79kemnqyejBGhQXRZm8gtXY+7q3X/O7alEKAff6wvQs/pcZwNnLTBRyVm3zAkhKvpGplWIzX3na0LGLlv99UBvTD1f33rMteYMtMhjfPGL0kCW8wzZDSwO9td87STmIKssjhhVR+CmMPAib/tOfF+ybOgsT7MsJCEu/hGfodHTgCZThI0dIU8vfai/h9sevw44uxJB/w4tPApixWyPlf1MMxDiDq6jKHseV73uxcxColw2QtIhlgJc15EL7j0qmg6fU+K9BtO6Qxa/AORzAzEI608x3ce4Pi0RFAHchuDe3YvwV+xeDLQ7/Gj9qvh7AUJjNNDbpvBpSVkuJRp78fc6q+6xI7uQztW2VJ5/9IN8aU3MUrAu2Wgln9AUawOkIsL6ous7h6k4kLZx/VZ0QK7oYin9HQnJBCUNkLU/8PsMAervEKNcn1/wkISoobNpa5jdYFDm+0m/TnRfu1fBxfe4uZZH55aAGezDfMHbM1v8p9YiqRQz65/YLry1U70+6OsETrnNm2K5qIfyh X-OriginatorOrg: fujitsu.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: TYAPR01MB5866.jpnprd01.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 32a4e5ae-7890-4c8d-4438-08db97fc4012 X-MS-Exchange-CrossTenant-originalarrivaltime: 08 Aug 2023 10:43:06.5406 (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: EG8kYxOUnhl2L5SdNjmZ4s34SXZEB4EeUiL5WRMk1ur2ZsMn5NBkfgKhZrskNWhkiU307CQCqs3ihHPjMSpRGlk/elkQ3fr/Mae8xGjutwU= X-MS-Exchange-Transport-CrossTenantHeadersStamped: TYWPR01MB9693 List-Id: List-Help: List-Subscribe: List-Post: List-Owner: List-Archive: Archived-At: Precedence: bulk --_002_TYAPR01MB58660273EACEFC5BF256B133F50DATYAPR01MB5866jpnp_ Content-Type: text/plain; charset="iso-2022-jp" Content-Transfer-Encoding: quoted-printable Dear hackers, (CC: Julien, Sawada-san, Amit) This is a fork thread from "[PoC] pg_upgrade: allow to upgrade publisher no= de" [1]. # Background [1] is the patch which allows to replicate logical replication slots from o= ld to new node. Followings describe the rough steps: 1. Boot old node as binary-upgrade mode 2. Check confirmed_lsn of all the slots, and confirm all WALs are replicate= d to downstream 3. Dump slot info to sql file 4. Stop old node 5. Boot new node as binary-upgrade mode ... Here, step 2 was introduced for avoiding data loss. If there are some WAL r= ecords ahead confirmed_lsn, such records would not be replicated anymore - it may = be dangerous. So in the current patch, pg_upgrade fails if other records than SHUTDOWN_CH= ECKPOINT exits after any confirmed_flush_lsn. # Problem We found that following three records might be generated during the upgrade= . * RUNNING_XACT * CHECKPOINT_ONLINE * XLOG_FPI_FOR_HINT RUNNING_XACT might be written by the background writer. Conditions for the = generation are: a. Elapsed 15 seconds since the last WAL creation or bootstraping of the pr= ocess, and either of them: b-1. The process had never create the RUNNING_XACT record, or b-2. Some "important WALs" were created after the last RUNNING_XACT record CHECKPOINT_ONLINE might be written by the checkpointer. Conditions for the = generation are: a. Elapsed checkpoint_timeout seconds since the last creation or bootstrapi= ng, and either of them: b-1. The process had never create the CHECKPOINT_ONLINE record, or b-2. Some "important WALs" were created after the last CHECKPOINT record XLOG_FPI_FOR_HINT, which is raised by Sawada-san, might be generated by bac= kend processes. Conditions for the generation are: a. Backend processes scanned any tuples (even if it was the system catalog)= , or either of them: b-1. Data checksum was enabled, or b-2. wal_log_hints was set to on # Solution I wanted to suppress generations of WALs during the upgrade, because of the= "# Background". Regarding the RUNNING_XACT and CHECKPOINT_ONLINE, it might be OK by removin= g the condition b-1. The duration between bootstrap and initial {RUNNING_XACT|CHE= CKPOINT_ONLINE} becomes longer, but I could not find impacts by it. As for the XLOG_FPI_FOR_HINT, the simplest way I came up with is not to cal= l XLogSaveBufferForHint() during binary upgrade. Considerations may be not en= ough, but I attached the patch for the fix. It passed CI on my repository. Do you have any other considerations about it? An approach, which adds "if (IsBinaryUpgare)" in XLogInsertAllowed(), was p= roposed in [2].=20 But I'm not sure it could really solve the issue - e.g., XLogInsertRecord()= just raised an ERROR if !XLogInsertAllowed(). [1]: https://commitfest.postgresql.org/44/4273/ [2]: https://www.postgresql.org/message-id/flat/20210121152357.s6eflhqyh4g5= e6dv%40dalibo.com Best Regards, Hayato Kuroda FUJITSU LIMITED --_002_TYAPR01MB58660273EACEFC5BF256B133F50DATYAPR01MB5866jpnp_ Content-Type: application/octet-stream; name="0001-Suppress-generating-WAL-records-during-the-upgrade.patch" Content-Description: 0001-Suppress-generating-WAL-records-during-the-upgrade.patch Content-Disposition: attachment; filename="0001-Suppress-generating-WAL-records-during-the-upgrade.patch"; size=2680; creation-date="Tue, 08 Aug 2023 10:39:21 GMT"; modification-date="Tue, 08 Aug 2023 10:43:06 GMT" Content-Transfer-Encoding: base64 RnJvbSBmZmE3MmNkNDA2N2I1ZDMxY2U2ZGM2YmMyODE4NjA3NDI1MTgxOTEzIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBIYXlhdG8gS3Vyb2RhIDxrdXJvZGEuaGF5YXRvQGZ1aml0c3Uu Y29tPgpEYXRlOiBUdWUsIDggQXVnIDIwMjMgMDg6MDg6MzEgKzAwMDAKU3ViamVjdDogW1BBVENI XSBTdXBwcmVzcyBnZW5lcmF0aW5nIFdBTCByZWNvcmRzIGR1cmluZyB0aGUgdXBncmFkZQoKLS0t CiBzcmMvYmFja2VuZC9hY2Nlc3MvdHJhbnNhbS94bG9nLmMgICB8IDMgKystCiBzcmMvYmFja2Vu ZC9wb3N0bWFzdGVyL2Jnd3JpdGVyLmMgICB8IDUgKysrLS0KIHNyYy9iYWNrZW5kL3N0b3JhZ2Uv YnVmZmVyL2J1Zm1nci5jIHwgNSArKysrKwogMyBmaWxlcyBjaGFuZ2VkLCAxMCBpbnNlcnRpb25z KCspLCAzIGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL3NyYy9iYWNrZW5kL2FjY2Vzcy90cmFu c2FtL3hsb2cuYyBiL3NyYy9iYWNrZW5kL2FjY2Vzcy90cmFuc2FtL3hsb2cuYwppbmRleCA2MGMw YjdlYzNhLi4yZjFjYmM2ODk4IDEwMDY0NAotLS0gYS9zcmMvYmFja2VuZC9hY2Nlc3MvdHJhbnNh bS94bG9nLmMKKysrIGIvc3JjL2JhY2tlbmQvYWNjZXNzL3RyYW5zYW0veGxvZy5jCkBAIC02NTU1 LDcgKzY1NTUsOCBAQCBDcmVhdGVDaGVja1BvaW50KGludCBmbGFncykKIAlpZiAoKGZsYWdzICYg KENIRUNLUE9JTlRfSVNfU0hVVERPV04gfCBDSEVDS1BPSU5UX0VORF9PRl9SRUNPVkVSWSB8CiAJ CQkJICBDSEVDS1BPSU5UX0ZPUkNFKSkgPT0gMCkKIAl7Ci0JCWlmIChsYXN0X2ltcG9ydGFudF9s c24gPT0gQ29udHJvbEZpbGUtPmNoZWNrUG9pbnQpCisJCWlmIChYTG9nUmVjUHRySXNJbnZhbGlk KGxhc3RfaW1wb3J0YW50X2xzbikgfHwKKwkJCWxhc3RfaW1wb3J0YW50X2xzbiA9PSBDb250cm9s RmlsZS0+Y2hlY2tQb2ludCkKIAkJewogCQkJV0FMSW5zZXJ0TG9ja1JlbGVhc2UoKTsKIAkJCUVO RF9DUklUX1NFQ1RJT04oKTsKZGlmZiAtLWdpdCBhL3NyYy9iYWNrZW5kL3Bvc3RtYXN0ZXIvYmd3 cml0ZXIuYyBiL3NyYy9iYWNrZW5kL3Bvc3RtYXN0ZXIvYmd3cml0ZXIuYwppbmRleCBjYWFkNjQy ZWM5Li45NWQ4OGFjOGJjIDEwMDY0NAotLS0gYS9zcmMvYmFja2VuZC9wb3N0bWFzdGVyL2Jnd3Jp dGVyLmMKKysrIGIvc3JjL2JhY2tlbmQvcG9zdG1hc3Rlci9iZ3dyaXRlci5jCkBAIC0yNzYsNiAr Mjc2LDcgQEAgQmFja2dyb3VuZFdyaXRlck1haW4odm9pZCkKIAkJewogCQkJVGltZXN0YW1wVHog dGltZW91dCA9IDA7CiAJCQlUaW1lc3RhbXBUeiBub3cgPSBHZXRDdXJyZW50VGltZXN0YW1wKCk7 CisJCQlYTG9nUmVjUHRyIGxhc3RfaW1wb3J0YW50ID0gR2V0TGFzdEltcG9ydGFudFJlY1B0cigp OwogCiAJCQl0aW1lb3V0ID0gVGltZXN0YW1wVHpQbHVzTWlsbGlzZWNvbmRzKGxhc3Rfc25hcHNo b3RfdHMsCiAJCQkJCQkJCQkJCQkgIExPR19TTkFQU0hPVF9JTlRFUlZBTF9NUyk7CkBAIC0yODcs OCArMjg4LDggQEAgQmFja2dyb3VuZFdyaXRlck1haW4odm9pZCkKIAkJCSAqIHN0YXJ0IG9mIGEg cmVjb3JkLCB3aGVyZWFzIGxhc3Rfc25hcHNob3RfbHNuIHBvaW50cyBqdXN0IHBhc3QKIAkJCSAq IHRoZSBlbmQgb2YgdGhlIHJlY29yZC4KIAkJCSAqLwotCQkJaWYgKG5vdyA+PSB0aW1lb3V0ICYm Ci0JCQkJbGFzdF9zbmFwc2hvdF9sc24gPD0gR2V0TGFzdEltcG9ydGFudFJlY1B0cigpKQorCQkJ aWYgKG5vdyA+PSB0aW1lb3V0ICYmIGxhc3Rfc25hcHNob3RfbHNuIDw9IGxhc3RfaW1wb3J0YW50 ICYmCisJCQkJIVhMb2dSZWNQdHJJc0ludmFsaWQobGFzdF9pbXBvcnRhbnQpKQogCQkJewogCQkJ CWxhc3Rfc25hcHNob3RfbHNuID0gTG9nU3RhbmRieVNuYXBzaG90KCk7CiAJCQkJbGFzdF9zbmFw c2hvdF90cyA9IG5vdzsKZGlmZiAtLWdpdCBhL3NyYy9iYWNrZW5kL3N0b3JhZ2UvYnVmZmVyL2J1 Zm1nci5jIGIvc3JjL2JhY2tlbmQvc3RvcmFnZS9idWZmZXIvYnVmbWdyLmMKaW5kZXggZGYyMmFh YTFjNS4uZGIwZmM0ZWY5NiAxMDA2NDQKLS0tIGEvc3JjL2JhY2tlbmQvc3RvcmFnZS9idWZmZXIv YnVmbWdyLmMKKysrIGIvc3JjL2JhY2tlbmQvc3RvcmFnZS9idWZmZXIvYnVmbWdyLmMKQEAgLTQ1 ODgsOCArNDU4OCwxMyBAQCBNYXJrQnVmZmVyRGlydHlIaW50KEJ1ZmZlciBidWZmZXIsIGJvb2wg YnVmZmVyX3N0ZCkKIAkJICoKIAkJICogV2UgZG9uJ3QgY2hlY2sgZnVsbF9wYWdlX3dyaXRlcyBo ZXJlIGJlY2F1c2UgdGhhdCBsb2dpYyBpcyBpbmNsdWRlZAogCQkgKiB3aGVuIHdlIGNhbGwgWExv Z0luc2VydCgpIHNpbmNlIHRoZSB2YWx1ZSBjaGFuZ2VzIGR5bmFtaWNhbGx5LgorCQkgKgorCQkg KiBYWFg6IGF2b2lkIHRvIHdyaXRlIFdBTCBpZiB3ZSBhcmUgaW4gdGhlIGJpbmFyeS11cGdyYWRl IG1vZGUuIFNvbWUKKwkJICogY2F0YWxvZ3MgYXJlIHJlYWQgZHVyaW5nIHRoZSB1cGdyYWRlLCBi dXQgaXQgbWF5IHRyaWdnZXIgdG8gZ2VuZXJhdGUKKwkJICogWExPR19GUElfRk9SX0hJTlQuIEl0 IG1heSBiZWNvbWUgdGhlICJXQUwgaG9sZSIuCiAJCSAqLwogCQlpZiAoWExvZ0hpbnRCaXRJc05l ZWRlZCgpICYmCisJCQkhSXNCaW5hcnlVcGdyYWRlICYmCiAJCQkocGdfYXRvbWljX3JlYWRfdTMy KCZidWZIZHItPnN0YXRlKSAmIEJNX1BFUk1BTkVOVCkpCiAJCXsKIAkJCS8qCi0tIAoyLjI3LjAK Cg== --_002_TYAPR01MB58660273EACEFC5BF256B133F50DATYAPR01MB5866jpnp_--