On 03/10/2015 07:46 AM, Amit Kapila wrote:
On Mon, Mar 9, 2015 at 7:32 PM, Heikki Linnakangas <hlinn...@iki.fi> wrote:
Attached is a new patch version, fixing all the little things you listed.
I believe this is pretty much ready for commit. I'm going to read it
through myself one more time before committing, but I don't have anything
mind now that needs fixing anymore. I just pushed the change to split
dbcommands.h into dbcommands.h and dbcommands_xlog.h, as that seems like a
nice-to-have anyway.
Few assorted comments:
1.
+ <step>
+ <para>
+ Copy all those changed blocks from the new cluster to the old
cluster.
+
</para>
+ </step>
Isn't it possible incase of async replication that old cluster has
some blocks which new cluster doesn't have, what will it do
in such a case?
Sure, that's certainly possible. If the source cluster doesn't have some
blocks that exist in the target, IOW a file in the source cluster is
shorter than the same file in the target, that means that the relation
was truncated in the source. pg_rewind will truncate the file in the
target to match the source's size, although that's not strictly
necessary as there will also be a WAL record in the source about the
truncation. That will be replayed on the first startup after pg_rewind
and would do the truncation anyway.
I have tried to test some form of such a case and it seems to be
failing with below error:
pg_rewind.exe -D ..\..\Data\ --source-pgdata=..\..\Database1
The servers diverged at WAL position 0/16DE858 on timeline 1.
Rewinding from last common checkpoint at 0/16B8A70 on timeline 1
could not open file "..\..\Data\/base/12706/16391" for truncation: No such
file
or directory
Failure, exiting
Hmm, could that be just because of the funny business with the Windows
path separators? Does it work if you use "-D ..\..\Data" instead,
without the last backslash?
+# To run a test, the test script (in t/ subdirectory) calls the functions
What do you mean by t/ subdirectory?
There is a directory, "src/bin/pg_rewind/t", which contains the
regression tests.
- Heikki
--
Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-hackers