-
Notifications
You must be signed in to change notification settings - Fork 343
/
Copy pathChangeLog
3204 lines (3085 loc) · 211 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
* Thu Sep 09 2021 Ken Gaillot <kgaillot@redhat.com> Pacemaker-2.1.1
- Changesets: 231
- Diff:
102 files changed, 4912 insertions(+), 3428 deletions(-)
- Features added since Pacemaker-2.1.0
+ enhanced support for OCF Resource Agent API 1.1 standard
+ ocf:pacemaker:attribute and ocf:pacemaker:ping agents now support 1.1
+ tools: crm_resource passes output format to agents so they will use it if
supported
+ tools: crm_resource --validate and --force-check options accept optional
check level to pass to agent
+ tools: crm_mon XML output includes stonith-timeout-ms and
priority-fencing-delay-ms cluster properties
+ pacemakerd: support --output-as/--output-to options including XML output
with interactive options such as --features
- Fixes since Pacemaker-2.1.0
+ pacemaker-attrd: avoid repeated unfencing of remote nodes when DC joined
cluster after remote was up
+ controller: ensure newly joining node learns the node names of non-DCs
+ controller: ensure lost node's transient attributes are cleared without DC
+ scheduler: avoid invalid transition when group member is unmanaged
(CLBZ#5423)
+ scheduler: don't schedule probes of unmanaged resources on pending nodes
+ executor: avoid crash after TLS connection errors
(regression introduced in 2.0.4)
+ fencing: avoid repeated attempts to get (nonexistent) meta-data for
watchdog device (regression introduced in 2.1.0)
+ fencing: select correct device when pcmk_host_check="dynamic-list" and
pcmk_host_map are both specified (CLBZ#5474)
+ tools: crm_attribute supports node attribute values starting with a '-'
again (regression introduced in 2.1.0)
+ tools: crm_attribute deprecated --get-value option does not require an
argument (regression introduced in 2.1.0)
+ tools: avoid crm_mon memory leaks when filtering by resource or node
(regressions introduced in 2.0.4 and 2.0.5)
+ tools: crm_mon should show active unmanaged resources on offline nodes
without requiring -r/--inactive
+ tools: better crm_resource error messages for unsupported resource types
+ tools: crm_simulate --show-failcounts includes all relevant information
+ tools: crm_mon should not show inactive group members without --inactive
+ tools: crm_mon XML output should show members of cloned groups
+ libcrmcommon: correctly handle case-sensitive XML IDs
- Public API changes since Pacemaker-2.1.0
+ libcrmcommon: add pcmk_section_e type
+ libcrmcommon: add pcmk_show_opt_e type
+ libcrmcommon: add pcmk_pacemakerd_api_shutdown()
+ libpe_status: deprecate enum pe_print_options
* Tue Jun 08 2021 Ken Gaillot <kgaillot@redhat.com> Pacemaker-2.1.0
- Changesets: 849
- Diff: 327 files changed, 22089 insertions(+), 12633 deletions(-)
- Features added since Pacemaker-2.0.5
+ support for OCF Resource Agent API 1.1 standard
- allow Promoted and Unpromoted role names in CIB (in addition to Master
and Slave, which are deprecated), and use new role names in output,
logs, and constraints created by crm_resource --ban
- advertise 1.1 support to agents, and provide notify_promoted_* and
notify_unpromoted_* environment variables to agents with notify actions
- support "reloadable" parameter attribute and "reload-agent" action in
agents that advertise 1.1 support
- support 1.1 standard in ocf:pacemaker:Dummy, ocf:pacemaker:remote, and
ocf:pacemaker:Stateful resource agents
- add "promoted-only" (in addition to "master-only", which is deprecated)
in crm_mon XML output for bans
+ support for noncritical resources
- colocation constraints accept an "influence" attribute that determines
whether dependent influences main resource's location (the default of
"true" preserves the previous behavior, while "false" makes the
dependent stop if it reaches its migration-threshold in failures rather
than cause both resources to move to another node)
- resources accept a "critical" meta-attribute that serves as default for
all colocation constraints involving the resource as the dependent, as
well as groups involving the resource
+ detail log uses millisecond-resolution timestamps when Pacemaker is built
with libqb 2.0 or later
+ CIB: deprecate the remove-after-stop cluster property, can_fail action
meta-attribute, and support for Upstart-based resources
+ controller: the PCMK_panic_action environment variable may be set to
sync-crash or sync-reboot to attempt to synchronize local
disks before crashing or rebooting, which can be helpful to
record cached log messages but runs the risk of the sync
hanging and leaving the host running after a critical error
+ tools: CIB_file="-" can be used to get the CIB from standard input
+ tools: crmadmin, crm_resource, crm_simulate, and crm_verify support
standard --output-as/--output-to options (including XML output,
intended for parsing by scripts and higher-level tools)
+ tools: crm_attribute accepts -p/--promotion option to operate on
promotion score (replacing crm_master, which is deprecated)
+ tools: crm_resource accepts --promoted option (replacing --master, which
is deprecated)
+ tools: crm_resource accepts --digests advanced option
+ tools: crm_simulate accepts --show-attrs and --show-failcounts options
- Build process changes since Pacemaker-2.0.5
+ Pacemaker requires newer versions of certain dependencies, including
Python 3.2 or later (support for Python 2 has been dropped), glib 2.32.0
or later, libqb 0.17.0 or later, GnuTLS 2.12.0 or later (to enable
Pacemaker Remote support), rpm 4.11.0 (if building RPMs), and a C library
that provides setenv() and unsetenv()
+ configure: --enable-legacy-links (which is deprecated) defaults to "no",
meaning that symbolic links will not be created for the
Pacemaker 1 daemon names
+ configure: --enable-compat-2.0 prevents certain output changes (most
significantly role names) to maintain compatibility with older
tools, scripts, and resource agents that rely on previous output
+ configure: --with-resource-stickiness-default sets a resource-stickiness
default in newly created CIBs
+ configure: --with-concurrent-fencing-default specifies default for
concurrent-fencing cluster property
+ configure: --with-sbd-sync-default specifies default for syncing start-up with sbd
+ configure: --with-ocfrapath specifies resource agent directories to search
+ configure: --with-ocfrainstalldir specifies where to install ocf:pacemaker agents
+ configure: --with-gnutls="no" explicitly disables support for
Pacemaker Remote and the remote-tls-port cluster property
+ configure: --with-acl has been removed (support for ACLs is always built)
+ configure: deprecated --with-pkgname, --with-pkg-name, --with-brand,
--enable-ansi, and --enable-no-stack options have been removed
+ environment variables file (typically /etc/sysconfig/pacemaker or
/etc/default/pacemaker) will be installed when "make install" is run
+ documentation has dependency on python3-sphinx instead of publican, and is
generated beneath doc/sphinx
- Fixes since Pacemaker-2.0.5
+ controller: always refresh agent meta-data after start, in case agent was
updated (regression introduced in 1.1.18)
+ tools: avoid crash when running crm_mon in daemonized mode with CGI output
(regression introduced in 2.0.3)
+ tools: correctly treat unspecified node as all nodes instead of local node
when attrd_updater --query or crm_resource --cleanup is run on a
Pacemaker Remote node (regressions introduced in 1.1.14 and 1.1.17)
+ pacemaker-attrd: avoid race condition where transient attributes for a
leaving node could be reinstated when the node rejoins,
potentially causing a node that was just rebooted to exit
the cluster immediately after rejoining
+ controller,scheduler: fix year 2038 issues affecting shutdowns,
remote node fencing, last-rc-change, and
ticket last-granted dates
+ controller: retry scheduler connection after failure, to avoid cluster
stopping on a node without stopping resources (clbz#5445)
+ fencing: avoid pending fencing entry getting "stuck" in history if
originating node was unreachable when result was received
+ fencing: retry getting agent meta-data if initial attempt fails
+ fencing: detect when devices have been removed from configuration
+ scheduler: constrain clone-min, clone-max, clone-node-max, promoted-max,
and promoted-node-max options to non-negative values
+ scheduler: constrain resource priorities and node-health-base to score range
+ scheduler: treat invalid duration fields in time-based rules as 0, not -1
+ scheduler: node attribute rule expressions with a value-source of "param"
or "meta" work when rsc or rsc-pattern with an inverted match
is given, as well as when rsc-pattern with a regular
match is given
+ scheduler: node attribute rule expressions with a value-source of "param"
work with a resource parameter that itself is determined by a
node attribute rule expression
+ scheduler: avoid remote connection shutdown hanging when connection
history for node hosting connection is not last in CIB status
+ scheduler: route monitor cancellations behind moving remote connections correctly
+ libcrmcommon: avoid potential integer overflow when adding seconds to times
+ tools: cibsecret syncs to remote nodes and guest nodes as well as
cluster nodes
+ tools: show other available cluster information in crm_mon even if
fence history is not available
+ tools: retry failed fencer and CIB connections in crm_mon
+ tools: crm_mon reports if Pacemaker is waiting for sbd at start-up
+ tools: respect rules when showing node attributes in crm_mon
+ tools: improve messages when crm_mon is run on disconnected remote node
+ tools: constrain node IDs to non-negative values for crm_node -N
+ tools: crm_node -l on restarted node works even when Corosync 2 is used
without node names specified in Corosync configuration
+ tools: fix issues in calculation of non-sensitive resource parameter
digests that made crm_simulate wrongly think configuration changed
- C API changes since Pacemaker-2.0.5
+ all: new PCMK_ALLOW_DEPRECATED constant controls API availability
+ libcrmcluster: deprecate crm_terminate_member()
+ libcrmcluster: deprecate crm_terminate_member_no_mainloop()
+ libcrmcommon: add CRMD_ACTION_RELOAD_AGENT string constant
+ libcrmcommon: add PCMK_OCF_MAJOR_VERSION string constant
+ libcrmcommon: add PCMK_OCF_MINOR_VERSION string constant
+ libcrmcommon: add PCMK_OCF_RUNNING_PROMOTED enum value
+ libcrmcommon: add PCMK_OCF_VERSION string constant
+ libcrmcommon: add PCMK_XE_PROMOTABLE_LEGACY string constant
+ libcrmcommon: add PCMK_XE_PROMOTED_MAX_LEGACY string constant
+ libcrmcommon: add PCMK_XE_PROMOTED_NODE_MAX_LEGACY string constant
+ libcrmcommon: add enum ocf_exitcode (moved from libcrmservice)
+ libcrmcommon: deprecate __builtin_expect()
+ libcrmcommon: deprecate __likely()
+ libcrmcommon: deprecate __unlikely()
+ libcrmcommon: deprecate crm_atoi()
+ libcrmcommon: deprecate crm_build_path()
+ libcrmcommon: deprecate crm_config_error global variable
+ libcrmcommon: deprecate crm_config_warning global variable
+ libcrmcommon: deprecate crm_ftoa()
+ libcrmcommon: deprecate crm_hash_table_size()
+ libcrmcommon: deprecate crm_itoa()
+ libcrmcommon: deprecate crm_itoa_stack()
+ libcrmcommon: deprecate crm_log_cli_init()
+ libcrmcommon: deprecate crm_parse_int()
+ libcrmcommon: deprecate crm_parse_ll()
+ libcrmcommon: deprecate crm_str_hash()
+ libcrmcommon: deprecate crm_str_table_dup()
+ libcrmcommon: deprecate crm_str_table_new()
+ libcrmcommon: deprecate crm_strcase_equal()
+ libcrmcommon: deprecate crm_strcase_hash()
+ libcrmcommon: deprecate crm_strcase_table_new()
+ libcrmcommon: deprecate crm_strip_trailing_newline()
+ libcrmcommon: deprecate crm_ttoa()
+ libcrmcommon: deprecate EOS constant
+ libcrmcommon: deprecate GListPtr type
+ libcrmcommon: deprecate g_str_hash_traditional()
+ libcrmcommon: deprecate MAX_IPC_DELAY constant
+ libcrmcommon: deprecate pcmk_format_named_time()
+ libcrmcommon: deprecate pcmk_format_nvpair()
+ libcrmcommon: deprecate pcmk_numeric_strcasecmp()
+ libcrmcommon: deprecate PCMK_OCF_DEGRADED_MASTER enum value
+ libcrmcommon: deprecate PCMK_OCF_FAILED_MASTER enum value
+ libcrmcommon: deprecate PCMK_OCF_RUNNING_MASTER enum value
+ libcrmcommon: deprecate pcmk_scan_nvpair()
+ libcrmcommon: deprecate XML_CIB_TAG_MASTER string constant
+ libcrmcommon: deprecate XML_RSC_ATTR_MASTER_MAX string constant
+ libcrmcommon: deprecate XML_RSC_ATTR_MASTER_NODEMAX string constant
+ libcrmservice: enum ocf_exitcode is obtained from libcrmcommon
+ libpacemaker: add pcmk_controller_status() function
+ libpacemaker: add pcmk_designated_controller() function
+ libpacemaker: add pcmk_list_nodes() function
+ libpacemaker: add pcmk_pacemakerd_status() function
+ libpacemaker: add pcmk_resource_digests() function
+ libpe_status: add parameter_cache member to pe_resource_t
+ libpe_status: add pe_order_promoted_implies_first enum value
+ libpe_status: add pe_rsc_params()
+ libpe_status: add RSC_ROLE_PROMOTED enum value
+ libpe_status: add RSC_ROLE_PROMOTED_LEGACY_S string constant
+ libpe_status: add RSC_ROLE_PROMOTED_S string constant
+ libpe_status: add RSC_ROLE_UNPROMOTED enum value
+ libpe_status: add RSC_ROLE_UNPROMOTED_LEGACY_S string constant
+ libpe_status: add RSC_ROLE_UNPROMOTED_S string constant
+ libpe_status: add priv member to pcmk_working_set_t, for Pacemaker use only
+ libpe_status: deprecate pe_order_implies_first_master enum value
+ libpe_status: deprecate pe_print_details enum value
+ libpe_status: deprecate pe_print_dev enum value
+ libpe_status: deprecate pe_print_html enum value
+ libpe_status: deprecate pe_print_log enum value
+ libpe_status: deprecate pe_print_max_details enum value
+ libpe_status: deprecate pe_print_ncurses enum value
+ libpe_status: deprecate pe_print_xml enum value
+ libpe_status: deprecate pe_resource_t parameters member
+ libpe_status: deprecate RSC_ROLE_MASTER enum value
+ libpe_status: deprecate RSC_ROLE_MASTER_S string constant
+ libpe_status: deprecate RSC_ROLE_SLAVE enum value
+ libpe_status: deprecate RSC_ROLE_SLAVE_S string constant
+ libpe_status: ignore ->parameter() resource object function's create argument
* Wed Dec 02 2020 Chris Lumens <clumens@redhat.com> Pacemaker-2.0.5
- Changesets: 534
- Diff: 286 files changed, 23133 insertions(+), 14626 deletions(-)
- Features added since Pacemaker-2.0.4
+ configuration: Add type="integer" to rule elements, allowing for
specifying 64-bit integers and specifying
double-precision floating point numbers when
type="number".
+ daemons: Recognize new OCF agent status codes 190 (degraded) and 191
(degraded master) to be treated as success but displayed as
errors.
+ sbd-integration: support SBD_SYNC_RESOURCE_STARTUP environment
variable to better synchronize Pacemaker start-up
and shutdown with SBD
+ scheduler: Add rule-based tests to op_defaults and rsc_defaults.
+ scheduler: Add on-fail=demote and no-quorum-policy=demote recovery
policies for promoted resources.
+ tools: Add --resource= to filter crm_mon output for a resource.
+ tools: Add -P to crmadmin to show pacemakerd status.
+ tools: In cibsecret, read value to set from input (or stdin) if not specified.
- Fixes for regressions introduced in Pacemaker-2.0.4
+ tools: Add the node name back to bundle instances in crm_mon.
+ tools: get stonith_admin --list-targets working again
- Fixes for regressions introduced in Pacemaker-2.0.3
+ tools: Fix adding HTTP headers to crm_mon in daemon mode.
+ tools: Show expected score of ping attributes in crm_mon XML output
- Fixes for regressions introduced in Pacemaker-2.0.1
+ scheduler: require pre-/post-start notifications correctly.
- Changes since Pacemaker-2.0.4
+ Prevent the bypassing of ACLs by direct IPC (CVE-2020-25654)
+ build: Fix a build issue on Fedora s390x.
+ build: Fix python2 vs. python3 packaging problems on openSUSE Tumbleweed
+ build: Update pkgconfig files for CI testing
+ controller: avoid recovery delay when shutdown locks expire
+ controller: Log correct timeout for timed-out stonith monitor
+ fencer: avoid infinite loop if device is removed during operation
+ fencer: avoid possible use-of-NULL when parsing metadata
+ libfencing: add `port` or `plug` parameter according to metadata on
`validate` if no `pcmk_host_argument` specified
+ libfencing: respect `pcmk_host_argument=none` on `validate`
+ scheduler: disallow on-fail=stop for stop operations
+ scheduler: don't schedule a dangling migration stop if one already occurred
+ scheduler: don't select instance to be promoted on a guest that can't run
+ scheduler: fix build when DEFAULT_CONCURRENT_FENCING_TRUE is set
+ scheduler: Remove pe_print_expanded_xml print option.
+ scheduler: Use pcmk_monitor_timeout as stonith start timeout
+ tools: Add management status to crm_mon's group output.
+ tools: Add "No active resources" to one case in crm_mon output.
+ tools: Allow tags and alerts in cibadmin --scope
+ tools: Avoid crm_node on Pacemaker Remote nodes failing when other
executor actions are occurring.
+ tools: Avoid pending fence actions getting stuck in crm_mon display
+ tools: "Connectivity is lost" may not be displayed even if the ping
communication is lost.
+ tools: Display stop-all-resources in crm_mon's cluster options.
+ tools: don't use pssh -q option in cibsecret unless supported
+ tools: Fix adding the http-equiv header to crm_mon in daemon mode.
+ tools: If a clone or group is disabled, display that in crm_mon as part
of the resource's header.
+ tools: crm_node -l and -p now work from Pacemaker Remote nodes
+ tools: Don't display crm_resource error messages twice.
+ tools: Print inactive resources by default with crm_mon xml output.
+ tools: properly detect local node name in cibsecret
+ tools: Revert some crm_resource string-related checks on variables
that aren't strings.
+ tools: Use bash in cibsecret
+ xml: Mark new crm_mon attributes as optional in schema
* Mon Jun 15 2020 Klaus Wenninger <klaus.wenninger@aon.at> Pacemaker-2.0.4
- Changesets: 515
- Diff: 269 files changed, 22560 insertions(+), 13726 deletions(-)
- Features added since Pacemaker-2.0.3
+ build: Add support for glib-based unit tests.
+ controller: add new feature 'shutdown-locks'
Optionally allow a gracefully shutdown node to have the resources
locked to it for a configurable time.
So that it can be restarted with exactly the same resources
running as before.
+ controller/fencing/scheduler: add new feature 'priority-fencing-delay'
Optionally derive the priority of a node from the resource-priorities
of the resources it is running.
In a fencing-race the node with the highest priority has a certain
advantage over the others as fencing requests for that node are
executed with an additional delay.
controlled via cluster option priority-fencing-delay (default = 0)
+ stonith_admin: add --delay option (default = 0) to support enforced
fencing delay
+ tools: Add --include= and --exclude= to crm_mon.
+ tools: Add --node= to filter crm_mon output for a node (or tag).
+ tools: Allow more fine grained filtering of fence-history in crm_mon.
+ tools: Allow crm_rule to check some date_specs.
- Fixes for regressions introduced in Pacemaker-2.0.0
+ tools: ensure that getting the local node name using crm_node
always works from Pacemaker Remote node command line
- Changes since Pacemaker-2.0.3
+ build: improve checking headers for C++ fitness
+ build: restore build on latest OpenSUSE
+ fencing: Report an error getting history in output instead of empty history
+ fencing: Improve parameter handling for RHCS-style fence-agents
- make parameter `action` shown as not required
- add `port` or `plug` parameter according to metadata
- `plug` parameter shown as non-required in the metadata
+ controller: clear leaving node's transient attributes even if there is no DC
+ controller: don't ack same request twice
+ iso8601: Fix crm_time_parse_offset() to parse offset with plus sign.
+ libcrmcommon, libpe: validate interval specs correctly
+ libcrmcommon: Add pcmk_str_is_infinity, pcmk_str_is_minus_infinity and
pcmk__unregister_formats.
+ libcrmcommon: Extend what pcmk__split_range can do.
+ libfencing: Export formatted output functions.
+ libpe_status: Add node list arg to output messages preventing weird
behavior + potential segfaults
+ libpe_status: Update the maint mode message for HTML output.
+ fencing, tools: Fix arguments to stonith-event.
+ scheduler: don't incorporate dependencies' colocations multiple times
+ scheduler: ensure attenuated scores still have some effect
+ scheduler: ignore colocation constraints with 0 score
+ scheduler: make sure cluster-wide maintenance-mode=true overrides
per-resource settings
+ scheduler: properly detect whether guest node is fenceable
+ scheduler: do not differentiate case where all the nodes have equal priority
+ tests: Add tests for pe_cron_range_satisfied.
+ tests: Add tests for the current behavior of pcmk__split_range.
+ tools, lib: Use standard pacemaker return codes in crm_rule.
+ tools: Correct stonith-event arguments in crm_mon.
+ tools: Fix man pages for crm_mon & crm_diff.
+ tools: Make crm_mon --interval understand more formats.
+ tools: Fix --html-title= in crm_mon.
+ tools: Print errors to stderr for crm_mon's legacy xml.
+ tools: use return codes consistently in stonith_admin
+ tools: Use glib for cmdline handling in crm_diff, crm_simulate & crm_error
+ xml: Add a new version of the tags schema.
+ based: populate cib_nodes when 'cibadmin -R -scope=configuration'
+ cibsecret: don't use pssh -q option unless supported
+ fencing: avoid infinite loop if device is removed during operation
+ fencing: avoid possible use-of-NULL when parsing metadata
+ fencing: Remove dangling 'pending' for completed DC fencing. (CLBZ#5401)
* Mon Nov 25 2019 Ken Gaillot <kgaillot@redhat.com> Pacemaker-2.0.3
- Changesets: 601
- Diff: 227 files changed, 17862 insertions(+), 10471 deletions(-)
- Features added since Pacemaker-2.0.2
+ controller: new 'fence-reaction' cluster option specifies whether local node
should 'stop' or 'panic' if notified of own fencing
+ controller: more cluster properties support ISO 8601 time specifications
+ controller: calculate cluster recheck interval dynamically when possible
+ Pacemaker Remote: allow file for environment variables when used in bundle
+ Pacemaker Remote: allow configurable listen address and TLS priorities
+ tools: crm_mon now supports standard --output-as/--output-to options
+ tools: crm_mon HTML output supports user-defined CSS stylesheet
+ tools: stonith_admin supports HTML output in addition to text and XML
+ tools: crm_simulate supports --repeat option to repeat profiling tests
+ tools: new pcmk_simtimes tool compares crm_simulate profiling output
+ agents: SysInfo supports K, T, and P units in addition to Kb and G
- Changes since Pacemaker-2.0.2
+ fencer: do not block concurrent fencing actions on a device
(regression since 2.0.2)
+ all: avoid Year 2038 issues
+ all: allow ISO 8601 strings of form "<date>T<time> <offset>"
+ rpm: pacemaker-cts package now explicitly requires pacemaker-cli
+ controller: set timeout on scheduler responses to avoid infinite wait
+ controller: confirm cancel of failed monitors, to avoid transition timeout
+ executor: let controller cancel monitors, to avoid transition timeout
+ executor: return error for stonith probes if stonith connection was lost
+ fencer: ensure concurrent fencing commands always get triggered to execute
+ fencer: fail pending actions and re-sync history after crash and restart
+ fencer: don't let command with long delay block other pending commands
+ fencer: allow functioning even if CIB updates arrive unceasingly
+ scheduler: wait for probe actions to complete to prevent unnecessary
restart/re-promote of dependent resources
+ scheduler: avoid invalid transition when guest node host is not fenceable
+ scheduler: properly detect dangling migrations, to avoid restart loop
+ scheduler: avoid scheduling actions on remote node that is shutting down
+ scheduler: avoid delay in recovery of failed remote connections
+ scheduler: clarify action failure log messages by including failure time
+ scheduler: calculate secure digests for unfencing, for replaying saved CIBs
+ libcrmcommon: avoid possible use-of-NULL when applying XML diffs
+ libcrmcommon: correctly apply XML diffs with multiple move/create changes
+ libcrmcommon: return error when applying XML diffs with unknown operations
+ tools: avoid duplicate lines between nodes in crm_simulate dot graph
+ tools: count disabled/blocked resources correctly in crm_mon/crm_simulate
+ tools: crm_mon --interval now accepts ISO 8601 and has correct help
+ tools: organize crm_mon text output with list headings, indents, bullets
+ tools: crm_report: fail if tar is not available
+ tools: crm_report: correct argument parsing
+ tools: crm_report: don't ignore log if unrelated file is too large
+ tools: stonith_admin --list-targets should show what fencer would use
+ agents: calculate #health_disk correctly in SysInfo
+ agents: handle run-as-user properly in ClusterMon
* Tue Jun 04 2019 Ken Gaillot <kgaillot@redhat.com> Pacemaker-2.0.2
- Changesets: 288
- Diff: 225 files changed, 28494 insertions(+), 24465 deletions(-)
- Features added since Pacemaker-2.0.1
+ tools: crm_resource --validate can get resource parameters from command line
+ tools: crm_resource --clear prints out any cleared constraints
+ tools: new crm_rule tool for checking rule expiration (experimental)
+ tools: stonith_admin supports XML output for machine parsing (experimental)
+ resources: new HealthIOWait resource agent for node health tracking
- Changes since Pacemaker-2.0.1
+ Important security fixes for CVE-2018-16878, CVE-2018-16877, CVE-2019-3885
+ build: crm_report bug report URL is now configurable at build time
+ build: private libpengine/libtransitioner libraries combined as libpacemaker
+ controller: avoid memory leak when duplicate monitor is scheduled
+ scheduler: respect order constraints when resources are being probed
+ scheduler: one group stop shouldn't make another required
+ libcrmcommon: handle out-of-range integers in configuration better
+ libcrmcommon: export logfile environment variable if using default
+ libcrmcommon: avoid segmentation fault when beginning formatted text list
+ libcrmservice: fix use-after-free memory error in alert handling
+ libstonithd: handle more than 64KB output from fence agents
* Mon Mar 4 2019 Ken Gaillot <kgaillot@redhat.com> Pacemaker-2.0.1
- Changesets: 592
- Diff: 173 files changed, 9268 insertions(+), 5344 deletions(-)
- Features added since Pacemaker-2.0.0
+ Pacemaker bundles support podman for container management
+ fencing: SBD may be used in a cluster that has guest nodes or bundles
+ fencing: fencing history is synchronized among all nodes
+ fencing: stonith_admin has option to clear fence history
+ tools: crm_mon can show fencing action failures and history
+ tools: crm_resource --clear supports new --expired option
+ Pacemaker Remote: new options to restrict TLS Diffie-Hellman prime length
- Changes since Pacemaker-2.0.0
+ scheduler: clone notifications could be scheduled for a stopped
Pacemaker Remote node and block all further cluster actions
(regression since 2.0.0)
+ libcrmcommon: correct behavior for completing interrupted live migrations
(regression since 2.0.0)
+ tools: crm_resource -C could fail to clean up all failures in one run
(regression since 2.0.0)
+ Pacemaker Remote: avoid unnecessary downtime when moving resource to
Pacemaker Remote node that fails to come up (regression since 1.1.18)
+ tools: restore stonith_admin ability to confirm unseen nodes are down
(regression since 1.1.12)
+ build: minor logging fixes to allow compatibility with GCC 9 -Werror
+ build: spec file now puts XML schemas in new pacemaker-schemas package
+ build: spec file now provides virtual pcmk-cluster-manager package
+ pacemaker-attrd: wait a short time before re-attempting failed writes
+ pacemaker-attrd: ignore attribute delays when writing after node (re-)join
+ pacemaker-attrd: start new election immediately if writer is lost
+ pacemaker-attrd: clear election dampening when the writer leaves
+ pacemaker-attrd: detect alert configuration changes when CIB is replaced
+ CIB: inform originator of CIB upgrade failure
+ controller: support resource agents that require node name even for meta-data
+ controller: don't record pending clone notifications in CIB
+ controller: DC detects completion of another node's shutdown more accurately
+ controller: shut down DC if unable to update node attributes
+ controller: handle corosync peer/join notifications for new node in any order
+ controller: clear election dampening when DC is lost
+ executor: cancel recurring monitors if fence device registration is lost
+ fencing: check for fence device update when resource defaults change
+ fencing: avoid pacemaker-fenced crash possible with stonith_admin misuse
+ fencing: limit fencing history to 500 entries
+ fencing: stonith_admin now complains if no action option is specified
+ pacemakerd: do not modify kernel.sysrq on Linux
+ scheduler: regression test compatibility with glib 2.59.0
+ scheduler: avoid unnecessary recovery of cleaned guest nodes and bundles
+ scheduler: ensure failures causing fencing not expired until fencing done
+ scheduler: start unique clone instances in numerical order
+ scheduler: convert unique clones to anonymous clones when not supported
+ scheduler: associate pending tasks with correct clone instance
+ scheduler: ensure bundle clone notifications are directed to correct host
+ scheduler: avoid improper bundle monitor rescheduling or fail count clearing
+ scheduler: honor asymmetric orderings even when restarting
+ scheduler: don't order non-DC shutdowns before DC fencing
+ ACLs: assume unprivileged ACL user if can't get user info
+ Pacemaker Remote: get Diffie-Hellman prime bit length from GnuTLS API
+ libcrmservice: cancel DBus call when cancelling systemd/upstart actions
+ libcrmservice: order systemd resources relative to pacemaker_remote
+ libpe_status: add public API constructor/destructor for pe_working_set_t
+ tools: fix crm_resource --clear when lifetime was used with ban/move
+ tools: fix crm_resource --move when lifetime was used with previous move
+ tools: make crm_mon CIB connection errors non-fatal if previously successful
+ tools: improve crm_mon messages when generating HTML output
+ tools: crm_mon cluster connection failure is now "critical" in nagios mode
+ tools: crm_mon listing of standby nodes shows if they have active resources
+ tools: crm_diff now ignores attribute ordering when comparing in CIB mode
+ tools: improve crm_report detection of logs, CIB directory, and processes
+ tools: crm_verify returns reliable exit codes
+ tools: crm_simulate resource history uses same name as live cluster would
* Fri Jul 6 2018 Ken Gaillot <kgaillot@redhat.com> Pacemaker-2.0.0
- Changesets: 885
- Diff: 549 files changed, 89865 insertions(+), 95100 deletions(-)
- Deprecated features removed since Pacemaker-1.1.18
+ All of these have newer forms, and the cluster will automatically convert
most older syntax usage in saved configurations to newer syntax as needed
+ Drop support for heartbeat and corosync 1 (whether using CMAN or plugin)
+ Drop support for rolling upgrades from Pacemaker versions older than 1.1.11
+ Drop support for built-in SMTP and SNMP in crm_mon
+ Drop support for legacy option aliases including default-action-timeout,
default-resource-stickiness, resource-failure-stickiness,
default-resource-failure-stickiness, is-managed-default,
and all names using underbar instead of dash
+ Drop support for "requires" operation meta-attribute
+ Drop support for the pcmk_*_cmd, pcmk_arg_map, and pcmk_poweroff_action
fence resource parameters
+ Drop support for deprecated command-line options to crmadmin,
crm_attribute, crm_resource, crm_verify, crm_mon, and stonith_admin
+ Drop support for operation meta-attributes in instance_attributes
+ Drop support for PCMK_legacy and LRMD_MAX_CHILDREN environment variables
+ Drop support for undocumented resource isolation feature
+ Drop support for processing very old saved CIB files (including
pre-0.6.0 start failure entries, pre-0.6.5 operation history entries,
pre-0.7 transition keys, pre-1.1.4 migration history entries,
pre-1.0 XML configuration schemas, pre-1.1.6 ticket state entries, and
pre-1.1.7 failed recurring operation history entries)
- Features added since Pacemaker-1.1.18
+ The pacemaker daemons have been renamed to make logs more intuitive
and easier to search
+ The default location of the Pacemaker detail log is now
/var/log/pacemaker/pacemaker.log (instead of being directly in /var/log),
and Pacemaker will no longer use Corosync's logging preferences;
configure script options are available to change default log locations
+ The detail log's message format has been improved
+ The master XML tag is deprecated in favor of using a standard clone tag
with a new "promotable" meta-attribute set to true, and the "master-max"
and "master-node-max" master meta-attributes are deprecated in favor of
new "promoted-max" and "promoted-node-max" clone meta-attributes;
documentation now refers to these as promotable clones rather than
master/slave, stateful, or multistate clones, and refers to
promotion scores instead of master scores
+ Administration-related documentation has been moved from the
"Pacemaker Explained" document to a new "Pacemaker Administration" document
+ record-pending now defaults to TRUE (pending actions are shown in status)
+ All Python code in Pacemaker now supports both Python 2.7 and Python 3
+ The command-line tools now return consistent, well-defined exit codes;
crm_error has an --exit option to list these
+ Pacemaker's systemd unit files now remove systemd's spawned process limit
+ mount, path, and timer systemd unit types are now supported as resources
+ A negative stonith-watchdog-timeout now tells the cluster to automatically
calculate the value based on SBD_WATCHDOG_TIMEOUT (which was the behavior
of 0 before 1.1.15; 0 retains its post-1.1.15 behavior of disabling use of
the watchdog as a fencing device)
+ The undocumented restart-type and role_after_failure
resource meta-attributes are now deprecated
+ Regression testing code has been consolidated and overhauled
(the most obvious change is new command names)
+ build: create /etc/pacemaker directory when installing
+ build: improved portability to BSD-based platforms
+ tools: crm_resource --cleanup now cleans only failed operation history;
crm_resource --reprobe retains the previous behavior of cleaning all
operation history
+ tools: add stonith_admin --validate option to check device configuration
+ tools: crm_node is now in the pacemaker-cli package (instead of pacemaker)
+ alerts: add epoch and usec alert variables for improved SNMP alerts
+ controller: deprecate "crmd-*" cluster options in favor of new names
+ scheduler: deprecate stonith-action value "poweroff" (use "off" instead)
+ scheduler: deprecate require-all in rsc_order
+ libcrmcluster: prefer corosync name over ring0_addr
+ xml: allow local "kind" in resource_set within rsc_order
- Changes since Pacemaker-1.1.18
+ Restore systemd unit dependency on DBus (regression in 1.1.17)
+ CIB: handle mixed-case node names when modifying attributes (regression in 1.1.17)
+ scheduler: avoid crash when logging ignored failure timeout (regression in 1.1.17)
+ attrd: ensure node name is broadcast at start-up (regression in 1.1.18)
+ scheduler: unfence before probing or starting fence devices (regression in 1.1.18)
+ tools: treat INFINITY correctly in crm_failcount (regression in 1.1.17)
+ tools: show master scores with crm_simulate -sL (regression in 1.1.18)
+ tools: crm_master did not work without explicit --lifetime (regression in 1.1.18)
+ Numerous changes to public C API of libraries
+ Choose current node correctly when a resource is multiply active
+ controller,executor,tools: avoid minor memory leaks
+ CIB: don't use empty CIB if real CIB has bad permissions
+ controller: avoid double free after ACL rejection of resource deletion
+ controller: don't record pending clone notifications in CIB
+ controller: always write faked failures to CIB whenever possible
+ controller: quorum gain without a node join should cause new transition
+ executor: handle systemd actions correctly when used with "service:"
+ executor: find absolute LSB paths when used with "service:"
+ scheduler: handle "requires" of "quorum" or "nothing" properly
+ scheduler: ensure orphaned recurring monitors have interval set
+ scheduler: handle pending migrations correctly when record-pending is true
+ scheduler: don't time out failures that cause fencing until fencing completes
+ scheduler: handle globally-unique bundle children correctly
+ scheduler: use correct default timeout for monitors
+ scheduler: "symmetrical" defaults to "false" for serialize orders
+ scheduler: avoid potential use-of-NULL when unpacking ordering constraint
+ scheduler: properly cancel recurring monitors
+ scheduler: do not schedule notifications for unrunnable actions
+ scheduler: ensure stops occur after stopped remote connections come back up
+ scheduler: consider only allowed nodes when ordering start after all recovery
+ scheduler: avoid graph loop from ordering bundle child stops/demotes after container fencing
+ scheduler: remote connection resources are safe to require only quorum
+ scheduler: correctly observe colocation with bundles in Master role
+ scheduler: restart resource after failed demote when appropriate
+ Pacemaker Remote: always use most recent remote proxy
+ tools: crm_node now gets correct node name and ID on Pacemaker Remote nodes
+ tools: correctly check crm_resource --move for master role
+ tools: cibsecret --help/--version doesn't require cluster to be running
+ tools: ignore attribute placement when crm_diff compares in cib mode
+ tools: prevent notify actions from causing crm_resource --wait to hang
+ resources: drop broken configdir parameter from ocf:pacemaker:controld
- For further details, see:
https://wiki.clusterlabs.org/wiki/Pacemaker_2.0_Changes
* Tue Nov 14 2017 Ken Gaillot <kgaillot@redhat.com> Pacemaker-1.1.18
- Update source tarball to revision: a9fbd15
- Changesets: 644
- Diff: 167 files changed, 9753 insertions(+), 5596 deletions(-)
- Features added since Pacemaker-1.1.17
+ warnings are now logged when using legacy syntax to be removed in 2.0
+ agents: ifspeed agent is now installed when building
+ agents: ifspeed agent can optionally detect interface name from IP address
+ alerts: support alert filters
+ alerts: experimental support for alerts for node attribute changes
+ crmd,pengine: support unfencing of remote nodes
+ pengine: bundles now support all constraint types
+ pengine: bundles now support rkt containers
+ pengine: bundles support new container-attribute-target parameter
+ pengine,tools: logs and crm_mon show why resources changed state
+ stonith-ng: support new fencing resource parameter pcmk_delay_base
+ tools: new crm_resource option --why explains why resources are stopped
- Changes since Pacemaker-1.1.17
+ many documentation improvements
+ agents: ifspeed properly calculates speed of hfi1 interfaces
+ agents: ClusterMon now interprets "update" less than 1000 as seconds
+ attrd: don't lose attributes set between attrd start-up and cluster join
+ attrd: fix multiple minor memory leaks
+ crmd: correctly record that unfencing is complete
+ crmd: error more quickly if remote start fails due to missing key
+ lrmd: remote resource operations return immediate error if key setup fails
+ lrmd: allow pre-1.1.15 cluster nodes to connect to current Pacemaker Remote
+ pengine: guest nodes are now probed like other nodes
+ pengine: probe remote nodes for guest node resources
+ pengine: do not probe guest/bundle connections until guest/bundle is active
+ pengine: allow resources to stop prior to probes completing
+ pengine: bundles wait only for other containers on same node to be probed
+ pengine: have bundles log to stderr so 'docker logs'/'journalctl -M' works
+ pengine: only pass requests for promote/demote flags onto the bundle's child
+ pengine: do not map ports into Docker container when net=host is specified
+ pengine: allow resources inside bundles to receive clone notifications
+ pengine: default to non-interleaved bundle ordering for safety
+ pengine: ensure bundle nodes and child resources are correctly cleaned up
+ pengine: prevent graph loops when fencing the host underneath a bundle
+ pengine: fix multiple memory issues (use-after-free, use-of-NULL) with bundles
+ pengine: resources in bundles respect failcounts
+ pengine: ensure nested container connections run on the same host
+ pengine: ensure unrecoverable remote nodes are fenced even with no resources
+ pengine: handle resource migrating behind a migrating remote connection
+ pengine: don't prefer to keep unique instances on same node
+ pengine: exclude exclusive resources and nodes from symmetric default score
+ pengine: if ignoring failure, also ignore migration-threshold
+ pengine: restore the ability to send the transition graph via the disk if it gets too big
+ pengine: validate no-quorum-policy=suicide correctly
+ pengine: avoid crash when alerts section has comments
+ pengine: detect permanent master scores at start-up
+ pengine: do not re-add a node's default score for each location constraint
+ pengine: make sure calculated resource scores are consistent on different architectures
+ pengine: retrigger unfencing for changed device parameters only when necessary
+ pengine: don't schedule reload and restart in same transition (CLBZ#5309, regression introduced in 1.1.15)
+ stonith-ng: make fencing-device reappear properly after reenabling
+ stonith-ng: include pcmk_on_action in meta-data so 'on' can be overridden
+ tools: allow crm_report to work with no log files specified
+ tools: fix use-after-free in crm_diff introduced in 1.1.17
+ tools: allow crm_resource to operate on anonymous clones in unknown states
+ tools: crm_resource --cleanup on appropriate nodes if we don't know state of resource
+ tools: prevent disconnection from crmd during crm_resource --cleanup
+ tools: improve messages for crm_resource --force-* options
+ tools: crm_mon: avoid infinite process spawning if -E script can't be run
+ tools: crm_mon: don't show previous exit-reason for failed action with none
+ libcrmservice: list systemd unit files, not only active units (CLBZ#5299)
+ libcrmservice: parse long description correctly for LSB meta-data
* Thu Jul 06 2017 Ken Gaillot <kgaillot@redhat.com> Pacemaker-1.1.17
- Update source tarball to revision: 301bc44
- Changesets: 539
- Diff: 177 files changed, 11525 insertions(+), 5036 deletions(-)
- Features added since Pacemaker-1.1.16
+ New "bundle" resource type for Docker container use cases (experimental)
+ New "PCMK_node_start_state" environment variable to start node in standby
+ New "value-source" rule expression attribute in location constraints to
compare a node attribute against a resource parameter
+ New "stonith-max-attempts" cluster option to specify how many times
fencing can fail for a target before the cluster will no longer
immediately re-attempt it (previously hard-coded at 10)
+ New "cluster-ipc-limit" cluster option to avoid IPC client eviction in
large clusters
+ Failures are now tracked per operation type, as well as per node and
resource (the "fail-count" and "last-failure" node attribute names now end
in "#OPERATION_INTERVAL")
+ attrd: Pacemaker Remote node attributes and regular expressions are now
supported on legacy cluster stacks (heartbeat, CMAN, and corosync plugin)
+ tools: New "crm_resource --validate" option
+ tools: New "stonith_admin --list-targets" option
+ tools: New "crm_attribute --pattern" option to match a regular expression
+ tools: "crm_resource --cleanup" and "crm_failcount" can now take
--operation and --interval options to operate on a single operation type
- Changes since Pacemaker-1.1.16
+ Fix multiple memory issues (leaks, use-after-free) in libraries
+ pengine: unmanaging a guest node resource puts guest in maintenance mode
+ cib: broadcasts of cib changes should always pass ACL checks
+ crmd,libcrmcommon: update throttling when CPUs are hot-plugged
+ crmd: abort transition whenever we lose quorum
+ crmd: avoid attribute write-out on join when atomic attrd is used
+ crmd: check for too many stonith failures only when aborting for that reason
+ crmd: correctly clear failure counts only for a specified node
+ crmd: don't fence old DC if it's shutting down as soon-to-be DC joins
+ crmd: forget stonith failures when forgetting node
+ crmd: all nodes should track stonith failure counts in case they become DC
+ crmd: update cache status for guest node whose host is fenced
+ dbus: prevent lrmd from hanging on dbus calls
+ fencing: detect newly added constraints for stonith devices
+ pengine: order remote actions after connection recovery
(regression introduced in 1.1.15)
+ pengine: quicker recovery from failed demote
+ libcib: determine remote nodes correctly from node status entries
+ libcrmcommon: avoid evicting IPC client if messages spike briefly
+ libcrmcommon: better XML comment handling prevents infinite election loop
+ libcrmcommon: set month correctly in date/time string sent to alert agents
+ libfencing,fencing: intelligently remap "action" wrongly specified in config
+ libservices: ensure completed ops aren't on blocked ops list
+ libservices: properly detect and cancel in-flight systemd/upstart ops
+ libservices: properly watch writable DBus handles
+ libservices: systemd service that is reloading doesn't cause monitor failure
+ pacemaker_remoted: allow graceful shutdown while unmanaged
+ pengine,libpe_status: don't clear same fail-count twice
+ pengine: consider guest node unclean if its host is unclean
+ pengine: do not re-add a node's default score for each location constraint
+ pengine: avoid restarting services when recovering remote connection
+ pengine: better guest node recovery when host fails
+ pengine: guest node fencing doesn't require stonith enabled
+ pengine: allow probes of guest node connection resources
+ pengine: properly handle allow-migrate explicitly set for remote connection
+ pengine: fence failed remote nodes even if no resources can run on them
+ tools: resource agents will now get the correct node name on
Pacemaker Remote nodes when using crm_node and crm_attribute
+ tools: avoid grep crashes in crm_report when looking for system logs
+ tools: crm_resource -C now clears last-failure as well as fail-count
+ tools: implement crm_failcount command-line options correctly
+ tools: properly ignore version with crm_diff --no-version
* Wed Nov 30 2016 Ken Gaillot <kgaillot@redhat.com> Pacemaker-1.1.16
- Update source tarball to revision: 76876b3
- Changesets: 382
- Diff: 145 files changed, 7200 insertions(+), 5621 deletions(-)
- Features added since Pacemaker-1.1.15
+ Location constraints may use rsc-pattern, with submatches expanded
+ node-health-base available with node-health-strategy=progressive
+ new Pacemaker Development document for working on pacemaker code base
+ new PCMK_panic_action variable allows crash instead of reboot on panic
+ resources: add resource agent for managing a node attribute
+ systemd: include socket units when listing all systemd agents
- Changes since Pacemaker-1.1.15
+ Important security fix for CVE-2016-7035
+ Logging is now synchronous when blackboxes are enabled
+ All python code except CTS is now compatible with python 2.6+ and 3.2+
+ build: take advantage of compiler features for security and performance
+ build: update SuSE spec modifications for recent spec changes
+ build: avoid watchdog reboot when upgrading pacemaker_remote with sbd
+ build: numerous other improvements in environment detection, etc.
+ cib: fix infinite loop when no schema validates
+ crmd: cl#5185 - record pending operations in CIB before they are performed
+ crmd: don't abort transitions for CIB comment changes
+ crmd: resend shutdown request if DC loses original request
+ documentation: install improved README in doc instead of now-removed AUTHORS
+ documentation: clarify licensing and provide copy of all licenses
+ documentation: document various features and upgrades better
+ fence_legacy: use "list" action when searching cluster-glue agents
+ libcib: don't stop sending alerts after releasing DC role
+ libcrmcommon: properly handle XML comments when comparing v2 patchset diffs
+ libcrmcommon: report errors consistently when waiting for data on connection
+ libpengine: avoid potential use-of-NULL
+ libservices: use DBusError API properly
+ pacemaker_remote: init script stop should always return 0
+ pacemaker_remote: allow remote clients to timeout/reconnect
+ pacemaker_remote: correctly calculate remaining timeout when receiving messages
+ pengine: avoid transition loop for start-then-stop + unfencing
+ pengine: correctly update dependent actions of un-runnable clones
+ pengine: do not fence a node in maintenance mode if it shuts down cleanly
+ pengine: set OCF_RESKEY_CRM_meta_notify_active_* for multistate resources
+ resources: ping - avoid temporary files for fping check, support FreeBSD
+ resources: SysInfo - better support for FreeBSD
+ resources: variable name typo in docker-wrapper
+ systemd: order pacemaker after time-sync target
+ tools: correct attrd_updater help and error messages when using CMAN
+ tools: crm_standby --version/--help should work without cluster running
+ tools: make crm_report sanitize CIB before generating readable version
+ tools: display pending resource state by default when available
+ tools: avoid matching other process with same PID in ClusterMon
* Tue Jun 21 2016 Ken Gaillot <kgaillot@redhat.com> Pacemaker-1.1.15
- Update source tarball to revision: 32fa6a5
- Changesets: 533
- Diff: 219 files changed, 6659 insertions(+), 3989 deletions(-)
- Features added since Pacemaker-1.1.14
+ Event-driven alerts allow scripts to be called after significant events
+ build: Some files moved from pacemaker package to pacemaker-cli for cleaner pacemaker-remote dependencies
+ build: ./configure --with-configdir argument for /etc/sysconfig, /etc/default, etc.
+ fencing: Simplify watchdog integration
+ fencing: Support concurrent fencing actions via new pcmk_action_limit option
+ remote: pacemaker_remote may be stopped without disabling resource first
+ remote: Report integration status of Pacemaker Remote nodes in CIB node_state
+ tools: crm_mon now reports why resources are not starting
+ tools: crm_report now obscures passwords in logfiles
+ tools: attrd_updater --update-both/--update-delay options allow changing dampening value
+ tools: allow stonith_admin -H '*' to show history for all nodes
- Changes since Pacemaker-1.1.14
+ Fix multiple memory issues (leaks, use-after-free) in daemons, libraries and tools
+ Make various log messages more user-friendly
+ Improve FreeBSD and Hurd support
+ attrd: Prevent possible segfault on exit
+ cib: Fix regression to restore support for compressed CIB larger than 1MB
+ common: fix regression in 1.1.14 that made have-watchdog always true
+ controld: handle DLM "wait fencing" state better
+ crmd: Fix regression so that fenced unseen nodes do not remain unclean
+ crmd: Take start-delay into account when calculation action timeouts
+ crmd: Avoid timeout on older peers when cancelling a resource operation
+ fencing: Allow fencing by node ID (e.g. by DLM) even if node left cluster
+ lrmd: Fix potential issues when cluster is stopped via systemd shutdown
+ pacemakerd: Properly respawn stonithd if it fails
+ pengine: Fix regression with multiple monitor levels that could ignore failure
+ pengine: Correctly set OCF_RESKEY_CRM_meta_timeout when start-delay is configured
+ pengine: Properly order actions for master/slave resources in anti-colocations
+ pengine: Respect asymmetrical ordering when trying to move resources
+ pengine: Properly order stop actions on guest node relative to host stonith
+ pengine: Correctly block actions dependent on unrunnable clones
+ remote: Allow remote nodes to have node attributes even with legacy attrd
+ remote: Recover from remote node fencing more quickly
+ remote: Place resources on newly rejoined remote nodes more quickly
+ resources: ping agent can now use fping6 for IPv6 hosts
+ resources: SysInfo now resets #health_disk to green when there's sufficient free disk
+ tools: crm_report is now more efficient and handles Pacemaker Remote nodes better
+ tools: Prevent crm_resource segfault when --resource is not supplied with --restart
+ tools: crm_shadow --display option now works
+ tools: crm_resource --restart handles groups, target-roles and moving resources better
* Thu Jan 14 2016 Ken Gaillot <kgaillot@redhat.com> Pacemaker-1.1.14
- Update source tarball to revision: f0b585a
- Changesets: 724
- Diff: 179 files changed, 13142 insertions(+), 7695 deletions(-)
- Features added since Pacemaker-1.1.13
+ crm_resource: Indicate common reasons why a resource may not start after a cleanup
+ crm_resource: New --force-promote and --force-demote options for debugging
+ fencing: Support targeting fencing topologies by node name pattern or node attribute
+ fencing: Remap sequential topology reboots to all-off-then-all-on
+ pengine: Allow resources to start and stop as soon as their state is known on all nodes
+ pengine: Include a list of all and available nodes with clone notifications
+ pengine: Addition of the clone resource clone-min metadata option
+ pengine: Support of multiple-active=block for resource groups
+ remote: Resources that create guest nodes can be included in a group resource
+ remote: reconnect_interval option for remote nodes to delay reconnect after fence
- Changes since Pacemaker-1.1.13
+ improve support for building on FreeBSD and Debian
+ fix multiple memory issues (leaks, use-after-free, double free, use-of-NULL) in components and tools
+ cib: Do not terminate due to badly behaving clients
+ cman: handle corosync-invented node names of the form Node{id} for peers not in its node list
+ controld: replace bashism
+ crm_node: Display node state with -l and quorum status with -q, if available
+ crmd: resources would sometimes be restarted when only non-unique parameters changed
+ crmd: fence remote node after connection failure only once
+ crmd: handle resources named the same as cluster nodes
+ crmd: Pre-emptively fail in-flight actions when lrmd connections fail
+ crmd: Record actions in the CIB as failed if we cannot execute them
+ crm_report: Enable password sanitizing by default
+ crm_report: Allow log file discovery to be disabled
+ crm_resource: Allow the resource configuration to be modified for --force-{check,start,..} calls
+ crm_resource: Compensate for -C and -p being called with the child resource for clones
+ crm_resource: Correctly clean up all children for anonymous cloned groups
+ crm_resource: Correctly clean up failcounts for inactive anonymous clones
+ crm_resource: Correctly observe --force when deleting and updating attributes
+ crm_shadow: Fix "crm_shadow --diff"
+ crm_simulate: Prevent segfault on arches with 64bit time_t
+ fencing: ensure "required"/"automatic" only apply to "on" actions
+ fencing: Return a provider for the internal fencing agent "#watchdog" instead of logging an error
+ fencing: ignore stderr output of fence agents (often used for debug messages)
+ fencing: fix issue where deleting a fence device attribute can delete the device
+ libcib: potential user input overflow
+ libcluster: overhaul peer cache management
+ log: make syslog less noisy
+ log: fix various misspellings in log messages
+ lrmd: cancel currently pending STONITH op if stonithd connection is lost
+ lrmd: Finalize all pending and recurring operations when cleaning up a resource
+ pengine: Bug cl#5247 - Imply resources running on a container are stopped when the container is stopped
+ pengine: cl#5235 - Prevent graph loops that can be introduced by "load_stopped -> migrate_to" ordering
+ pengine: Correctly bypass fencing for resources that do not require it
+ pengine: do not timeout remote node recurring monitor op failure until after fencing
+ pengine: Ensure recurring monitor operations are cancelled when clone instances are de-allocated
+ pengine: fixes segfault in pengine when fencing remote node
+ pengine: properly handle blocked clone actions
+ pengine: ensure failed actions that occurred in node shutdown are displayed
+ remote: Correctly display the usage of the ocf:pacemaker:remote resource agent
+ remote: do not fail operations because of a migration
+ remote: enable reloads for select remote connection options
+ resources: allow for top output with or without percent sign in HealthCPU
+ resources: Prevent an error message on stopping "Dummy" resource
+ systemd: Prevent segfault when logging failed operations
+ systemd: Reconnect to System DBus if the connection is closed
+ systemd: set systemd resources' timeout values higher than systemd's own default
+ tools: Do not send command lines to syslog
+ tools: update SNMP MIB
+ upstart: Ensure pending structs are correctly unreferenced
* Wed Jun 24 2015 Andrew Beekhof <andrew@beekhof.net> Pacemaker-1.1.13
- Update source tarball to revision: 2a1847e
- Changesets: 750
- Diff: 156 files changed, 11323 insertions(+), 3725 deletions(-)
- Features added since Pacemaker-1.1.12
+ Allow fail-counts to be removed en-mass when the new attrd is in operation
+ attrd supports private attributes (not written to CIB)
+ crmd: Ensure a watchdog device is in use if stonith-watchdog-timeout is configured
+ crmd: If configured, trigger the watchdog immediately if we lose quorum and no-quorum-policy=suicide
+ crm_diff: Support generating a difference without versions details if --no-version/-u is supplied
+ crm_resource: Implement an intelligent restart capability
+ Fencing: Advertise the watchdog device for fencing operations
+ Fencing: Allow the cluster to recover resources if the watchdog is in use