@@ -47,6 +47,9 @@ def test_ptrack_vacuum_full(self):
47
47
node .safe_psql ('postgres' , 'vacuum t_heap' )
48
48
node .safe_psql ('postgres' , 'checkpoint' )
49
49
50
+ self .backup_node (
51
+ backup_dir , 'node' , node , options = ['-j10' , '--stream' ])
52
+
50
53
for i in idx_ptrack :
51
54
# get size of heap and indexes. size calculated in pages
52
55
idx_ptrack [i ]['old_size' ] = self .get_fork_size (node , i )
@@ -56,9 +59,6 @@ def test_ptrack_vacuum_full(self):
56
59
idx_ptrack [i ]['old_pages' ] = self .get_md5_per_page_for_fork (
57
60
idx_ptrack [i ]['path' ], idx_ptrack [i ]['old_size' ])
58
61
59
- self .backup_node (
60
- backup_dir , 'node' , node , options = ['-j10' , '--stream' ])
61
-
62
62
node .safe_psql ('postgres' , 'delete from t_heap where id%2 = 1' )
63
63
node .safe_psql ('postgres' , 'vacuum full t_heap' )
64
64
node .safe_psql ('postgres' , 'checkpoint' )
@@ -124,7 +124,7 @@ def test_ptrack_vacuum_full_replica(self):
124
124
"postgres" ,
125
125
"create sequence t_seq; create table t_heap as select i as id, "
126
126
"md5(i::text) as text, md5(repeat(i::text,10))::tsvector as "
127
- "tsvector from generate_series(0,2560 ) i" )
127
+ "tsvector from generate_series(0,256000 ) i" )
128
128
for i in idx_ptrack :
129
129
if idx_ptrack [i ]['type' ] != 'heap' and idx_ptrack [i ]['type' ] != 'seq' :
130
130
master .safe_psql (
@@ -146,15 +146,6 @@ def test_ptrack_vacuum_full_replica(self):
146
146
lsn ))
147
147
replica .safe_psql ('postgres' , 'checkpoint' )
148
148
149
- for i in idx_ptrack :
150
- # get size of heap and indexes. size calculated in pages
151
- idx_ptrack [i ]['old_size' ] = self .get_fork_size (replica , i )
152
- # get path to heap and index files
153
- idx_ptrack [i ]['path' ] = self .get_fork_path (replica , i )
154
- # calculate md5sums of pages
155
- idx_ptrack [i ]['old_pages' ] = self .get_md5_per_page_for_fork (
156
- idx_ptrack [i ]['path' ], idx_ptrack [i ]['old_size' ])
157
-
158
149
# Take FULL backup to clean every ptrack
159
150
self .backup_node (
160
151
backup_dir , 'replica' , replica ,
@@ -166,9 +157,18 @@ def test_ptrack_vacuum_full_replica(self):
166
157
]
167
158
)
168
159
# TODO: check that all ptrack are nullified
160
+ for i in idx_ptrack :
161
+ # get size of heap and indexes. size calculated in pages
162
+ idx_ptrack [i ]['old_size' ] = self .get_fork_size (replica , i )
163
+ # get path to heap and index files
164
+ idx_ptrack [i ]['path' ] = self .get_fork_path (replica , i )
165
+ # calculate md5sums of pages
166
+ idx_ptrack [i ]['old_pages' ] = self .get_md5_per_page_for_fork (
167
+ idx_ptrack [i ]['path' ], idx_ptrack [i ]['old_size' ])
169
168
170
169
master .safe_psql ('postgres' , 'delete from t_heap where id%2 = 1' )
171
170
master .safe_psql ('postgres' , 'vacuum full t_heap' )
171
+ master .safe_psql ('postgres' , 'checkpoint' )
172
172
173
173
# Sync master and replica
174
174
lsn = master .safe_psql (
0 commit comments