Re: Wal files - Question | Postgres 9.2 - Mailing list pgsql-general

From Patrick B
Subject Re: Wal files - Question | Postgres 9.2
Date
Msg-id CAJNY3isvitwAPf_Sct3JoneHux8yUXZ+w06k8qd33wtgypvb_w@mail.gmail.com
Whole thread Raw
In response to Re: Wal files - Question | Postgres 9.2  (Venkata B Nagothi <nag1010@gmail.com>)
Responses Re: Wal files - Question | Postgres 9.2  (Michael Paquier <michael.paquier@gmail.com>)
Re: Wal files - Question | Postgres 9.2  (David Steele <david@pgmasters.net>)
List pgsql-general


2016-11-23 16:18 GMT+13:00 Venkata B Nagothi <nag1010@gmail.com>:
 
On Wed, Nov 23, 2016 at 1:59 PM, Patrick B <patrickbakerbr@gmail.com> wrote:


2016-11-23 15:55 GMT+13:00 Venkata B Nagothi <nag1010@gmail.com>:


On Wed, Nov 23, 2016 at 1:03 PM, Patrick B <patrickbakerbr@gmail.com> wrote:
Hi guys,

I currently have a slave02 server that is replicating from another slave01 via Cascading replication. The master01 server is shipping wal_files (via ssh) to both slaves. 


I'm doing some tests on slave02 to test the recovery via wal_files... The goal here is to stop postgres, wait few minutes, start postgres again, watch it recovering from wal_files, once it's done see the streaming replication start working again.

1 - Stop postgres on slave02(streaming replication + wal_files)
2 - Wait for 5 minutes
3 - Start postgres - The goal here is to tail the logs to see if the wal_files are being successfully recovered

However, when doing step3 I get these messages:
cp: cannot stat '/walfiles/0000000200001AF8000000A4': No such file or directory
cp: cannot stat '/walfiles/0000000200001AF8000000A5': No such file or directory
cp: cannot stat '/walfiles/0000000200001AF8000000A6': No such file or directory
LOG:  consistent recovery state reached at 1AF8/AB629F90
LOG:  database system is ready to accept read only connections
LOG:  streaming replication successfully connected to primary


still on slave01: Sometimes the log_delay time is bigger.. sometimes is lower
SELECT CASE WHEN pg_last_xlog_receive_location() = pg_last_xlog_replay_location() THEN 0 ELSE EXTRACT (EPOCH FROM now() - pg_last_xact_replay_timestamp()) END AS log_delay;
 log_delay
-----------
  0.386863


On master01:
select * from pg_current_xlog_location();
 pg_current_xlog_location
--------------------------
 1AF8/D3F47A80



QUESTION:

So.. I just wanna understand what's the risk of those errors... what's happening? 
cp: cannot stat '/walfiles/0000000200001AF8000000A5': No such file or directory - Means it didn't find the file. However, the file exists on the Master, but it didn't start shipping yet. What are the consequences of that?

That is just saying that the slave cannot find the WAL file. That should not be of big importance. Eventually, that will vanish when the log file gets shipped from the master. Also "cp: cannot stat." errors have been been fixed in 9.3 i believe.

Hi Venkata !

Yeah that's fine.. the streaming replication is already working fine.

But, as it didn't find/recover some of the wal_files, doesn't that mean that the DB isn't up-to-date?

Not necessarily. Standby periodically checks if the WAL file it is looking for is available at restore_command location and generates that message if the file is not available. These messages are not of any harm.

Below link might help you :




hmm.. I really don't get it.


 
If I get messages like: 

cp: cannot stat '/walfiles/0000000200001AF8000000A5': No such file or directory

In my head, it's saying that it was unable to recover that file and, because of that, there is missing data.
Even if the server is able to connect to tbe master via streaming replication, there might be missing data. There might be data that is into master but not into slave.

Am I wrong? If so, I don't understand why are the wal_files for, then.


Patrick

pgsql-general by date:

Previous
From: azhwkd
Date:
Subject: Re: query locks up when run concurrently
Next
From: Michael Paquier
Date:
Subject: Re: Wal files - Question | Postgres 9.2