Skip to content

Commit a4e9eff

Browse files
committed
tests: added tests.exclude.ExcludeTest.test_exclude_log_dir_1 and tests.exclude.ExcludeTest.test_exclude_log_dir
1 parent e959192 commit a4e9eff

File tree

1 file changed

+82
-0
lines changed

1 file changed

+82
-0
lines changed

tests/exclude.py

Lines changed: 82 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -153,3 +153,85 @@ def test_exclude_unlogged_tables_1(self):
153153

154154
# Clean after yourself
155155
self.del_test_dir(module_name, fname)
156+
157+
# @unittest.skip("skip")
158+
def test_exclude_log_dir(self):
159+
"""
160+
check that by default 'log' and 'pg_log' directories are not backed up
161+
"""
162+
fname = self.id().split('.')[3]
163+
backup_dir = os.path.join(self.tmp_path, module_name, fname, 'backup')
164+
node = self.make_simple_node(
165+
base_dir=os.path.join(module_name, fname, 'node'),
166+
set_replication=True,
167+
initdb_params=['--data-checksums'],
168+
pg_options={
169+
'logging_collector': 'on',
170+
'log_filename': 'postgresql.log'})
171+
172+
self.init_pb(backup_dir)
173+
self.add_instance(backup_dir, 'node', node)
174+
node.slow_start()
175+
176+
self.backup_node(
177+
backup_dir, 'node', node,
178+
backup_type='full', options=['--stream'])
179+
180+
log_dir = node.safe_psql(
181+
'postgres',
182+
'show log_directory').rstrip()
183+
184+
node.cleanup()
185+
186+
self.restore_node(
187+
backup_dir, 'node', node, options=["-j", "4"])
188+
189+
# check that PGDATA/log or PGDATA/pg_log do not exists
190+
path = os.path.join(node.data_dir, log_dir)
191+
log_file = os.path.join(path, 'postgresql.log')
192+
self.assertTrue(os.path.exists(path))
193+
self.assertFalse(os.path.exists(log_file))
194+
195+
# Clean after yourself
196+
self.del_test_dir(module_name, fname)
197+
198+
# @unittest.skip("skip")
199+
def test_exclude_log_dir_1(self):
200+
"""
201+
check that "--backup-pg-log" works correctly
202+
"""
203+
fname = self.id().split('.')[3]
204+
backup_dir = os.path.join(self.tmp_path, module_name, fname, 'backup')
205+
node = self.make_simple_node(
206+
base_dir=os.path.join(module_name, fname, 'node'),
207+
set_replication=True,
208+
initdb_params=['--data-checksums'],
209+
pg_options={
210+
'logging_collector': 'on',
211+
'log_filename': 'postgresql.log'})
212+
213+
self.init_pb(backup_dir)
214+
self.add_instance(backup_dir, 'node', node)
215+
node.slow_start()
216+
217+
log_dir = node.safe_psql(
218+
'postgres',
219+
'show log_directory').rstrip()
220+
221+
self.backup_node(
222+
backup_dir, 'node', node,
223+
backup_type='full', options=['--stream', '--backup-pg-log'])
224+
225+
node.cleanup()
226+
227+
self.restore_node(
228+
backup_dir, 'node', node, options=["-j", "4"])
229+
230+
# check that PGDATA/log or PGDATA/pg_log do not exists
231+
path = os.path.join(node.data_dir, log_dir)
232+
log_file = os.path.join(path, 'postgresql.log')
233+
self.assertTrue(os.path.exists(path))
234+
self.assertTrue(os.path.exists(log_file))
235+
236+
# Clean after yourself
237+
self.del_test_dir(module_name, fname)

0 commit comments

Comments
 (0)