diff --git a/_servicedata b/_servicedata
index bbe1bc3..99746fb 100644
--- a/_servicedata
+++ b/_servicedata
@@ -1,6 +1,6 @@
git://github.com/ClusterLabs/pacemaker.git
- b49c0d87ced772b60b3c44b810ba1da59f11fa7d
+ 934021cb840f53b0b5de62b45a13baebb2ad6feb
\ No newline at end of file
diff --git a/bug-728579_pacemaker-stonith-dev-id.patch b/bug-728579_pacemaker-stonith-dev-id.patch
index a941797..cb91fd0 100644
--- a/bug-728579_pacemaker-stonith-dev-id.patch
+++ b/bug-728579_pacemaker-stonith-dev-id.patch
@@ -4,11 +4,11 @@ Date: Thu Sep 6 15:14:58 2012 +0800
Medium: stonith: Expose IDs of stonith resources to stonith agents through "$CRM_meta_st_device_id" environment variable
-Index: pacemaker-2.0.2+20190614.9f18a420a/daemons/fenced/fenced_commands.c
+Index: pacemaker-2.0.2+20191014.81d51216d/daemons/fenced/fenced_commands.c
===================================================================
---- pacemaker-2.0.2+20190614.9f18a420a.orig/daemons/fenced/fenced_commands.c
-+++ pacemaker-2.0.2+20190614.9f18a420a/daemons/fenced/fenced_commands.c
-@@ -878,6 +878,7 @@ build_device_from_xml(xmlNode * msg)
+--- pacemaker-2.0.2+20191014.81d51216d.orig/daemons/fenced/fenced_commands.c
++++ pacemaker-2.0.2+20191014.81d51216d/daemons/fenced/fenced_commands.c
+@@ -905,6 +905,7 @@ build_device_from_xml(xmlNode * msg)
device->id, device->on_target_actions);
}
@@ -16,11 +16,11 @@ Index: pacemaker-2.0.2+20190614.9f18a420a/daemons/fenced/fenced_commands.c
device->work = mainloop_add_trigger(G_PRIORITY_HIGH, stonith_device_dispatch, device);
/* TODO: Hook up priority */
-Index: pacemaker-2.0.2+20190614.9f18a420a/lib/fencing/st_client.c
+Index: pacemaker-2.0.2+20191014.81d51216d/lib/fencing/st_client.c
===================================================================
---- pacemaker-2.0.2+20190614.9f18a420a.orig/lib/fencing/st_client.c
-+++ pacemaker-2.0.2+20190614.9f18a420a/lib/fencing/st_client.c
-@@ -40,6 +40,7 @@ struct stonith_action_s {
+--- pacemaker-2.0.2+20191014.81d51216d.orig/lib/fencing/st_client.c
++++ pacemaker-2.0.2+20191014.81d51216d/lib/fencing/st_client.c
+@@ -42,6 +42,7 @@ struct stonith_action_s {
char *action;
char *victim;
GHashTable *args;
@@ -28,7 +28,7 @@ Index: pacemaker-2.0.2+20190614.9f18a420a/lib/fencing/st_client.c
int timeout;
int async;
void *userdata;
-@@ -561,6 +562,7 @@ stonith__destroy_action(stonith_action_t
+@@ -600,6 +601,7 @@ stonith__destroy_action(stonith_action_t
}
free(action->output);
free(action->error);
@@ -36,7 +36,7 @@ Index: pacemaker-2.0.2+20190614.9f18a420a/lib/fencing/st_client.c
free(action);
}
}
-@@ -630,6 +632,8 @@ stonith_action_create(const char *agent,
+@@ -669,6 +671,8 @@ stonith_action_create(const char *agent,
if (device_args) {
char buffer[512];
const char *value = NULL;
@@ -45,7 +45,7 @@ Index: pacemaker-2.0.2+20190614.9f18a420a/lib/fencing/st_client.c
snprintf(buffer, sizeof(buffer), "pcmk_%s_retries", _action);
value = g_hash_table_lookup(device_args, buffer);
-@@ -637,6 +641,11 @@ stonith_action_create(const char *agent,
+@@ -676,6 +680,11 @@ stonith_action_create(const char *agent,
if (value) {
action->max_retries = atoi(value);
}
@@ -57,9 +57,9 @@ Index: pacemaker-2.0.2+20190614.9f18a420a/lib/fencing/st_client.c
}
return action;
-@@ -773,6 +782,10 @@ internal_stonith_action_execute(stonith_
- svc_action->params = action->args;
+@@ -813,6 +822,10 @@ internal_stonith_action_execute(stonith_
svc_action->cb_data = (void *) action;
+ set_bit(svc_action->flags, SVC_ACTION_NON_BLOCKED);
+ if (action->dev_id) {
+ svc_action->rsc = strdup(action->dev_id);
@@ -68,10 +68,10 @@ Index: pacemaker-2.0.2+20190614.9f18a420a/lib/fencing/st_client.c
/* keep retries from executing out of control and free previous results */
if (is_retry) {
free(action->output);
-Index: pacemaker-2.0.2+20190614.9f18a420a/lib/services/services_linux.c
+Index: pacemaker-2.0.2+20191014.81d51216d/lib/services/services_linux.c
===================================================================
---- pacemaker-2.0.2+20190614.9f18a420a.orig/lib/services/services_linux.c
-+++ pacemaker-2.0.2+20190614.9f18a420a/lib/services/services_linux.c
+--- pacemaker-2.0.2+20191014.81d51216d.orig/lib/services/services_linux.c
++++ pacemaker-2.0.2+20191014.81d51216d/lib/services/services_linux.c
@@ -30,6 +30,9 @@
#include "crm/common/mainloop.h"
#include "crm/services.h"
diff --git a/bug-806256_pacemaker-log-level-notice.patch b/bug-806256_pacemaker-log-level-notice.patch
index e19528d..2936a57 100644
--- a/bug-806256_pacemaker-log-level-notice.patch
+++ b/bug-806256_pacemaker-log-level-notice.patch
@@ -4,11 +4,11 @@ Date: Thu Mar 14 09:41:53 2013 +0800
Log: Change some messages to notice level (bnc#806256)
-Index: pacemaker-1.1.18+20180430.c0d7ba798/daemons/controld/controld_membership.c
+Index: pacemaker-2.0.2+20191023.7a12ccbe4/daemons/controld/controld_membership.c
===================================================================
---- pacemaker-1.1.18+20180430.c0d7ba798.orig/daemons/controld/controld_membership.c
-+++ pacemaker-1.1.18+20180430.c0d7ba798/daemons/controld/controld_membership.c
-@@ -414,7 +414,7 @@ crm_update_quorum(gboolean quorum, gbool
+--- pacemaker-2.0.2+20191023.7a12ccbe4.orig/daemons/controld/controld_membership.c
++++ pacemaker-2.0.2+20191023.7a12ccbe4/daemons/controld/controld_membership.c
+@@ -408,7 +408,7 @@ crm_update_quorum(gboolean quorum, gbool
crm_xml_add(update, XML_ATTR_DC_UUID, fsa_our_uuid);
fsa_cib_update(XML_TAG_CIB, update, call_options, call_id, NULL);
@@ -17,11 +17,11 @@ Index: pacemaker-1.1.18+20180430.c0d7ba798/daemons/controld/controld_membership.
fsa_register_cib_callback(call_id, FALSE, NULL, cib_quorum_update_complete);
free_xml(update);
-Index: pacemaker-1.1.18+20180430.c0d7ba798/daemons/controld/controld_transition.c
+Index: pacemaker-2.0.2+20191023.7a12ccbe4/daemons/controld/controld_transition.c
===================================================================
---- pacemaker-1.1.18+20180430.c0d7ba798.orig/daemons/controld/controld_transition.c
-+++ pacemaker-1.1.18+20180430.c0d7ba798/daemons/controld/controld_transition.c
-@@ -187,7 +187,7 @@ do_te_invoke(long long action,
+--- pacemaker-2.0.2+20191023.7a12ccbe4.orig/daemons/controld/controld_transition.c
++++ pacemaker-2.0.2+20191023.7a12ccbe4/daemons/controld/controld_transition.c
+@@ -186,7 +186,7 @@ do_te_invoke(long long action,
transition_graph = create_blank_graph();
return;
}
@@ -30,16 +30,16 @@ Index: pacemaker-1.1.18+20180430.c0d7ba798/daemons/controld/controld_transition.
graph_input);
te_reset_job_counts();
-Index: pacemaker-1.1.18+20180430.c0d7ba798/daemons/fenced/fenced_remote.c
+Index: pacemaker-2.0.2+20191023.7a12ccbe4/daemons/fenced/fenced_remote.c
===================================================================
---- pacemaker-1.1.18+20180430.c0d7ba798.orig/daemons/fenced/fenced_remote.c
-+++ pacemaker-1.1.18+20180430.c0d7ba798/daemons/fenced/fenced_remote.c
-@@ -578,7 +578,7 @@ remote_op_timeout(gpointer userdata)
+--- pacemaker-2.0.2+20191023.7a12ccbe4.orig/daemons/fenced/fenced_remote.c
++++ pacemaker-2.0.2+20191023.7a12ccbe4/daemons/fenced/fenced_remote.c
+@@ -595,7 +595,7 @@ remote_op_timeout(gpointer userdata)
return FALSE;
}
-- crm_debug("Action %s (%s) for %s (%s) timed out",
-+ crm_notice("Action %s (%s) for %s (%s) timed out",
- op->action, op->id, op->target, op->client_name);
+- crm_debug("Action '%s' targeting %s for client %s timed out "
++ crm_notice("Action '%s' targeting %s for client %s timed out "
+ CRM_XS " id=%s",
+ op->action, op->target, op->client_name, op->id);
- if (op->phase == st_phase_on) {
diff --git a/pacemaker-2.0.2+20190801.122c32115.tar.xz b/pacemaker-2.0.2+20190801.122c32115.tar.xz
deleted file mode 100644
index 7577077..0000000
--- a/pacemaker-2.0.2+20190801.122c32115.tar.xz
+++ /dev/null
@@ -1,3 +0,0 @@
-version https://git-lfs.github.com/spec/v1
-oid sha256:14863a5786b835484b10243cf8c50a3bf805c6f270848c4bf57e7ec818c97ce1
-size 3479184
diff --git a/pacemaker-2.0.2+20191106.eef56dcd6.tar.xz b/pacemaker-2.0.2+20191106.eef56dcd6.tar.xz
new file mode 100644
index 0000000..0182fe6
--- /dev/null
+++ b/pacemaker-2.0.2+20191106.eef56dcd6.tar.xz
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:cc7877f57929b0abae56acdd4d64d201c5884509a10c782b29665a33f411232f
+size 3518824
diff --git a/pacemaker.changes b/pacemaker.changes
index a6a46b1..1c860be 100644
--- a/pacemaker.changes
+++ b/pacemaker.changes
@@ -1,3 +1,169 @@
+-------------------------------------------------------------------
+Thu Nov 07 10:57:29 UTC 2019 - Yan Gao
+
+- Update to version 2.0.2+20191106.eef56dcd6:
+- libcrmcommon: Make sure to free the --output-as description.
+- libcrmcommon: Rename formatted output cmdline options.
+- libcrmcommon: Group all output options together.
+
+-------------------------------------------------------------------
+Mon Nov 04 11:08:36 UTC 2019 - Yan Gao
+
+- Update to version 2.0.2+20191031.1d695899e:
+- scheduler: clarify message about when watchdog will be used
+- scheduler: properly detect whether guest node is fenceable
+- scheduler: initialize unfencing digests to null
+- scheduler: improve graph synapse logging
+
+-------------------------------------------------------------------
+Tue Oct 29 15:18:03 UTC 2019 - Yan Gao
+
+- Update to version 2.0.2+20191023.7a12ccbe4:
+- tools: Explain TIMESPEC in crm_mon help output.
+- tools: crm_mon --interval should understand more formats.
+- libcrmservice: don't close descriptors above current limit
+- rpm: pacemaker-cts requires pacemaker
+- tools: restore ability to show groups in crm_mon console mode
+- tools: Deprecated old-style output options in crm_mon.
+- cts-scheduler: test "year-2038" only runs for 64bit systems
+- fencer: clarify more messages
+- tools: don't ignore cib_new() errors in crm_mon
+- tools: avoid memory leak in crm_mon when displaying nodes
+- libpe_status: avoid memory leak when outputting resources
+- libcrmcommon: avoid memory leak when IPC compression fails
+- Security: introduce restrictive usage libxslt's security framework
+- libcrmservice: try not to spam close() file descriptors
+- tools: Support "crm_mon --as-html=".
+- tools: Don't output nodes if they don't have failures.
+- tools: Update checks around crm_mon --daemonize.
+- libpe_status: Use CSS to style messages.
+- tools: Add formatted output messages for resource history.
+- tools: Add output messages for operations history.
+- tools: Add full output to node messages.
+- xml: Add a schema for new crm_mon output.
+- tools: Use formatted output for nodes and their attrs.
+- tools: Enable formatted output in crm_mon.
+- tools: Use formatted output for failed actions.
+- tools: Use formatted output for bans and tickets.
+- tools: Use formatted output for cluster summary.
+- tools: Use formatted output for stonith messages.
+- tools: Add cluster summary messages.
+
+- Rebase:
+ * bug-806256_pacemaker-log-level-notice.patch
+
+-------------------------------------------------------------------
+Wed Oct 16 12:34:13 UTC 2019 - Yan Gao
+
+- Update to version 2.0.2+20191014.09114c357:
+- fencer: improved log messages regarding fencing actions (bsc#1151007)
+- cts: ComponentFail: killed corosync doesn't respawn immediatelly.
+- fencer: no need to check the length of a non-empty list for pending fencing actions (bsc#1151007)
+- tools: crm_attribute should skip attrd if CIB is file
+- controller: improve throttle mode messages
+- libcrmcommon: improve messages when waiting for child processes
+- scheduler: greatly improve efficiency of interval-origin
+- tools: improve crm_resource --cleanup/--refresh help text
+- fencer: Indicate fencing target in the logs when scheduling and executing fencing command (bsc#1151007)
+- fencer: Make sure concurrent fencing commands get triggered to execute (bsc#1151007)
+- fencer: Don't let a fencing command with a long delay block any other commands pending on the device (bsc#1151007)
+- scheduler: de-duplicate inputs even if not adding to transition graph
+- scheduler: check for invalid orderings when applying orderings
+- scheduler: improve messages when adding actions to transition graph
+- tools: new tool to compare crm_simulate profiling output
+- tools: add crm_simulate option to repeat profiling tests
+- tools: Use glib for cmdline handling in crm_node.
+- fencing: Do not block concurrent fencing actions on a device (bsc#1151007)
+- fencing: handle fence meta-data errors better
+- libcrmcommon: avoid buffer overflows when converting date to string
+- executor: handle remote server socket consistently
+- tools: improve help text for crm_resource --validate
+
+- Rebase:
+ * bug-728579_pacemaker-stonith-dev-id.patch
+
+-------------------------------------------------------------------
+Tue Oct 08 08:40:40 UTC 2019 - Yan Gao
+
+- Update to version 2.0.2+20190930.7fd98a2c5:
+- controller: allow more cluster properties to take ISO 8601 specification
+- scheduler: allow failure-timeout to take ISO 8601 interval
+- libcrmcommon,tools: handle NULL values better in time handling
+- libcrmcommon: allow 24:00:00 time as equivalent to next day's 00:00:00
+- libcrmcommon: allow ISO 8601 strings of form "T