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 1vcB16-002ka8-1d for pgsql-docs@arkaria.postgresql.org; Sat, 03 Jan 2026 23:26:41 +0000 Received: from localhost ([127.0.0.1] helo=malur.postgresql.org) by malur.postgresql.org with esmtp (Exim 4.96) (envelope-from ) id 1vcB14-00EC9C-20 for pgsql-docs@arkaria.postgresql.org; Sat, 03 Jan 2026 23:26:39 +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 1vcB14-00EC94-17 for pgsql-docs@lists.postgresql.org; Sat, 03 Jan 2026 23:26:39 +0000 Received: from mail-ed1-x534.google.com ([2a00:1450:4864:20::534]) by magus.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 (Exim 4.96) (envelope-from ) id 1vcB12-004KLp-1N for pgsql-docs@lists.postgresql.org; Sat, 03 Jan 2026 23:26:38 +0000 Received: by mail-ed1-x534.google.com with SMTP id 4fb4d7f45d1cf-64d4d8b3ad7so15265233a12.2 for ; Sat, 03 Jan 2026 15:26:36 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=jeltef.nl; s=google; t=1767482796; x=1768087596; darn=lists.postgresql.org; h=in-reply-to:references:mime-version:from:to:subject:cc:message-id :date:from:to:cc:subject:date:message-id:reply-to; bh=7I8e6NNE8GPG6sJuN43tB3145N59bd2NyG+7wp9ND1o=; b=inFXhSBsAAKMFs1esXin6Sy/MebiqKQx1pGp8ujiqrw5E8ud2yI0ohsG4GRALrj+SW Ky7quYHpTZQkc9JHBLreVdJkM0jRmw6nnDSKq2D70PAqs31bpIXhE0BxegIlXIjOuUo2 QMv1V5ODIOgd+xEqQ/yAI9Z3OE9IkjVg2R6Ui2ir9QM/PQPlWPL5pwFfrEEGiBLszcPp IvQt+7v5kVPODV6hjE98bzFbVZJnouc/ORplRMqSEjJY5Td0t24DFTsOoiVZD2iGBXGd Ax0UWyfMbOWNo73811usNFW+2WpzuY8rHFM5VtkseINPK5PTOr9v8K4KuVLpqSZCPlgl cq8Q== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1767482796; x=1768087596; h=in-reply-to:references:mime-version:from:to:subject:cc:message-id :date:x-gm-gg:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=7I8e6NNE8GPG6sJuN43tB3145N59bd2NyG+7wp9ND1o=; b=dXzY9yNgotA8tN5Sh5U4tnb9tzCA7TgkFibc56Zyuddt7T0LIsu19cUn2nU9HoeT14 Vf5Bg3vSl157/9GwAEZaC7KhU8s06XxOTvlWCqhEqcTCR5lx6yzlCnFoFVweAKKf1fYr yv5UllxaOep3PgE+rZgCjKP0Pue54/h2PDldjo11fWNVyTADmCMsiDgoQmAiQ0RmmOZo C4GvukP8IfkHaAHqtF7k56R2gu5qK7VFbRebmRmM65+6qsoZnxOiMRx76IUSkAOIZRN/ Z75iOAyzOkpE/ss51cHZz61mrupUeyQZO6REkdnJ+raZ+LMP+WAae6ux9m6u/OORTTK1 v/+A== X-Forwarded-Encrypted: i=1; AJvYcCUiuv27c/3msYitVjkUvb4EGeNqRn3niZXZbS4D6GdLyY1y5IFLut/0faYVQgfcb3TWiAefBspC23dM@lists.postgresql.org X-Gm-Message-State: AOJu0YwWfHTNKXAiKlCWLcLt6mNCKg+Pi34oqqHF9XvqZCzP2NUxXWN4 9pIq1FSCIQ37lKQK/wSOe9y3RfEyyvFZwJG69hEw/K5UZwETG+vGRrF95uBYNnDaPp8= X-Gm-Gg: AY/fxX61E/ZQ2QFpnREgzs3M5/acoWGZ5ubkBGCXtb0EEG72cTZrdM+AlmJwNffrxyr eBhSub94H/XLj/WglE4IS9+yzDQwHsY82hRb2RD20v2y0Mc1MLBM4IfSnnwkNTVqx/RlQsVUL3Y j0PRwxtxJ4VXuOIVpLv+VM00kkFOGxbMD1JGSuPRjB0/0r4Dh3iAYcgVQne614e+jJcyN1EBuwg wkF9yXxawM5qEIL/K8V19p6gRNaq2P/rx+2qQuHJsWDPeZvBlMyYr++YRD6jqEyzCSHsOHCis9F JyP1XHaa1B1Q+PhXGneFnvDP7TuxwFBAaNO20004dBY1G+d48rqDC0pWj2ZgxHwwuk96/FdLfNT KeSxsk101FpHHRlnR+VCZ5BRHfnQsvcNl4KatzppLhTNlQxkdFaZAgcz2mDZOa+xNnbo0MsusDD 9NBn62HZEQDLeWDFAU5RRfAAFTynRgY8Ev+X8= X-Google-Smtp-Source: AGHT+IEL4jsYU7bEEK8ZuL/Jlz8APTAg7xoh4A6Gy/FjxZ69D/Znt2XOvhcwnIkzcC7PAjjoohlciw== X-Received: by 2002:aa7:df88:0:b0:64b:5f4e:9e88 with SMTP id 4fb4d7f45d1cf-64b8ec69a85mr28350484a12.21.1767482795131; Sat, 03 Jan 2026 15:26:35 -0800 (PST) Received: from localhost (145-53-221-196.fixed.kpn.net. [145.53.221.196]) by smtp.gmail.com with ESMTPSA id 4fb4d7f45d1cf-64b916b372esm49652270a12.32.2026.01.03.15.26.33 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Sat, 03 Jan 2026 15:26:34 -0800 (PST) Content-Type: multipart/mixed; boundary=d7232b7b4648b0d299118867fd7c452b93de0093e725a3ae618df15e0e44 Date: Sun, 04 Jan 2026 00:26:33 +0100 Message-Id: Cc: "Babak Ghadiri" Subject: Re: Parallelizing startup with many databases To: "Andreas Karlsson" , From: "Jelte Fennema-Nio" MIME-Version: 1.0 References: <0def7076-40b4-485a-83e7-d0dd1e31a472@proxel.se> In-Reply-To: <0def7076-40b4-485a-83e7-d0dd1e31a472@proxel.se> X-TUID: CfZGf6UhdLCk List-Id: List-Help: List-Subscribe: List-Post: List-Owner: List-Archive: Archived-At: Precedence: bulk --d7232b7b4648b0d299118867fd7c452b93de0093e725a3ae618df15e0e44 Content-Type: multipart/alternative; boundary=81e3b7fc0320e576ae4e259bd9c1745e32ddfcb9e29caf046a13d20afaf1 --81e3b7fc0320e576ae4e259bd9c1745e32ddfcb9e29caf046a13d20afaf1 Content-Transfer-Encoding: quoted-printable Content-Disposition: inline Content-Type: text/plain; charset=UTF-8; format=Flowed On Sat, 3 Jan 2026 at 20:09, Andreas Karlsson wrote: > > On 1/3/26 1:58 AM, Jelte Fennema-Nio wrote: > > PS It took me way to long to find that setting. I think we should move > > it from the error handling docs page to the page with all of the other > > recovery settings. https://www.postgresql.org/docs/current/runtime- > > config-wal.html#RUNTIME-CONFIG-WAL-RECOVERY > docs/current/runtime-config-wal.html#RUNTIME-CONFIG-WAL-RECOVERY> > > I agree that it is currently not in exactly a great location but the > issue is that the "Recovery" section is a subsection of the "WAL" > section, and syncing the data directory is only loosely related to WAL. > One could argue it is related to WAL as in that it is something done > before replaying WAL but it is not an obvious location either. Or is it? While the setting is not strictly related to WAL it still seems a much more natural place than the "Error handling" page. Especially because of the description of this subheading: > This section describes the settings that apply to recovery in general, > affecting crash recovery, streaming replication and archive-based > replication. The only recovery related GUC that exists that's not on the WAL page is recovery_min_apply_delay, which is under the Replication->Standby section. Since that GUC is only valid on standbys that seems like a sensible choice. --81e3b7fc0320e576ae4e259bd9c1745e32ddfcb9e29caf046a13d20afaf1-- --d7232b7b4648b0d299118867fd7c452b93de0093e725a3ae618df15e0e44 Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename=v1-0001-docs-Move-recovery_init_sync_method-to-WAL-Recove.patch Content-Type: text/x-patch; charset=utf-8; name=v1-0001-docs-Move-recovery_init_sync_method-to-WAL-Recove.patch RnJvbSAxZWM3ZTM2NzQ4ZWNmM2QwYzdlNDMzMzEzN2MzOTA2NThkYzQzZTIwIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBKZWx0ZSBGZW5uZW1hLU5pbyA8cG9zdGdyZXNAamVsdGVmLm5s PgpEYXRlOiBTdW4sIDQgSmFuIDIwMjYgMDA6MDk6MTMgKzAxMDAKU3ViamVjdDogW1BBVENIIHYx XSBkb2NzOiBNb3ZlIHJlY292ZXJ5X2luaXRfc3luY19tZXRob2QgdG8gV0FMLT5SZWNvdmVyeQog c2VjdGlvbgoKVGhlIHJlY292ZXJ5X2luaXRfc3luY19tZXRob2QgR1VDIHdhcyBzZXBhcmF0ZWQg ZnJvbSBhbGwgb3RoZXIgcmVjb3ZlcnkKcmVsYXRlZCBHVUNTIGluIG91ciBkb2NzLiBUaGlzIG1h ZGUgaXQgcHJldHR5IGhhcmQgdG8gZmluZCBpbiB0aGUgZG9jcwppZiB5b3UgZG9uJ3Qga25vdyBl eGFjdGx5IHdoYXQgeW91J3JlIGxvb2tpbmcgZm9yLiBUaGlzIG1vdmVzIGl0IHRvIHRoZQpnZW5l cmljICJSZWNvdmVyeSIgc2VjdGlvbiBvbiB0aGUgV0FMIHBhZ2UuIFdoaWxlIGl0J3Mgbm90IHJl YWxseQpyZWxhdGVkIHRvIFdBTCBpdCBzdGlsbCBzZWVtcyBhIG11Y2ggbW9yZSBuYXR1cmFsIHBs YWNlIHRoYW4gdGhlICJFcnJvcgpoYW5kbGluZyIgcGFnZS4gRXNwZWNpYWxseSBiZWNhdXNlIG9m IHRoZSBkZXNjcmlwdGlvbiBvZiB0aGlzIHN1YmhlYWRpbmc6Cgo+IFRoaXMgc2VjdGlvbiBkZXNj cmliZXMgdGhlIHNldHRpbmdzIHRoYXQgYXBwbHkgdG8gcmVjb3ZlcnkgaW4gZ2VuZXJhbCwKPiBh ZmZlY3RpbmcgY3Jhc2ggcmVjb3ZlcnksIHN0cmVhbWluZyByZXBsaWNhdGlvbiBhbmQgYXJjaGl2 ZS1iYXNlZAo+IHJlcGxpY2F0aW9uLgoKVGhlIG9ubHkgcmVjb3ZlcnkgcmVsYXRlZCBHVUMgdGhh dCBleGlzdHMgdGhhdCdzIG5vdCBvbiB0aGUgV0FMIHBhZ2UgaXMKcmVjb3ZlcnlfbWluX2FwcGx5 X2RlbGF5LCB3aGljaCBpcyB1bmRlciB0aGUgUmVwbGljYXRpb24tPlN0YW5kYnkKc2VjdGlvbi4g U2luY2UgdGhhdCBHVUMgaXMgb25seSB2YWxpZCBvbiBzdGFuZGJ5cyB0aGF0IHNlZW1zIGxpa2Ug YQpzZW5zaWJsZSBjaG9pY2UuCi0tLQogZG9jL3NyYy9zZ21sL2NvbmZpZy5zZ21sIHwgNzggKysr KysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLQogMSBmaWxlIGNoYW5nZWQsIDM5 IGluc2VydGlvbnMoKyksIDM5IGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL2RvYy9zcmMvc2dt bC9jb25maWcuc2dtbCBiL2RvYy9zcmMvc2dtbC9jb25maWcuc2dtbAppbmRleCBjZGZlOGUzNzZm MC4uYTM4NzQ3YzkzN2UgMTAwNjQ0Ci0tLSBhL2RvYy9zcmMvc2dtbC9jb25maWcuc2dtbAorKysg Yi9kb2Mvc3JjL3NnbWwvY29uZmlnLnNnbWwKQEAgLTM5OTEsNiArMzk5MSw0NSBAQCBpbmNsdWRl X2RpciAnY29uZi5kJwogICAgICAgPC9saXN0aXRlbT4KICAgICAgPC92YXJsaXN0ZW50cnk+CiAK KyAgICAgPHZhcmxpc3RlbnRyeSBpZD0iZ3VjLXJlY292ZXJ5LWluaXQtc3luYy1tZXRob2QiIHhy ZWZsYWJlbD0icmVjb3ZlcnlfaW5pdF9zeW5jX21ldGhvZCI+CisgICAgICA8dGVybT48dmFybmFt ZT5yZWNvdmVyeV9pbml0X3N5bmNfbWV0aG9kPC92YXJuYW1lPiAoPHR5cGU+ZW51bTwvdHlwZT4p CisgICAgICAgPGluZGV4dGVybT4KKyAgICAgICAgPHByaW1hcnk+PHZhcm5hbWU+cmVjb3Zlcnlf aW5pdF9zeW5jX21ldGhvZDwvdmFybmFtZT4gY29uZmlndXJhdGlvbiBwYXJhbWV0ZXI8L3ByaW1h cnk+CisgICAgICAgPC9pbmRleHRlcm0+CisgICAgICA8L3Rlcm0+CisgICAgICA8bGlzdGl0ZW0+ CisgICAgICAgPHBhcmE+CisgICAgICAgIFdoZW4gc2V0IHRvIDxsaXRlcmFsPmZzeW5jPC9saXRl cmFsPiwgd2hpY2ggaXMgdGhlIGRlZmF1bHQsCisgICAgICAgIDxwcm9kdWN0bmFtZT5Qb3N0Z3Jl U1FMPC9wcm9kdWN0bmFtZT4gd2lsbCByZWN1cnNpdmVseSBvcGVuIGFuZAorICAgICAgICBzeW5j aHJvbml6ZSBhbGwgZmlsZXMgaW4gdGhlIGRhdGEgZGlyZWN0b3J5IGJlZm9yZSBjcmFzaCByZWNv dmVyeQorICAgICAgICBiZWdpbnMuICBUaGUgc2VhcmNoIGZvciBmaWxlcyB3aWxsIGZvbGxvdyBz eW1ib2xpYyBsaW5rcyBmb3IgdGhlIFdBTAorICAgICAgICBkaXJlY3RvcnkgYW5kIGVhY2ggY29u ZmlndXJlZCB0YWJsZXNwYWNlIChidXQgbm90IGFueSBvdGhlciBzeW1ib2xpYworICAgICAgICBs aW5rcykuICBUaGlzIGlzIGludGVuZGVkIHRvIG1ha2Ugc3VyZSB0aGF0IGFsbCBXQUwgYW5kIGRh dGEgZmlsZXMgYXJlCisgICAgICAgIGR1cmFibHkgc3RvcmVkIG9uIGRpc2sgYmVmb3JlIHJlcGxh eWluZyBjaGFuZ2VzLiAgVGhpcyBhcHBsaWVzIHdoZW5ldmVyCisgICAgICAgIHN0YXJ0aW5nIGEg ZGF0YWJhc2UgY2x1c3RlciB0aGF0IGRpZCBub3Qgc2h1dCBkb3duIGNsZWFubHksIGluY2x1ZGlu ZworICAgICAgICBjb3BpZXMgY3JlYXRlZCB3aXRoIDxhcHBsaWNhdGlvbj5wZ19iYXNlYmFja3Vw PC9hcHBsaWNhdGlvbj4uCisgICAgICAgPC9wYXJhPgorICAgICAgIDxwYXJhPgorICAgICAgICBP biBMaW51eCwgPGxpdGVyYWw+c3luY2ZzPC9saXRlcmFsPiBtYXkgYmUgdXNlZCBpbnN0ZWFkLCB0 byBhc2sgdGhlCisgICAgICAgIG9wZXJhdGluZyBzeXN0ZW0gdG8gc3luY2hyb25pemUgdGhlIGZp bGUgc3lzdGVtcyB0aGF0IGNvbnRhaW4gdGhlCisgICAgICAgIGRhdGEgZGlyZWN0b3J5LCB0aGUg V0FMIGZpbGVzIGFuZCBlYWNoIHRhYmxlc3BhY2UgKGJ1dCBub3QgYW55IG90aGVyCisgICAgICAg IGZpbGUgc3lzdGVtcyB0aGF0IG1heSBiZSByZWFjaGFibGUgdGhyb3VnaCBzeW1ib2xpYyBsaW5r cykuICBUaGlzIG1heQorICAgICAgICBiZSBhIGxvdCBmYXN0ZXIgdGhhbiB0aGUgPGxpdGVyYWw+ ZnN5bmM8L2xpdGVyYWw+IHNldHRpbmcsIGJlY2F1c2UgaXQKKyAgICAgICAgZG9lc24ndCBuZWVk IHRvIG9wZW4gZWFjaCBmaWxlIG9uZSBieSBvbmUuICBPbiB0aGUgb3RoZXIgaGFuZCwgaXQgbWF5 CisgICAgICAgIGJlIHNsb3dlciBpZiBhIGZpbGUgc3lzdGVtIGlzIHNoYXJlZCBieSBvdGhlciBh cHBsaWNhdGlvbnMgdGhhdAorICAgICAgICBtb2RpZnkgYSBsb3Qgb2YgZmlsZXMsIHNpbmNlIHRo b3NlIGZpbGVzIHdpbGwgYWxzbyBiZSB3cml0dGVuIHRvIGRpc2suCisgICAgICAgIEZ1cnRoZXJt b3JlLCBvbiB2ZXJzaW9ucyBvZiBMaW51eCBiZWZvcmUgNS44LCBJL08gZXJyb3JzIGVuY291bnRl cmVkCisgICAgICAgIHdoaWxlIHdyaXRpbmcgZGF0YSB0byBkaXNrIG1heSBub3QgYmUgcmVwb3J0 ZWQgdG8KKyAgICAgICAgPHByb2R1Y3RuYW1lPlBvc3RncmVTUUw8L3Byb2R1Y3RuYW1lPiwgYW5k IHJlbGV2YW50IGVycm9yIG1lc3NhZ2VzIG1heQorICAgICAgICBhcHBlYXIgb25seSBpbiBrZXJu ZWwgbG9ncy4KKyAgICAgICA8L3BhcmE+CisgICAgICAgPHBhcmE+CisgICAgICAgIFRoaXMgcGFy YW1ldGVyIGNhbiBvbmx5IGJlIHNldCBpbiB0aGUKKyAgICAgICAgPGZpbGVuYW1lPnBvc3RncmVz cWwuY29uZjwvZmlsZW5hbWU+IGZpbGUgb3Igb24gdGhlIHNlcnZlciBjb21tYW5kIGxpbmUuCisg ICAgICAgPC9wYXJhPgorICAgICAgPC9saXN0aXRlbT4KKyAgICAgPC92YXJsaXN0ZW50cnk+CisK ICAgICA8L3ZhcmlhYmxlbGlzdD4KICAgIDwvc2VjdDI+CiAKQEAgLTExNzE0LDQ1ICsxMTc1Myw2 IEBAIGR5bmFtaWNfbGlicmFyeV9wYXRoID0gJy91c3IvbG9jYWwvbGliL3Bvc3RncmVzcWw6JGxp YmRpcicKICAgICAgIDwvbGlzdGl0ZW0+CiAgICAgIDwvdmFybGlzdGVudHJ5PgogCi0gICAgIDx2 YXJsaXN0ZW50cnkgaWQ9Imd1Yy1yZWNvdmVyeS1pbml0LXN5bmMtbWV0aG9kIiB4cmVmbGFiZWw9 InJlY292ZXJ5X2luaXRfc3luY19tZXRob2QiPgotICAgICAgPHRlcm0+PHZhcm5hbWU+cmVjb3Zl cnlfaW5pdF9zeW5jX21ldGhvZDwvdmFybmFtZT4gKDx0eXBlPmVudW08L3R5cGU+KQotICAgICAg IDxpbmRleHRlcm0+Ci0gICAgICAgIDxwcmltYXJ5Pjx2YXJuYW1lPnJlY292ZXJ5X2luaXRfc3lu Y19tZXRob2Q8L3Zhcm5hbWU+IGNvbmZpZ3VyYXRpb24gcGFyYW1ldGVyPC9wcmltYXJ5PgotICAg ICAgIDwvaW5kZXh0ZXJtPgotICAgICAgPC90ZXJtPgotICAgICAgPGxpc3RpdGVtPgotICAgICAg IDxwYXJhPgotICAgICAgICBXaGVuIHNldCB0byA8bGl0ZXJhbD5mc3luYzwvbGl0ZXJhbD4sIHdo aWNoIGlzIHRoZSBkZWZhdWx0LAotICAgICAgICA8cHJvZHVjdG5hbWU+UG9zdGdyZVNRTDwvcHJv ZHVjdG5hbWU+IHdpbGwgcmVjdXJzaXZlbHkgb3BlbiBhbmQKLSAgICAgICAgc3luY2hyb25pemUg YWxsIGZpbGVzIGluIHRoZSBkYXRhIGRpcmVjdG9yeSBiZWZvcmUgY3Jhc2ggcmVjb3ZlcnkKLSAg ICAgICAgYmVnaW5zLiAgVGhlIHNlYXJjaCBmb3IgZmlsZXMgd2lsbCBmb2xsb3cgc3ltYm9saWMg bGlua3MgZm9yIHRoZSBXQUwKLSAgICAgICAgZGlyZWN0b3J5IGFuZCBlYWNoIGNvbmZpZ3VyZWQg dGFibGVzcGFjZSAoYnV0IG5vdCBhbnkgb3RoZXIgc3ltYm9saWMKLSAgICAgICAgbGlua3MpLiAg VGhpcyBpcyBpbnRlbmRlZCB0byBtYWtlIHN1cmUgdGhhdCBhbGwgV0FMIGFuZCBkYXRhIGZpbGVz IGFyZQotICAgICAgICBkdXJhYmx5IHN0b3JlZCBvbiBkaXNrIGJlZm9yZSByZXBsYXlpbmcgY2hh bmdlcy4gIFRoaXMgYXBwbGllcyB3aGVuZXZlcgotICAgICAgICBzdGFydGluZyBhIGRhdGFiYXNl IGNsdXN0ZXIgdGhhdCBkaWQgbm90IHNodXQgZG93biBjbGVhbmx5LCBpbmNsdWRpbmcKLSAgICAg ICAgY29waWVzIGNyZWF0ZWQgd2l0aCA8YXBwbGljYXRpb24+cGdfYmFzZWJhY2t1cDwvYXBwbGlj YXRpb24+LgotICAgICAgIDwvcGFyYT4KLSAgICAgICA8cGFyYT4KLSAgICAgICAgT24gTGludXgs IDxsaXRlcmFsPnN5bmNmczwvbGl0ZXJhbD4gbWF5IGJlIHVzZWQgaW5zdGVhZCwgdG8gYXNrIHRo ZQotICAgICAgICBvcGVyYXRpbmcgc3lzdGVtIHRvIHN5bmNocm9uaXplIHRoZSBmaWxlIHN5c3Rl bXMgdGhhdCBjb250YWluIHRoZQotICAgICAgICBkYXRhIGRpcmVjdG9yeSwgdGhlIFdBTCBmaWxl cyBhbmQgZWFjaCB0YWJsZXNwYWNlIChidXQgbm90IGFueSBvdGhlcgotICAgICAgICBmaWxlIHN5 c3RlbXMgdGhhdCBtYXkgYmUgcmVhY2hhYmxlIHRocm91Z2ggc3ltYm9saWMgbGlua3MpLiAgVGhp cyBtYXkKLSAgICAgICAgYmUgYSBsb3QgZmFzdGVyIHRoYW4gdGhlIDxsaXRlcmFsPmZzeW5jPC9s aXRlcmFsPiBzZXR0aW5nLCBiZWNhdXNlIGl0Ci0gICAgICAgIGRvZXNuJ3QgbmVlZCB0byBvcGVu IGVhY2ggZmlsZSBvbmUgYnkgb25lLiAgT24gdGhlIG90aGVyIGhhbmQsIGl0IG1heQotICAgICAg ICBiZSBzbG93ZXIgaWYgYSBmaWxlIHN5c3RlbSBpcyBzaGFyZWQgYnkgb3RoZXIgYXBwbGljYXRp b25zIHRoYXQKLSAgICAgICAgbW9kaWZ5IGEgbG90IG9mIGZpbGVzLCBzaW5jZSB0aG9zZSBmaWxl cyB3aWxsIGFsc28gYmUgd3JpdHRlbiB0byBkaXNrLgotICAgICAgICBGdXJ0aGVybW9yZSwgb24g dmVyc2lvbnMgb2YgTGludXggYmVmb3JlIDUuOCwgSS9PIGVycm9ycyBlbmNvdW50ZXJlZAotICAg ICAgICB3aGlsZSB3cml0aW5nIGRhdGEgdG8gZGlzayBtYXkgbm90IGJlIHJlcG9ydGVkIHRvCi0g ICAgICAgIDxwcm9kdWN0bmFtZT5Qb3N0Z3JlU1FMPC9wcm9kdWN0bmFtZT4sIGFuZCByZWxldmFu dCBlcnJvciBtZXNzYWdlcyBtYXkKLSAgICAgICAgYXBwZWFyIG9ubHkgaW4ga2VybmVsIGxvZ3Mu Ci0gICAgICAgPC9wYXJhPgotICAgICAgIDxwYXJhPgotICAgICAgICBUaGlzIHBhcmFtZXRlciBj YW4gb25seSBiZSBzZXQgaW4gdGhlCi0gICAgICAgIDxmaWxlbmFtZT5wb3N0Z3Jlc3FsLmNvbmY8 L2ZpbGVuYW1lPiBmaWxlIG9yIG9uIHRoZSBzZXJ2ZXIgY29tbWFuZCBsaW5lLgotICAgICAgIDwv cGFyYT4KLSAgICAgIDwvbGlzdGl0ZW0+Ci0gICAgIDwvdmFybGlzdGVudHJ5PgotCiAgICAgPC92 YXJpYWJsZWxpc3Q+CiAKICAgIDwvc2VjdDE+CgpiYXNlLWNvbW1pdDogMDk0YjYxY2UzZWJiYjEy NTg2NzVjYjliNGVjYTkxOTg2MjhlMjE3NwotLSAKMi41Mi4wCgo= --d7232b7b4648b0d299118867fd7c452b93de0093e725a3ae618df15e0e44--