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 1kb0zE-0007JE-81 for pgsql-hackers@arkaria.postgresql.org; Fri, 06 Nov 2020 12:37:00 +0000 Received: from localhost ([127.0.0.1] helo=malur.postgresql.org) by malur.postgresql.org with esmtp (Exim 4.92) (envelope-from ) id 1kb0zD-0008Iv-0l for pgsql-hackers@arkaria.postgresql.org; Fri, 06 Nov 2020 12:36:59 +0000 Received: from makus.postgresql.org ([2001:4800:3e1:1::229]) by malur.postgresql.org with esmtps (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1kb0zC-0008Io-Gp for pgsql-hackers@lists.postgresql.org; Fri, 06 Nov 2020 12:36:58 +0000 Received: from forward501j.mail.yandex.net ([2a02:6b8:0:801:2::111]) by makus.postgresql.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1kb0z8-0004vW-4U for pgsql-hackers@postgresql.org; Fri, 06 Nov 2020 12:36:57 +0000 Received: from mxback21g.mail.yandex.net (mxback21g.mail.yandex.net [IPv6:2a02:6b8:0:1472:2741:0:8b7:321]) by forward501j.mail.yandex.net (Yandex) with ESMTP id B5C423380160; Fri, 6 Nov 2020 15:36:49 +0300 (MSK) Received: from localhost (localhost [::1]) by mxback21g.mail.yandex.net (mxback/Yandex) with ESMTP id TqD0JdPw5Y-am705eBG; Fri, 06 Nov 2020 15:36:49 +0300 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=zsrv.org; s=mail; t=1604666209; bh=/wNMqBsy9rz7twX0/z/tSuTao2n6xzTYlkd/U/mLXmA=; h=Message-Id:Cc:Subject:In-Reply-To:Date:References:To:From; b=BbEmMgc3IqiK4P6X+dXJLuX+ZqrWVgeVkCuN9d7PiDcaaITRx03nPXVi86d0Mr4gU oVDhs7WGt4Xf/40WjAIxFK7nPx+Os2YTGBpuutj5i5LRxxAqYt1abRp8CMCJqPs61T /g3P2cR4nFT6Guaf50DCy887spxwqEhjI/XkpwKA= Authentication-Results: mxback21g.mail.yandex.net; dkim=pass header.i=@zsrv.org Received: by iva4-35f072fa8e4e.qloud-c.yandex.net with HTTP; Fri, 06 Nov 2020 15:36:48 +0300 From: Sergei Kornilov To: Fujii Masao , Kyotaro Horiguchi , "a.lubennikova@postgrespro.ru" Cc: "robertmhaas@gmail.com" , "michael@paquier.xyz" , "andres@anarazel.de" , "peter.eisentraut@2ndquadrant.com" , "pgsql-hackers@postgresql.org" In-Reply-To: <0e0d5982-ac64-818d-1ec6-18a80b9300b1@oss.nttdata.com> References: <20200809052149.GB17986@paquier.xyz> <1741c40b-73e3-133b-77e6-05ebc7bf3c0f@postgrespro.ru> <20201022.110026.524650499365127827.horikyota.ntt@gmail.com> <4920201603879284@mail.yandex.ru> <0e0d5982-ac64-818d-1ec6-18a80b9300b1@oss.nttdata.com> Subject: Re: Allow some recovery parameters to be changed with reload MIME-Version: 1.0 X-Mailer: Yamail [ http://yandex.ru ] 5.0 Date: Fri, 06 Nov 2020 15:36:48 +0300 Message-Id: <56311604665173@mail.yandex.ru> Content-Type: multipart/mixed; boundary="----==--bound.75267.iva4-35f072fa8e4e.qloud-c.yandex.net" List-Id: List-Help: List-Subscribe: List-Post: List-Owner: List-Archive: Precedence: bulk ------==--bound.75267.iva4-35f072fa8e4e.qloud-c.yandex.net Content-Transfer-Encoding: 7bit Content-Type: text/plain Hello > Currently when restore_command is not set, archive recovery fails > at the beginning. With the patch, how should we treat the case where > retore_command is reset to empty during archive recovery? We should > reject that change of restore_command? Good point. I think we should reject that change. But (AFAIC) I cannot use GUC check callback for this purpose, as only the startup process knows StandbyModeRequested. I think it would be appropriate to call validateRecoveryParameters from StartupRereadConfig. As side effect this add warning/hint "specified neither primary_conninfo nor restore_command" in standby mode in appropriate configuration state. Not sure about the rest checks in validateRecoveryParameters, maybe it's a wrong idea to recheck them here and I need to separate these checks into another function. regards, Sergei ------==--bound.75267.iva4-35f072fa8e4e.qloud-c.yandex.net Content-Disposition: attachment; filename="v2_restore_command_reload.patch" Content-Transfer-Encoding: base64 Content-Type: text/x-diff; name="v2_restore_command_reload.patch" ZGlmZiAtLWdpdCBhL2RvYy9zcmMvc2dtbC9jb25maWcuc2dtbCBiL2RvYy9zcmMvc2dtbC9jb25m aWcuc2dtbAppbmRleCBmMDQzNDMzZTMxLi5lYzc0Y2I0M2FkIDEwMDY0NAotLS0gYS9kb2Mvc3Jj L3NnbWwvY29uZmlnLnNnbWwKKysrIGIvZG9jL3NyYy9zZ21sL2NvbmZpZy5zZ21sCkBAIC0zNTQy LDcgKzM1NDIsOCBAQCByZXN0b3JlX2NvbW1hbmQgPSAnY29weSAiQzpcXHNlcnZlclxcYXJjaGl2 ZWRpclxcJWYiICIlcCInICAjIFdpbmRvd3MKICAgICAgICA8L3BhcmE+CiAKICAgICAgICA8cGFy YT4KLSAgICAgICAgVGhpcyBwYXJhbWV0ZXIgY2FuIG9ubHkgYmUgc2V0IGF0IHNlcnZlciBzdGFy dC4KKyAgICAgICAgVGhpcyBwYXJhbWV0ZXIgY2FuIG9ubHkgYmUgc2V0IGluIHRoZSA8ZmlsZW5h bWU+cG9zdGdyZXNxbC5jb25mPC9maWxlbmFtZT4KKyAgICAgICAgZmlsZSBvciBvbiB0aGUgc2Vy dmVyIGNvbW1hbmQgbGluZS4KICAgICAgICA8L3BhcmE+CiAgICAgICA8L2xpc3RpdGVtPgogICAg ICA8L3Zhcmxpc3RlbnRyeT4KZGlmZiAtLWdpdCBhL3NyYy9iYWNrZW5kL2FjY2Vzcy90cmFuc2Ft L3hsb2cuYyBiL3NyYy9iYWNrZW5kL2FjY2Vzcy90cmFuc2FtL3hsb2cuYwppbmRleCBhMTA3OGE3 Y2ZjLi4xNDhkZDM0NjMzIDEwMDY0NAotLS0gYS9zcmMvYmFja2VuZC9hY2Nlc3MvdHJhbnNhbS94 bG9nLmMKKysrIGIvc3JjL2JhY2tlbmQvYWNjZXNzL3RyYW5zYW0veGxvZy5jCkBAIC04ODMsNyAr ODgzLDYgQEAgc3RhdGljIE1lbW9yeUNvbnRleHQgd2FsRGVidWdDeHQgPSBOVUxMOwogI2VuZGlm CiAKIHN0YXRpYyB2b2lkIHJlYWRSZWNvdmVyeVNpZ25hbEZpbGUodm9pZCk7Ci1zdGF0aWMgdm9p ZCB2YWxpZGF0ZVJlY292ZXJ5UGFyYW1ldGVycyh2b2lkKTsKIHN0YXRpYyB2b2lkIGV4aXRBcmNo aXZlUmVjb3ZlcnkoVGltZUxpbmVJRCBlbmRUTEksIFhMb2dSZWNQdHIgZW5kT2ZMb2cpOwogc3Rh dGljIGJvb2wgcmVjb3ZlcnlTdG9wc0JlZm9yZShYTG9nUmVhZGVyU3RhdGUgKnJlY29yZCk7CiBz dGF0aWMgYm9vbCByZWNvdmVyeVN0b3BzQWZ0ZXIoWExvZ1JlYWRlclN0YXRlICpyZWNvcmQpOwpA QCAtNTQ1OCw3ICs1NDU3LDcgQEAgcmVhZFJlY292ZXJ5U2lnbmFsRmlsZSh2b2lkKQogCQkJCSBl cnJtc2coInN0YW5kYnkgbW9kZSBpcyBub3Qgc3VwcG9ydGVkIGJ5IHNpbmdsZS11c2VyIHNlcnZl cnMiKSkpOwogfQogCi1zdGF0aWMgdm9pZAordm9pZAogdmFsaWRhdGVSZWNvdmVyeVBhcmFtZXRl cnModm9pZCkKIHsKIAlpZiAoIUFyY2hpdmVSZWNvdmVyeVJlcXVlc3RlZCkKZGlmZiAtLWdpdCBh L3NyYy9iYWNrZW5kL3Bvc3RtYXN0ZXIvc3RhcnR1cC5jIGIvc3JjL2JhY2tlbmQvcG9zdG1hc3Rl ci9zdGFydHVwLmMKaW5kZXggZWFiOWM4YzRlZC4uYmY3ZGM4NjZkYiAxMDA2NDQKLS0tIGEvc3Jj L2JhY2tlbmQvcG9zdG1hc3Rlci9zdGFydHVwLmMKKysrIGIvc3JjL2JhY2tlbmQvcG9zdG1hc3Rl ci9zdGFydHVwLmMKQEAgLTExNCw2ICsxMTQsMTEgQEAgU3RhcnR1cFJlcmVhZENvbmZpZyh2b2lk KQogCiAJaWYgKGNvbm5pbmZvQ2hhbmdlZCB8fCBzbG90bmFtZUNoYW5nZWQgfHwgdGVtcFNsb3RD aGFuZ2VkKQogCQlTdGFydHVwUmVxdWVzdFdhbFJlY2VpdmVyUmVzdGFydCgpOworCisJLyoKKwkg KiBDaGVjayB0aGUgY29tYmluYXRpb24gb2YgbmV3IHBhcmFtZXRlcnMKKwkgKi8KKwl2YWxpZGF0 ZVJlY292ZXJ5UGFyYW1ldGVycygpOwogfQogCiAvKiBIYW5kbGUgdmFyaW91cyBzaWduYWxzIHRo YXQgbWlnaHQgYmUgc2VudCB0byB0aGUgc3RhcnR1cCBwcm9jZXNzICovCmRpZmYgLS1naXQgYS9z cmMvYmFja2VuZC91dGlscy9taXNjL2d1Yy5jIGIvc3JjL2JhY2tlbmQvdXRpbHMvbWlzYy9ndWMu YwppbmRleCBhNjJkNjRlYWE0Li44N2ZkNTkzOTI0IDEwMDY0NAotLS0gYS9zcmMvYmFja2VuZC91 dGlscy9taXNjL2d1Yy5jCisrKyBiL3NyYy9iYWNrZW5kL3V0aWxzL21pc2MvZ3VjLmMKQEAgLTM2 OTksNyArMzY5OSw3IEBAIHN0YXRpYyBzdHJ1Y3QgY29uZmlnX3N0cmluZyBDb25maWd1cmVOYW1l c1N0cmluZ1tdID0KIAl9LAogCiAJewotCQl7InJlc3RvcmVfY29tbWFuZCIsIFBHQ19QT1NUTUFT VEVSLCBXQUxfQVJDSElWRV9SRUNPVkVSWSwKKwkJeyJyZXN0b3JlX2NvbW1hbmQiLCBQR0NfU0lH SFVQLCBXQUxfQVJDSElWRV9SRUNPVkVSWSwKIAkJCWdldHRleHRfbm9vcCgiU2V0cyB0aGUgc2hl bGwgY29tbWFuZCB0aGF0IHdpbGwgYmUgY2FsbGVkIHRvIHJldHJpZXZlIGFuIGFyY2hpdmVkIFdB TCBmaWxlLiIpLAogCQkJTlVMTAogCQl9LApkaWZmIC0tZ2l0IGEvc3JjL2JhY2tlbmQvdXRpbHMv bWlzYy9wb3N0Z3Jlc3FsLmNvbmYuc2FtcGxlIGIvc3JjL2JhY2tlbmQvdXRpbHMvbWlzYy9wb3N0 Z3Jlc3FsLmNvbmYuc2FtcGxlCmluZGV4IDljYjU3MWY3Y2MuLjljOTA5MWU2MDEgMTAwNjQ0Ci0t LSBhL3NyYy9iYWNrZW5kL3V0aWxzL21pc2MvcG9zdGdyZXNxbC5jb25mLnNhbXBsZQorKysgYi9z cmMvYmFja2VuZC91dGlscy9taXNjL3Bvc3RncmVzcWwuY29uZi5zYW1wbGUKQEAgLTI1Myw3ICsy NTMsNiBAQAogCQkJCSMgcGxhY2Vob2xkZXJzOiAlcCA9IHBhdGggb2YgZmlsZSB0byByZXN0b3Jl CiAJCQkJIyAgICAgICAgICAgICAgICVmID0gZmlsZSBuYW1lIG9ubHkKIAkJCQkjIGUuZy4gJ2Nw IC9tbnQvc2VydmVyL2FyY2hpdmVkaXIvJWYgJXAnCi0JCQkJIyAoY2hhbmdlIHJlcXVpcmVzIHJl c3RhcnQpCiAjYXJjaGl2ZV9jbGVhbnVwX2NvbW1hbmQgPSAnJwkjIGNvbW1hbmQgdG8gZXhlY3V0 ZSBhdCBldmVyeSByZXN0YXJ0cG9pbnQKICNyZWNvdmVyeV9lbmRfY29tbWFuZCA9ICcnCSMgY29t bWFuZCB0byBleGVjdXRlIGF0IGNvbXBsZXRpb24gb2YgcmVjb3ZlcnkKIApkaWZmIC0tZ2l0IGEv c3JjL2luY2x1ZGUvYWNjZXNzL3hsb2cuaCBiL3NyYy9pbmNsdWRlL2FjY2Vzcy94bG9nLmgKaW5k ZXggMjIxYWY4N2U3MS4uOTY1ZWQxMDliMyAxMDA2NDQKLS0tIGEvc3JjL2luY2x1ZGUvYWNjZXNz L3hsb2cuaAorKysgYi9zcmMvaW5jbHVkZS9hY2Nlc3MveGxvZy5oCkBAIC0zNDcsNiArMzQ3LDcg QEAgZXh0ZXJuIHZvaWQgV2FrZXVwUmVjb3Zlcnkodm9pZCk7CiBleHRlcm4gdm9pZCBTZXRXYWxX cml0ZXJTbGVlcGluZyhib29sIHNsZWVwaW5nKTsKIAogZXh0ZXJuIHZvaWQgU3RhcnR1cFJlcXVl c3RXYWxSZWNlaXZlclJlc3RhcnQodm9pZCk7CitleHRlcm4gdm9pZCB2YWxpZGF0ZVJlY292ZXJ5 UGFyYW1ldGVycyh2b2lkKTsKIGV4dGVybiB2b2lkIFhMb2dSZXF1ZXN0V2FsUmVjZWl2ZXJSZXBs eSh2b2lkKTsKIAogZXh0ZXJuIHZvaWQgYXNzaWduX21heF93YWxfc2l6ZShpbnQgbmV3dmFsLCB2 b2lkICpleHRyYSk7Cg== ------==--bound.75267.iva4-35f072fa8e4e.qloud-c.yandex.net--