Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
Skip to content

Commit 9cbec06

Browse files
committed
add few status log messages during recovery finish
1 parent 7952632 commit 9cbec06

File tree

6 files changed

+18
-18
lines changed

6 files changed

+18
-18
lines changed

src/include/logger.h

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -57,13 +57,15 @@ typedef enum MtmLogTag
5757
ProtoTraceTx = DEBUG1,
5858
ProtoTraceMode = LOG,
5959
ProtoTraceMessage = LOG,
60+
ProtoTraceState = LOG,
6061

6162
/* receiver */
6263
MtmReceiverMode = LOG,
6364
MtmReceiverFilter = LOG,
6465
MtmApplyMessage = LOG,
6566
MtmApplyTrace = DEBUG2,
6667
MtmApplyError = LOG,
68+
MtmApplyBgwFinish = LOG,
6769

6870
/* state */
6971
MtmStateSwitch = LOG,

src/multimaster.c

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1857,6 +1857,8 @@ MtmAllApplyWorkersFinished()
18571857
ntasks = Mtm->nodes[i].pool.active + Mtm->nodes[i].pool.pending;
18581858
SpinLockRelease(&Mtm->nodes[i].pool.lock);
18591859

1860+
mtm_log(MtmApplyBgwFinish, "MtmAllApplyWorkersFinished %d tasks not finished", ntasks);
1861+
18601862
if (ntasks != 0)
18611863
false;
18621864
}

src/pglogical_output.c

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -479,9 +479,11 @@ pg_decode_caughtup(LogicalDecodingContext *ctx)
479479
{
480480
LWLockAcquire(MtmReceiverBarrier, LW_EXCLUSIVE);
481481
hooks_data->recovery_done = true;
482+
mtm_log(ProtoTraceState, "Start building safe point to finish recovery");
482483
}
483484
else if (MtmAllApplyWorkersFinished())
484485
{
486+
mtm_log(ProtoTraceState, "Recovery finish safe point done");
485487
MtmOutputPluginPrepareWrite(ctx, true, true);
486488
data->api->write_caughtup(ctx->out, data, ctx->reader->EndRecPtr);
487489
MtmOutputPluginWrite(ctx, true, true);

tests/docker-entrypoint.sh

Lines changed: 9 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@
22

33
if [ "$1" = 'postgres' ]; then
44
mkdir -p "$PGDATA"
5+
mkdir -p /pg/archive/
56
mkdir -p /pg/src/src/test/regress/testtablespace
67

78
# look specifically for PG_VERSION, as it is expected in the DB dir
@@ -48,31 +49,24 @@ if [ "$1" = 'postgres' ]; then
4849

4950

5051
cat <<-EOF >> $PGDATA/postgresql.conf
51-
listen_addresses='*'
52+
listen_addresses='*'
53+
log_line_prefix = '%m [%p]: '
54+
archive_mode = on
55+
archive_command = 'cp %p /pg/archive/%f'
56+
57+
fsync = on
58+
5259
max_prepared_transactions = 100
53-
synchronous_commit = on
54-
fsync = off
5560
wal_level = logical
5661
max_worker_processes = 50
5762
max_replication_slots = 10
5863
max_wal_senders = 10
59-
shared_preload_libraries = 'multimaster'
60-
log_line_prefix = '%m [%p]: '
61-
wal_writer_delay = 500ms
62-
archive_mode = on
63-
archive_command = '/bin/false'
64-
# log_statement = all
6564
65+
shared_preload_libraries = 'multimaster'
6666
multimaster.max_nodes = 3
6767
multimaster.heartbeat_recv_timeout = 1100
6868
multimaster.heartbeat_send_timeout = 250
69-
multimaster.max_recovery_lag = 1GB
70-
multimaster.min_recovery_lag = 10kB
71-
multimaster.preserve_commit_order = on
72-
7369
multimaster.volkswagen_mode = on
74-
multimaster.ignore_tables_without_pk = on
75-
# partition_backend = 'internal'
7670
EOF
7771

7872
if [ -n "$NODE_ID" ]; then

tests/lib/test_helper.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -39,7 +39,7 @@ def awaitCommit(self, node_id):
3939
total_sleep = 0
4040

4141
while total_sleep <= TEST_MAX_RECOVERY_TIME:
42-
aggs = self.client.get_aggregates(clean=False, _print=False)
42+
aggs = self.client.get_aggregates(clean=False, _print=True)
4343
print('=== ',aggs[node_id]['transfer']['finish'])
4444
if ('commit' in aggs[node_id]['transfer']['finish'] and
4545
aggs[node_id]['transfer']['finish']['commit'] > 10):

tests/test_recovery.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -138,7 +138,7 @@ def test_node_bicrash(self):
138138

139139
for _ in range(10):
140140
aggs_failure, aggs = self.performFailure(CrashRecoverNode('node3'),
141-
node_wait_for_commit=2, stop_load=True)
141+
node_wait_for_online="dbname=regression user=postgres host=127.0.0.1 port=15434", stop_load=True)
142142

143143
self.assertCommits(aggs_failure[:2])
144144
self.assertNoCommits(aggs_failure[2:])
@@ -148,7 +148,7 @@ def test_node_bicrash(self):
148148
self.assertIsolation(aggs)
149149

150150
aggs_failure, aggs = self.performFailure(CrashRecoverNode('node1'),
151-
node_wait_for_commit=0, stop_load=True)
151+
node_wait_for_online="dbname=regression user=postgres host=127.0.0.1 port=15432", stop_load=True)
152152

153153
self.assertNoCommits(aggs_failure[0:1]) # [1]
154154
self.assertCommits(aggs_failure[1:]) # [2, 3]

0 commit comments

Comments
 (0)