forked from EnterpriseDB/barman
-
Notifications
You must be signed in to change notification settings - Fork 0
/
ChangeLog
5056 lines (3184 loc) · 169 KB
/
ChangeLog
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
2019-12-02 Marco Nenciarini <marco.nenciarini@2ndquadrant.it>
Update the ChangeLog file
2019-12-02 Gabriele Bartolini <gabriele.bartolini@2ndQuadrant.it>
Version set to 2.10
2019-11-29 Gabriele Bartolini <gabriele.bartolini@2ndQuadrant.it>
Small improvements in cloud utilities documentation
2019-11-29 Marco Nenciarini <marco.nenciarini@2ndquadrant.it>
Remove race condition on cloud upload completion
2019-11-28 Marco Nenciarini <marco.nenciarini@2ndquadrant.it>
Fix WAL file name validation in barman-cloud-walarchive
2019-11-27 Gabriele Bartolini <gabriele.bartolini@2ndQuadrant.it>
Fix issue with list-server and empty description
Fixes GH-242
Removed broken link on standby settings
Fixes GH-251
2019-11-27 Marco Nenciarini <marco.nenciarini@2ndquadrant.it>
Improve error in cloud clients when boto3 is missing
2019-11-27 Gabriele Bartolini <gabriele.bartolini@2ndQuadrant.it>
Add man pages for cloud utilities to setup.py
Add disclaimer for experimental support for cloud utilities
2019-11-27 Anna Bellandi <anna.bellandi@2ndquadrant.com>
Remove recovery documentation link from documentation
2019-11-27 Gabriele Bartolini <gabriele.bartolini@2ndQuadrant.it>
Small change in log file for `get-wal` command
2019-11-25 Marco Nenciarini <marco.nenciarini@2ndquadrant.it>
Update set-version.sh script with the new doc files
2019-11-15 Marco Nenciarini <marco.nenciarini@2ndquadrant.it>
Implement statistics during cloud-backup upload
2019-11-14 Marco Nenciarini <marco.nenciarini@2ndquadrant.it>
Improve `receive-wal --reset` command
Verify the last partial file is aligned with current WAL location
or, if present, with the replication slot's.
Add '-w/--wait' option to backup command
With this option, Barman wait for all required WAL files to
be archived before considering the backup completed.
The patch includes `--wait-timeout` option (default 0, no timeout)
2019-11-12 Marco Nenciarini <marco.nenciarini@2ndquadrant.it>
Automated creation of replication slots
Introduce the `create_slot` option with two possible values:
`auto` and `manual` (default, for back-compatibility).
When set to `auto`, Barman automatically attemps to create the
replication slot defined by the `slot_name` option.
2019-11-13 Marco Nenciarini <marco.nenciarini@2ndquadrant.it>
Setup the bucket in the region specified in the AWS profile
2019-11-14 Marco Nenciarini <marco.nenciarini@2ndquadrant.it>
Fix exception when a server is passed twice on the command line
2019-11-08 Marco Nenciarini <marco.nenciarini@2ndquadrant.it>
Add support for .partial WAL files to `get-wal`
Remove the long-standing limitation of `restore_command` that
were not capable of automatically handling `.partial` WAL files
shipped to Barman via streaming replication.
When invoked with `--partial/-P`, `get-wal` command will look
also for the `.partial` content of the requested WAL file.
This is extremely useful in case of disaster recovery situations
with RPO=0.
The patch also covers `barman-wal-restore`.
2019-11-12 Marco Nenciarini <marco.nenciarini@2ndquadrant.it>
Improve error handling in `barman-cloud-backup`
Set application name in barman-cloud-backup
2019-11-12 Gabriele Bartolini <gabriele.bartolini@2ndQuadrant.it>
Display a warning for WAITING_FOR_WALS backups
In case a backup is completed as 'WAITING_FOR_WALS' display
a warning that explains the state.
2019-11-06 Marco Nenciarini <marco.nenciarini@2ndquadrant.it>
Manage KeyboardInterrupt exception in barman-cloud-backup
2019-11-05 Marco Nenciarini <marco.nenciarini@2ndquadrant.it>
Make sure to remove temporary files during unit tests
Fix circular import error importing barman.compression
2019-10-30 Leonardo Cecchi <leonardo.cecchi@2ndquadrant.it>
Parallel barman-cloud-backup upload
Add a parallel S3 upload feature to barman-cloud-backup to
enhance performance.
2019-11-05 Marco Nenciarini <marco.nenciarini@2ndquadrant.it>
Add sphinx to isort configuration
2019-11-06 Ian Barwick <ian@2ndquadrant.com>
Minor clarification to "backup_options" description
Make it clear that "concurrent_backup" should be set for *all
versions* from 9.6.
2019-11-02 Gabriele Bartolini <gabriele.bartolini@2ndQuadrant.it>
Add documentation section about `barman-cli`
2019-11-04 Marco Nenciarini <marco.nenciarini@2ndquadrant.it>
Verify the PostgreSQL system identifier
Retrieve the PostgreSQL system identifier (`systemid`) from the
from the main connection or from the streaming connection, then
store it in the server directory and in every backup.
Verify via the `check` command that systemid does not change over
time, otherwise fail. This reduces the risk of data corruption
and mixing data originating from different PostgreSQL instances
or physical clusters.
Fix GH-246
2019-10-30 Leonardo Cecchi <leonardo.cecchi@2ndquadrant.it>
Add WAL file name validation in barman-cloud-walarchive
2019-10-28 Gabriele Bartolini <gabriele.bartolini@2ndQuadrant.it>
Use the same WAL directory structure in S3
Fix exception with server side encryption
2019-06-12 frankgard <frankgard@users.noreply.github.com>
Enable python3 for bash completion
This modified bash completion snippet should work for Python3
(preferred, if installed) and Python2 (as a fallback)
2019-10-25 Leonardo Cecchi <leonardo.cecchi@2ndquadrant.it>
Add `--keep-descriptors` run-time option to `cron` command
That new command-line option enables Docker-based installations
of Barman to show the output of the Barman subprocess in the
container log.
Fixes GH-243
2019-10-25 Marco Nenciarini <marco.nenciarini@2ndquadrant.it>
Add current timestamp to diagnose
2019-10-24 Leonardo Cecchi <leonardo.cecchi@2ndquadrant.it>
Use CloudInterface class in cloud_wal_archive
Refactor Cloud WAL archive code to reuse the CloudInterface module
2019-10-25 Marco Nenciarini <marco.nenciarini@2ndquadrant.it>
Ignore vanished and truncated files uploading cloud backups
This is to avoid backup errors if PostgreSQL rewrite or delete a file in
its data directory while the backup is running.
If a file change its size during the backup, we pad the file contents
with zeroes, and the WAL reply will take care of the original contents
during recovery.
2019-10-24 Marco Nenciarini <marco.nenciarini@2ndquadrant.it>
Redact passwords from Barman output (InfoSec)
This prevents that `barman diagnose` or other output commands
will contain a password.
Co-authored-by: Leonardo Cecchi <leonardo.cecchi@2ndquadrant.it>
2019-10-24 Gabriele Bartolini <gabriele.bartolini@2ndQuadrant.it>
Add note about PostgreSQL upgrades
Closes GH-244
2019-10-23 Marco Nenciarini <marco.nenciarini@2ndquadrant.it>
Wrong string matching operation when excluding tablespaces inside PGDATA
Fixes GH-245
2019-10-15 Marco Nenciarini <marco.nenciarini@2ndquadrant.it>
Move cloud functions to a dedicated file
2019-10-15 Leonardo Cecchi <leonardo.cecchi@2ndquadrant.it>
Isolate all S3-related methods in their own class
This patch isolates all the AWS methods in a class, to make parallel
processing easier.
2019-07-31 Marco Nenciarini <marco.nenciarini@2ndquadrant.it>
Implement include/exclude logic on cloud backup
Filter the files to include in the backup using a pattern-matching
algorithm similar to the one implemented by rsync, which is powering the
BackupExecutor.
The patterns have been moved in a new module, named
`postgres_plumbing.py`, containing them and also the low-level
PostgreSQL related features.
Co-authored-by: Leonardo Cecchi <leonardo.cecchi@2ndquadrant.it>
Add barman-cloud-backup command
2019-05-16 Giulio Calacoci <giulio.calacoci@2ndquadrant.it>
Add barman-cloud-wal-archive command
2019-06-06 Marco Nenciarini <marco.nenciarini@2ndquadrant.it>
Untie PostgreSQLConnection from a barman configuration
2019-06-04 Marco Nenciarini <marco.nenciarini@2ndquadrant.it>
Separate BackupInfo and LocalBackupInfo
Minor changes:
* Improve Python 3 support
* Do not close a fileobj passed to save()
2019-10-21 Gabriele Bartolini <gabriele.bartolini@2ndQuadrant.it>
Mention `wal_level = logical` in documentation
2019-08-09 Ian Barwick <ian@2ndquadrant.com>
Log formatting tweak for consistency
Patch changes the "Starting check" log output to quote the check name,
which is consistent with the following "Check '...' succeeded" log output.
Closes GH-236
2019-08-28 vegorov <egorovvv@kadastr.ru>
Minor fixes in WAL delete hook scripts
Fixed bug, enviroment variables not set in wal delete retry scripts.
Wrong parameter passed to HookScriptRunner for wal delete scripts.
Closes GH-240
2019-09-12 Marco Nenciarini <marco.nenciarini@2ndquadrant.it>
Pandoc not to be smart while producing Barman documentation
Better handling of unicode output and logging
2019-09-03 Gabriele Bartolini <gabriele.bartolini@2ndQuadrant.it>
Improved documentation on upgrading Barman
2019-09-02 Marco Nenciarini <marco.nenciarini@2ndquadrant.it>
Fix PostgreSQL connection aliveness check
The previous code was raising an error when the PostgreSQL connection
was unexpectedly dropped:
ERROR: Backup failed issuing stop backup command.
DETAILS: 'NoneType' object has no attribute 'rollback'
Now the rollback is only issued when the connection is healty.
Regression introduced in 4b493022be79624da8deef95b88dd57b3ab5c12b
Closes: GH-239
2019-08-29 Gabriele Bartolini <gabriele.bartolini@2ndQuadrant.it>
Add note about `receive-wal` being run as a foreground process
2019-07-31 Marco Nenciarini <marco.nenciarini@2ndquadrant.it>
Upgrade testing tools version
Declare argcomplete requirement as optional
2019-07-26 Marco Nenciarini <marco.nenciarini@2ndquadrant.it>
Update the ChangeLog file
Version set to 2.9
2019-07-25 Gabriele Bartolini <gabriele.bartolini@2ndQuadrant.it>
Add release notes for version 2.9
Manage `synchronous_standby_names = '*'` special entry
Fixes GH-231
2019-07-23 Gabriele Bartolini <gabriele.bartolini@2ndQuadrant.it>
Clarify documentation about WAL archiving from standby
Fixes GH-232
2019-07-24 Leonardo Cecchi <leonardo.cecchi@2ndquadrant.it>
Fix exception in check-backup for in progress backups
Backups that are in progress have not `end_wal` and that was causing
check_backup to fail.
Fixes GH-224
2019-07-11 Marcin Hlybin <marcin.hlybin@gmail.com>
JSON Output Writer (experimental)
Add -f/--format option with 'json' value. Default is 'console'.
Currently declared experimental. Actual structure of the output
will be defined and documented in a future release based on
feedback and production experience.
Fixes GH-234
2019-07-22 Marco Nenciarini <marco.nenciarini@2ndquadrant.it>
Truncate the .partial WAL file when size is wrong
During the `receive-wal` startup, if we detect that the partial file size
is wrong, we truncate it and then start `pg_receivewal`, making Barman
more resilient.
This is coherent with the behaviour of `pg_receivewal`, that will allocate
the exact size needed for a WAL segment before starting to write it.
This also enables `receive-wal` to automatically resume after the backup
server ran out of disk space.
2019-07-18 Gabriele Bartolini <gabriele.bartolini@2ndQuadrant.it>
Add `--target-lsn` option to `recover` command
Support `recovery_target_lsn` option in recovery, allowing users
to specify a Log Sequence Number (LSN) as recovery target.
Extract 'checkpoint_timeout'
2019-03-29 Timothy Alexander <dragonfyre13@gmail.com>
Fix execution environment of recovery retry scripts
This patch fix the execution environment of the recovery retry
scripts: previously the environment applyied was the one for the
"recovery script" instead of the one for the "recovery retry script".
Pull request GH-203
2019-04-13 Jeff Janes <jeff.janes@gmail.com>
Fix "Backup completed" elapsed time
The message issued when a backup completes does not include all of the
elapsed time, but rather only a non-intuitive subset of it.
Notably it does not include the time taken to fsync all of the files,
which can be substantial. Make the message include all time up to when
the message is issued.
Pull request GH-216
2019-07-11 Marco Nenciarini <marco.nenciarini@2ndquadrant.it>
Support for PostgreSQL 12
PostgreSQL 12 removes support for `recovery.conf`, in favour of
GUC options and introduces two signal files: `recovery.signal`
for recovery and `standby.signal` for standby mode.
Barman detects PostgreSQL 12 and transparently supports it both
during backup (by excluding some files) and, most importantly,
during recovery, by rewriting configuration options in the
`postgresql.auto.conf` file.
Support for versions prior to 12 has not been changed.
2019-07-12 Marco Nenciarini <marco.nenciarini@2ndquadrant.it>
Rename barman_xlog directory to barman_wal
2019-07-15 Marco Nenciarini <marco.nenciarini@2ndquadrant.it>
Preserve PostgreSQL connection status in aliveness check
In some cases, PostgreSQL was terminating the connection for the
start backup with the following error message:
"FATAL: terminating connection due to idle-in-transaction timeout".
This was caused by the "SELECT 1" query that checks that a connection
is alive.
Fixes GH149
2019-06-04 Gabriele Bartolini <gabriele.bartolini@2ndQuadrant.it>
Skip WAL archive failure if we have a terminated backup
In low workload situations with concurrent backup, at the end of the
backup the WAL archive might be temporarily empty and therefore throw
a failure with `check` or commands that rely on it such as `backup`.
Ignore the error if the last backup is `WAITING_FOR_WALS` as WAL
archiving must have been verified before running that backup.
2019-05-20 Drazen Kacar <drazen.kacar@oradian.com>
barman-wal-restore: Add --spool-dir option
Allow the user to change the spool directory location from the
default, avoiding conflicts in case of multiple PostgreSQL instances
on the same server.
Closes: GH-225, 2ndquadrant-it/barman-cli#2
2019-05-23 Gabriele Bartolini <gabriele.bartolini@2ndQuadrant.it>
Add '--bwlimit' option to backup and recover commands
2019-05-16 Gabriele Bartolini <gabriele.bartolini@2ndQuadrant.it>
replication-status doesn't show streamers without a slot
Fixes #GH222
2019-05-23 Marco Nenciarini <marco.nenciarini@2ndquadrant.it>
Use latest PostgreSQL release in sample configurations
2019-05-17 Gabriele Bartolini <gabriele.bartolini@2ndQuadrant.it>
Clarify some options in passive node configuration example
2019-05-16 Gabriele Bartolini <gabriele.bartolini@2ndQuadrant.it>
Version set to 2.9a1
2019-05-14 Marco Nenciarini <marco.nenciarini@2ndquadrant.it>
Update the ChangeLog file
Update NEWS file for release 2.8
Version set to 2.8
2019-05-10 Gabriele Bartolini <gabriele.bartolini@2ndQuadrant.it>
Improve documentation on backup from standby
From now on support only PostgreSQL 9.4+ and recommend
just WAL streaming (with replication slots) from the standby
as WAL shipping method.
2019-05-13 Gabriele Bartolini <gabriele.bartolini@2ndQuadrant.it>
Updated requirements section in the documentation
Python 3 becomes officially supported. 2.6 and 2.7 are deprecated.
Marked pre-9.4 versions of PostgreSQL deprecated.
2019-05-14 Marco Nenciarini <marco.nenciarini@2ndquadrant.it>
Add '--test' option to barman-wal-archive and barman-wal-restore
2019-05-13 Marco Nenciarini <marco.nenciarini@2ndquadrant.it>
Add a warning on empty backup_option with rsync_backup method
2019-05-12 Gabriele Bartolini <gabriele.bartolini@2ndQuadrant.it>
Cosmetic changes in default barman.conf
2019-05-10 Marco Nenciarini <marco.nenciarini@2ndquadrant.it>
Do not report logical decoding connection is replication-status
Report remote command in logs during recovery
Clarify check --nagios output about inactive servers
Fix issues found by flake8 running on Python 3.x
2019-05-09 Marco Nenciarini <marco.nenciarini@2ndquadrant.it>
Incremental backup copy in passive nodes
Add support for `reuse_backup` in geo-redundancy
2019-05-08 Marco Nenciarini <marco.nenciarini@2ndquadrant.it>
Support for double quotes in 'synchronous_standby_names' setting
2019-05-07 Marco Nenciarini <marco.nenciarini@2ndquadrant.it>
Fix sync-wals error if primary has WALs older than the first backup
2019-04-30 Marco Nenciarini <marco.nenciarini@2ndquadrant.it>
Update Sphinx docuemntation build environment
2019-04-15 Giulio Calacoci <giulio.calacoci@2ndquadrant.it>
Merge barman-cli code with barman
We are in the process or reorganising the barman codebase.
During this stage the code from barman-cli is going to be included in
the barman codebase and distributed with the barman package.
2019-04-26 Marco Nenciarini <marco.nenciarini@2ndquadrant.it>
Avoid using dateutil.parser in copy_controller
Parsing the date with dateutil.parser is too slow to be used with
millions of files. We know the format of the date we are going to
parse so we can replace it with a couple of strptime calls.
Closes: GH-210
2019-04-12 Jeff Janes <jeff.janes@gmail.com>
Remove spurious message when resetting WAL
When calling "barman receive-wal --reset foo", it gives
a message:
Starting receive-wal for server foo
However, it does not actually attempt to start the receive-wal
process when called with --reset.
Closes: GH-215
2019-04-13 Jeff Janes <jeff.janes@gmail.com>
Fix exclude_and_protect_filter
Filters which do not start with '/' are treated as wildcards.
For the exclude_and_protect_filter, this is both slow and
incorrect. For example, if there were a spurious file named
"pg_xact/0000" somewhere other than the top-level dest data
directory, the unachored protect filter means it would not
get deleted. With an anchored protect filter, it will get
deleted, as it should.
So fix this by prefixing the filter paths with a '/'.
The bug fix is minor (it is not clear why such spurious files
would exist in the first place) but the speed-up should be
appreciated by anyone with a large number of files in their
database.
Closes: GH-217
2019-04-24 Marco Nenciarini <marco.nenciarini@2ndquadrant.it>
Fix encoding error in get-wal on Python 3
Make sure that WAL files are read and written as bytes.
Closes: GH-221
Fix TypeError exception running sync-info --primary with Python 3
In Python 2, additional positional arguments passed to json.dumps
are silently discarded. Python 3 is stricter and highlighted an
unused positional argument in a json.dumps call. The argument has
been removed.
2019-04-17 Marco Nenciarini <marco.nenciarini@2ndquadrant.it>
Make sure barman configuration does not use a strict ConfigParser
In Python 3 ConfigParser has changed to be strict by default.
Barman wants to preserve the Python 2 behavior, so we are explicitly
building it passing strict=False.
2019-04-16 Marco Nenciarini <marco.nenciarini@2ndquadrant.it>
Add Python 3.7 to unit tests
2019-04-15 Marco Nenciarini <marco.nenciarini@2ndquadrant.it>
Support psycopg2 2.8 in unit tests
2019-04-02 Gabriele Bartolini <gabriele.bartolini@2ndQuadrant.it>
Collect more PostgreSQL settings during get_remote_status()
Added settings are:
* archive_timeout
* data_checksums
* hot_standby
* max_wal_senders
* max_replication_slots
* wal_compression
Display the above settings in the `show-server` and `diagnose` commands
2019-03-20 Marco Nenciarini <marco.nenciarini@2ndquadrant.it>
Version set to 2.8a1
Update the ChangeLog file
Update NEWS file for release 2.7
Version set to 2.7
Add utility script to set a new barman version
Remove obsolete rpp packagin files
2019-03-19 Marco Nenciarini <marco.nenciarini@2ndquadrant.it>
Make `barman cron` resilient to unhandled exceptions
Before this patch, any unhandled exceptions raised during the handling
of a server, would have terminated the cron, preventing any other
maintenance operation required by subsequent servers.
Now the exception is logged and the cron continues with eventual other
servers.
Thanks to Martín Marqués for the analysis.
Closes: #202
Clarify cron error message on primary server connection failures
This patch also avoids to propagate and log the SyncError exception.
Fixes: #202
Update import sorting using latest isort
2019-03-01 Marco Nenciarini <marco.nenciarini@2ndquadrant.it>
Fix error handling exceptions containing non-ascii error messages
Fixes #194
Fix broken unit test (s/asset_called/assert_called/)
2019-02-17 Marco Nenciarini <marco.nenciarini@2ndquadrant.it>
Avoid failing if the output contains non ascii characters
Fixes #196
2019-02-22 Marco Nenciarini <marco.nenciarini@2ndquadrant.it>
Fix backup validation in PostgreSQL older than 9.2
2019-02-05 tomascassidy <tomascassidy@users.noreply.github.com>
Fix typo in passive-server.conf-template
2019-02-14 Luc Didry <luc@didry.org>
Fix doc typo
2019-02-21 Giulio Calacoci <giulio.calacoci@2ndquadrant.it>
Set version to 2.7a1
2019-02-17 Marco Nenciarini <marco.nenciarini@2ndquadrant.it>
Make CommandMaxRetryExceeded exception serializable
The CommandMaxRetryExceeded could be raised by one of the parallel
worker subprocesses, and if not serializable it causes a failure
reporting the error.
Fixes: #199
2019-02-17 Gabriele Bartolini <gabriele.bartolini@2ndQuadrant.it>
Ignore history/backup/partial files for first sync of geo-redundancy
Fixes #198
2019-02-06 Marco Nenciarini <marco.nenciarini@2ndquadrant.it>
Manual: fix example of archiving with barman-wal-archive
2019-01-31 Marco Nenciarini <marco.nenciarini@2ndquadrant.it>
Update the ChangeLog file
Prepare release 2.6
2019-01-30 Giulio Calacoci <giulio.calacoci@2ndquadrant.it>
Fix flake8 errors
2019-01-29 Gabriele Bartolini <gabriele.bartolini@2ndQuadrant.it>
Improved documentation on geo-redundancy
Contains also minor fixes and typos fixes
2019-01-10 Marco Nenciarini <marco.nenciarini@2ndquadrant.it>
Add colored output for check and error/warning messages
Use ANSI escape codes for color selection
2018-11-15 Giulio Calacoci <giulio.calacoci@2ndquadrant.it>
Geographic redundancy implementation
Introduce three new commands (`sync-info`, `sync-backup` and `sync-wals`)
and one global/server configuration option called `primary_ssh_command`.
When the latter is specified globally, the whole instance of Barman is
an async copy of the server reached via SSH by `primary_ssh_command`.
If specified on a single server definition, that server in Barman is
an async copy of the same server that is defined on another Barman
installation.
Geo-redundancy is asynchronous and based on SSH connections between
Barman servers. Cascading backup is supported.
2019-01-04 Marco Nenciarini <marco.nenciarini@2ndquadrant.it>
Implement put-wal command
2019-01-08 Marco Nenciarini <marco.nenciarini@2ndquadrant.it>
Add utils.fsync_file() method
2019-01-10 Marco Nenciarini <marco.nenciarini@2ndquadrant.it>
Clarify output of list-backup on 'WAITING_FOR_WALS' backups
2018-12-24 Marco Nenciarini <marco.nenciarini@2ndquadrant.it>
Do not treat lock file busy as an error when validating a backup
This patch prevents the `barman backup` command to terminate with a
failure because of a race condition with the cron starting a
backup validation.
2018-12-06 Abhijit Menon-Sen <ams@2ndQuadrant.com>
Fix typo: consistencty → consistency
2018-11-23 Martín Marqués <martin.marques@2ndquadrant.com>
Typo in NEWS file refering to xlogdb
2018-11-24 Marco Nenciarini <marco.nenciarini@2ndquadrant.it>
Fix current_action in concurrent stop backup errors
2018-11-21 Gabriele Bartolini <gabriele.bartolini@2ndQuadrant.it>
Documentation: exclude PGDG repository from Barman RPM management
Document how to exclude any Barman related software from getting
updated via PGDG RPM repositories.
2018-11-13 Marco Nenciarini <marco.nenciarini@2ndquadrant.it>
Fix WAL compression detection algorithm
This patch fixes a misdetection of the compression status of WAL files
into the archive when compression method changes.
2018-11-09 Giulio Calacoci <giulio.calacoci@2ndquadrant.it>
Set version to 2.6a1
2018-11-08 Marco Nenciarini <marco.nenciarini@2ndquadrant.it>
Honour archiver locking in `wait_for_wal` method
Fixes a race between the archiver run by the `cron` and
the archiver run by `wait_for_wal` method.
Now only one archiver can run at the same time.
2018-11-05 Leonardo Cecchi <leonardo.cecchi@2ndquadrant.com>
Make code compliant with the newer Flake8
Fix switch-wal on standby with WAL dir empty
This patch fixes an error happening using the `switch-wal` command on a
standby server when the WAL directory is empty.
Closes: #5993
2018-10-22 Marco Nenciarini <marco.nenciarini@2ndquadrant.it>
Update the ChangeLog file
Set version to 2.5
2018-10-17 Leonardo Cecchi <leonardo.cecchi@2ndquadrant.com>
Avoid checking failed backups
If a backup is in a different state than WAITING_FOR_WALS, we don't need
to check it for consistency.
2018-10-17 Gabriele Bartolini <gabriele.bartolini@2ndQuadrant.it>
Prepared release notes for 2.5 with tentative release date
2018-10-16 Marco Nenciarini <marco.nenciarini@2ndquadrant.it>
Avoid being verbose about missing WAL files in `check-backup`
The number of missing WAL files can be huge, and storing such list or
displaying it in the error message is consuming and not useful.
The check now stops as soon as it finds a missing file, and the message
has changed to display only that file.
2018-10-15 Leonardo Cecchi <leonardo.cecchi@2ndquadrant.com>
Support switch-wal on standby server
The switch-wal command can also be used on standby servers, but only for
the `--archive` option.
Use XLOG segment size in check_backup
The `check_backup` command wasn't using the current XLOG segment size to
generate the WAL file names.
2018-10-15 Marco Nenciarini <marco.nenciarini@2ndquadrant.it>
Implement atomic BackupInfo writes
2018-10-15 Leonardo Cecchi <leonardo.cecchi@2ndquadrant.com>
Notify users when attempting to recover a WAITING_FOR_WALS backup
When a backup which is still in WAITING_FOR_WALS state will be
recovered, a warning message will be raised if the get-wal feature
is not in use.
Another warning message will be raised if the backup is still in the
same state after having copied the data files.
2018-10-15 Marco Nenciarini <marco.nenciarini@2ndquadrant.it>
Always update the backup status during `check-backup` execution
This change aims to detect cases where the content of the WAL archive
has been modified outside Barman.
2018-10-15 Gabriele Bartolini <gabriele.bartolini@2ndQuadrant.it>
Cover WAL streaming in documentation for backup from a standby
2018-10-14 Marco Nenciarini <marco.nenciarini@2ndquadrant.it>
In PostgreSQL 11 `wal_segment_size` is returned in bytes
2018-10-04 Leonardo Cecchi <leonardo.cecchi@2ndquadrant.com>
Add `check-backup` command
Make sure that all the required WAL files to check the consistency
of a physical backup (that is, from the beginning to the end of
the full backup, as outlined in the backup label) are correctly archived.
This command is automatically invoked by the `cron` command,
and at the end of every backup operation.
2018-10-09 Marco Nenciarini <marco.nenciarini@2ndquadrant.it>
Set version to 2.5a1
2018-09-14 Marco Nenciarini <marco.nenciarini@2ndquadrant.it>
Pin py<1.6.0 to keep 2.6 support
2018-08-02 Marco Nenciarini <marco.nenciarini@2ndquadrant.it>
Fix decoding errors reading external commands output
Completed the fix started in commit f14e405e9b36de912899d0735563eed76f479164
The StreamLineProcessor implementation is enough to ensure that
the Command out and err property are proper unicode strings or None
Closes: #174
Pin pytest-timeout<1.2.1 to continue supporting Python 2.6
2018-05-23 Marco Nenciarini <marco.nenciarini@2ndquadrant.it>
Update the ChangeLog file
Set version to 2.4
2018-05-23 Gabriele Bartolini <gabriele.bartolini@2ndQuadrant.it>
Fix doc about RPM/APT repositories
2018-05-18 Marco Nenciarini <marco.nenciarini@2ndquadrant.it>
Update the ChangeLog file
2018-05-15 Giulio Calacoci <giulio.calacoci@2ndquadrant.it>
Fix invalid "Last Archived WAL" for Postgres < 9.4
Closes #110 #113
2018-05-14 Gabriele Bartolini <gabriele.bartolini@2ndQuadrant.it>
Fix links syntax for Markdown in documentation
Add 2ndQuadrant public repositories info
Prepared release notes for 2.4 with tentative release date
2018-05-11 Gabriele Bartolini <gabriele.bartolini@2ndQuadrant.it>
Downgraded sync standby names messages to debug
Fixes #89
2018-05-10 Leonardo Cecchi <leonardo.cecchi@2ndquadrant.com>
Ensure CommandWrapper has an unicode output
Depending on the version of Python and on the usage, the CommandWrapper
was collecting the output of the wrapper command as a byte string or as
an unicode string.
This patch makes the `out` and the `err` properties of the
CommandWrapper be always an unicode string.
Closes #150
Closes #143
2018-05-09 Leonardo Cecchi <leonardo.cecchi@2ndquadrant.com>
Treat slot names as lowercase
PostgreSQL replication slot names can contain only lowercase letters,
numbers and the underscore character.
This patch makes Barman treating the slot names as lowercase and
reporting configuration errors when invalid characters (beside uppercase
letters) are used.
Closes: #170
2018-05-09 Marco Nenciarini <marco.nenciarini@2ndquadrant.it>
Improve usability of point-in-time recovery
Add a check to stop the recovery immediately if the recovery time is
before the backup end time.
If the timezone is not specified, the target recovery time is
interpreted according to the Barman server timezone. This is a
behavior change, because previously the specified time was simply
passed to PostgreSQL and thus interpreted according the PostgreSQL
settings.
2018-05-10 Leonardo Cecchi <leonardo.cecchi@2ndquadrant.com>
Fix target_action handling when not specified
2018-05-10 Marco Nenciarini <marco.nenciarini@2ndquadrant.it>
Make DataTransferFailure.from_command_error() more resilient
Closes: #86
2018-05-09 Marco Nenciarini <marco.nenciarini@2ndquadrant.it>
Remove workaround for gforcada/flake8-isort#9
Fix remote get_file_content method
Recover was always failing to pull .barman-recover.info because of a
typo in remote get_file_content method.
Closes: #151
2018-05-09 Leonardo Cecchi <leonardo.cecchi@2ndquadrant.com>
Ensure item_class is specified for resources to copy
Add an assertion to the RsyncCopyController item preventing the code to
create items without item_class set.
2018-05-08 Gabriele Bartolini <gabriele.bartolini@2ndQuadrant.it>
Suggest stricter `archive_command` in documentation
Add an example of stricter `archive_command` that checks that
it is executed only on a specific server. Suggested by
Florent Xicluna (https://github.com/florentx)
Closes #11
2018-05-08 Leonardo Cecchi <leonardo.cecchi@2ndquadrant.com>
Add '--standby-mode' option to barman recover
This option is only available for PostgreSQL older than 9.0 and will
make 'barman recover' generate the recovery.conf file even if the
get-wal and PITR are not active.
2018-01-12 Todd Seidelmann <seidelma@wharton.upenn.edu>
Add hook script for recovery
The list of new hook scripts is:
* pre_recovery_script
* pre_recovery_retry_script
* post_recovery_retry_script
* post_recovery_script
Closes GitHub #137
2018-05-08 Marco Nenciarini <marco.nenciarini@2ndquadrant.it>