From: | Vladimir Borodin <root(at)simply(dot)name> |
---|---|
To: | Heikki Linnakangas <hlinnaka(at)iki(dot)fi> |
Cc: | Michael Paquier <michael(dot)paquier(at)gmail(dot)com>, PostgreSQL-development <pgsql-hackers(at)postgresql(dot)org>, Stephen Frost <sfrost(at)snowman(dot)net> |
Subject: | Re: Broken --dry-run mode in pg_rewind |
Date: | 2015-05-08 15:09:42 |
Message-ID: | 17595D55-9F35-4D62-BBD3-40BDC1BFA16D@simply.name |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-hackers |
> 8 мая 2015 г., в 16:39, Vladimir Borodin <root(at)simply(dot)name> написал(а):
>
>>
>> 8 мая 2015 г., в 16:11, Stephen Frost <sfrost(at)snowman(dot)net <mailto:sfrost(at)snowman(dot)net>> написал(а):
>>
>> * Heikki Linnakangas (hlinnaka(at)iki(dot)fi <mailto:hlinnaka(at)iki(dot)fi>) wrote:
>>> On 05/08/2015 03:39 PM, Michael Paquier wrote:
>>>> On Fri, May 8, 2015 at 9:34 PM, Heikki Linnakangas <hlinnaka(at)iki(dot)fi <mailto:hlinnaka(at)iki(dot)fi>> wrote:
>>>>> On 05/08/2015 03:25 PM, Vladimir Borodin wrote:
>>>>>> Seems, that pg_rewind does not account --dry-run option properly. A simple
>>>>>> fix
>>>>>> for that is attached.
>>>>>
>>>>>
>>>>> No, the --dry-run takes effect later. It performs all the actions it
>>>>> normally would, including reading files from the source, except for actually
>>>>> writing anything in the target. See the dry-run checks in file_ops.c
>
> Urgh, my test script had an error and I made grep only in pg_rewind.c. Sorry for noise.
>
>>>>
>>>> Even if the patch sent is incorrect, shouldn't there be some process
>>>> bypass in updateControlFile() and createBackupLabel() in case of a
>>>> --dry-run?
>>>
>>> They both use open_target_file() and write_target_file(), which
>>> check for --dry-run and do nothing if it's set.
>>>
>>> Hmm, I wonder it we should print something else than "Done!" at the
>>> end, if run in --dry-run mode. Or give some indication around the
>>> time it says "Rewinding from last common checkpoint at ...", that
>>> it's running in dry-run mode and won't actually modify anything. The
>>> progress messages are a bit alarming if you don't realize that it's
>>> skipping all the writes.
>
> That would be really nice.
Added comments in all places mentioned in this thread.
>
>>
>> Wouldn't hurt to also augment that rather doom-looking "point of no
>> return" comment with a note that says writes won't happen if in
>> dry-run. :)
>>
>> For my 2c anyway.
>>
>> Thanks!
>>
>> Stephen
>
>
> --
> May the force be with you…
> https://simply.name <https://simply.name/>
--
May the force be with you…
https://simply.name
From | Date | Subject | |
---|---|---|---|
Next Message | Christian Ullrich | 2015-05-08 15:18:52 | Re: transforms vs. CLOBBER_CACHE_ALWAYS |
Previous Message | Andres Freund | 2015-05-08 15:03:40 | Re: INSERT ... ON CONFLICT UPDATE/IGNORE 4.0 |