<html>
<head>
<meta http-equiv="content-type" content="text/html; charset=utf-8">
</head>
<body bgcolor="#FFFFFF" text="#000000">
<p>Bonjour,</p>
je fais quelques tests de replication synchrone et je cherche à
vérifier que le commit sur le maître fait bien en sorte que la
donnée soit disponible immédiatement en lecture sur l'esclave :<br>
1. insert et commit sur le serveur maître<br>
2. vérification de la donnée juste insérée sur l'esclave<br>
<br>
Les opération se font en OpenJDK 1.8.0-91 avec le driver jdbc
9.4.1208.<br>
<br>
Maître et esclave sont en version 9.5.3 sous CentOS 6.5<br>
<br>
J'ai positionné les paramétrages suivants.<br>
<i><br>
Maître :</i><br>
wal_level = hot_standby<br>
synchronous_commit = on<br>
archive_mode = on<br>
archive_command = 'scp %p
<a class="moz-txt-link-abbreviated" href="mailto:postgres(at)10(dot)156(dot)217(dot)201:/var/lib/pgsql/9.5/backups/%f">postgres(at)10(dot)156(dot)217(dot)201:/var/lib/pgsql/9.5/backups/%f</a>'<br>
synchronous_standby_names = 'cadawebcat'<br>
<i><br>
Esclave :</i><br>
wal_level = hot_standby<br>
synchronous_commit = on<br>
hot_standby = on<br>
<br>
<i>Dans le recovery.conf :</i><br>
restore_command = 'cp /var/lib/pgsql/9.5/backups/%f "%p"'<br>
standby_mode = on <br>
primary_conninfo = 'application_name=cadawebcat host=10.156.217.200
port=5432 user=replication password=replicationpass'<br>
<br>
Sur 10000 insertions/vérifications, j'ai environ 15 données que je
ne vois pas immédiatement sur l'esclave. La réplication ne semble
donc pas si synchrone que cela. Une idée ?<br>
<br>
Pour info complémentaire, j'ai passé les logs de l'esclave en debug
:<br>
< 2016-06-17 15:30:36.954 CEST >DEBUG:
StartTransactionCommand<br>
< 2016-06-17 15:30:36.954 CEST >DEBUG: lie <unnamed> à
<unnamed><br>
< 2016-06-17 15:30:36.954 CEST >DEBUG:
CommitTransactionCommand<br>
< 2016-06-17 15:30:36.963 CEST >DEBUG: sendtime 2016-06-17
15:30:03.152726+02 receipttime 2016-06-17 15:30:36.963286+02
replication apply delay 0 ms transfer latency 33810 ms<br>
< 2016-06-17 15:30:36.963 CEST >DEBUG: sending write
4/2C14F6F8 flush 4/2C14F680 apply 4/2C14F680<br>
< 2016-06-17 15:30:36.965 CEST >DEBUG: sending write
4/2C14F6F8 flush 4/2C14F6F8 apply 4/2C14F680<br>
< 2016-06-17 15:30:36.965 CEST >DEBUG: record known xact
157607 latestObservedXid 157606<br>
< 2016-06-17 15:30:36.965 CEST >CONTEXTE : xlog redo
Heap2/MULTI_INSERT: 1 tuples<br>
< 2016-06-17 15:30:36.965 CEST >DEBUG: record known xact
157607 latestObservedXid 157607<br>
< 2016-06-17 15:30:36.965 CEST >CONTEXTE : xlog redo
Transaction/COMMIT: 2016-06-17 15:30:03.147224+02<br>
< 2016-06-17 15:30:36.965 CEST >DEBUG: record known xact
157607 latestObservedXid 157607<br>
< 2016-06-17 15:30:36.965 CEST >CONTEXTE : xlog redo
Transaction/COMMIT: 2016-06-17 15:30:03.147224+02<br>
< 2016-06-17 15:30:36.965 CEST >DEBUG: remove
KnownAssignedXid 157607<br>
< 2016-06-17 15:30:36.965 CEST >CONTEXTE : xlog redo
Transaction/COMMIT: 2016-06-17 15:30:03.147224+02<br>
< 2016-06-17 15:30:36.966 CEST >DEBUG: analyse
<unnamed> : SELECT id FROM test WHERE
id='58be24ab-3490-11e6-48e6-8da21da751c4'<br>
< 2016-06-17 15:30:36.966 CEST >DEBUG:
StartTransactionCommand<br>
< 2016-06-17 15:30:36.966 CEST >DEBUG: lie <unnamed> à
<unnamed><br>
< 2016-06-17 15:30:36.966 CEST >DEBUG:
CommitTransactionCommand<br>
< 2016-06-17 15:30:37.185 CEST >DEBUG: sendtime 2016-06-17
15:30:03.374971+02 receipttime 2016-06-17 15:30:37.185528+02
replication apply delay 0 ms transfer latency 33810 ms<br>
< 2016-06-17 15:30:37.185 CEST >DEBUG: sending write
4/2C14F770 flush 4/2C14F6F8 apply 4/2C14F6F8<br>
< 2016-06-17 15:30:37.192 CEST >DEBUG: sending write
4/2C14F770 flush 4/2C14F770 apply 4/2C14F6F8<br>
< 2016-06-17 15:30:37.193 CEST >DEBUG: analyse
<unnamed> : SELECT id FROM test WHERE id='<b>58be24ac-3490-11e6-6b4d-8da21da751c4</b>'<br>
< 2016-06-17 15:30:37.193 CEST >DEBUG:
StartTransactionCommand<br>
< 2016-06-17 15:30:37.193 CEST >DEBUG: lie <unnamed> à
<unnamed><br>
< 2016-06-17 15:30:37.194 CEST >DEBUG:
CommitTransactionCommand<br>
< 2016-06-17 15:30:37.200 CEST >DEBUG: record known xact
157608 latestObservedXid 157607<br>
< 2016-06-17 15:30:37.200 CEST >CONTEXTE : xlog redo
Heap2/MULTI_INSERT: 1 tuples<br>
< 2016-06-17 15:30:37.200 CEST >DEBUG: record known xact
157608 latestObservedXid 157608<br>
< 2016-06-17 15:30:37.200 CEST >CONTEXTE : xlog redo
Transaction/COMMIT: 2016-06-17 15:30:03.361395+02<br>
< 2016-06-17 15:30:37.200 CEST >DEBUG: record known xact
157608 latestObservedXid 157608<br>
< 2016-06-17 15:30:37.200 CEST >CONTEXTE : xlog redo
Transaction/COMMIT: 2016-06-17 15:30:03.361395+02<br>
< 2016-06-17 15:30:37.200 CEST >DEBUG: remove
KnownAssignedXid 157608<br>
< 2016-06-17 15:30:37.200 CEST >CONTEXTE : xlog redo
Transaction/COMMIT: 2016-06-17 15:30:03.361395+02<br>
< 2016-06-17 15:30:37.206 CEST >DEBUG: sendtime 2016-06-17
15:30:03.395458+02 receipttime 2016-06-17 15:30:37.206025+02
replication apply delay 0 ms transfer latency 33810 ms<br>
< 2016-06-17 15:30:37.206 CEST >DEBUG: sending write
4/2C14F7E8 flush 4/2C14F770 apply 4/2C14F770<br>
< 2016-06-17 15:30:37.210 CEST >DEBUG: sending write
4/2C14F7E8 flush 4/2C14F7E8 apply 4/2C14F770<br>
< 2016-06-17 15:30:37.210 CEST >DEBUG: record known xact
157609 latestObservedXid 157608<br>
< 2016-06-17 15:30:37.210 CEST >CONTEXTE : xlog redo
Heap2/MULTI_INSERT: 1 tuples<br>
< 2016-06-17 15:30:37.210 CEST >DEBUG: record known xact
157609 latestObservedXid 157609<br>
< 2016-06-17 15:30:37.210 CEST >CONTEXTE : xlog redo
Transaction/COMMIT: 2016-06-17 15:30:03.387602+02<br>
< 2016-06-17 15:30:37.210 CEST >DEBUG: record known xact
157609 latestObservedXid 157609<br>
< 2016-06-17 15:30:37.210 CEST >CONTEXTE : xlog redo
Transaction/COMMIT: 2016-06-17 15:30:03.387602+02<br>
< 2016-06-17 15:30:37.210 CEST >DEBUG: remove
KnownAssignedXid 157609<br>
< 2016-06-17 15:30:37.210 CEST >CONTEXTE : xlog redo
Transaction/COMMIT: 2016-06-17 15:30:03.387602+02<br>
< 2016-06-17 15:30:37.211 CEST >DEBUG: analyse
<unnamed> : SELECT id FROM test WHERE
id='58be4ba0-3490-11e6-6b0d-8da21da751c4'<br>
<br>
La donnée 58be24ac-3490-11e6-6b4d-8da21da751c4 est une de celle que
je ne vois pas répliquée instantanément.<br>
<br>
Merci pour votre aide.<br>
<br>
<div class="moz-signature">
<table cellpadding="0" cellspacing="0" border="0">
<tbody>
<tr>
<td width="250" valign="top"> <font style="font-size: 8pt;"
color="#36a629" face="Arial, sans-serif" size="1">
<b>Adoptez l'éco-attitude.</b>
</font><br>
<font style="font-size: 7pt;" color="#36a629" face="Arial,
sans-serif" size="1">N'imprimez ce courriel que si c'est
vraiment nécessaire</font><br>
</td>
</tr>
</tbody>
</table>
</div>
</body>
</html>