Login
[x]
Log in using an account from:
Fedora Account System
Red Hat Associate
Red Hat Customer
Or login using a Red Hat Bugzilla account
Forgot Password
Login:
Hide Forgot
Create an Account
Red Hat Bugzilla – Attachment 852809 Details for
Bug 1015126
crm_mon crashed with segfault
[?]
New
Simple Search
Advanced Search
My Links
Browse
Requests
Reports
Current State
Search
Tabular reports
Graphical reports
Duplicates
Other Reports
User Changes
Plotly Reports
Bug Status
Bug Severity
Non-Defaults
|
Product Dashboard
Help
Page Help!
Bug Writing Guidelines
What's new
Browser Support Policy
5.0.4.rh83 Release notes
FAQ
Guides index
User guide
Web Services
Contact
Legal
This site requires JavaScript to be enabled to function correctly, please enable it.
[patch]
patch fixes crm_mon crash
bz720543-pcmk-tools_fixes_formatting_of_remote_nodes_in_crm_mon_and_crm_simulate.patch (text/plain), 13.81 KB, created by
David Vossel
on 2014-01-20 17:41:37 UTC
(
hide
)
Description:
patch fixes crm_mon crash
Filename:
MIME Type:
Creator:
David Vossel
Created:
2014-01-20 17:41:37 UTC
Size:
13.81 KB
patch
obsolete
>commit 27adba1575f508166e7203225a3ff6d580842dfd >Author: David Vossel <dvossel@redhat.com> >Date: Tue Aug 27 17:46:28 2013 -0500 > > Fix: tools: Fixes formatting of remote-nodes in crm_mon and crm_simulate > > (cherry picked from commit b32b60ec6d0963ea3767196f0fdd50746d27fafa) > > Conflicts: > pengine/test10/whitebox-ms-ordering.summary > >diff --git a/pengine/test10/whitebox-asymmetric.summary b/pengine/test10/whitebox-asymmetric.summary >index c4a8e0a..1a68802 100644 >--- a/pengine/test10/whitebox-asymmetric.summary >+++ b/pengine/test10/whitebox-asymmetric.summary >@@ -1,7 +1,6 @@ > > Current cluster status: > Online: [ 18builder ] >-OFFLINE: [ 18node2:container2 ] > > fence_false (stonith:fence_false): Stopped > container2 (ocf::pacemaker:Dummy): Started 18builder >@@ -22,7 +21,8 @@ Executing cluster transition: > * Resource action: nfs_mount monitor=10000 on 18node2 > > Revised cluster status: >-Online: [ 18builder 18node2:container2 ] >+Online: [ 18builder ] >+Containers: [ 18node2:container2 ] > > fence_false (stonith:fence_false): Stopped > container2 (ocf::pacemaker:Dummy): Started 18builder >diff --git a/pengine/test10/whitebox-fail1.summary b/pengine/test10/whitebox-fail1.summary >index 02d0f8e..5e5887b 100644 >--- a/pengine/test10/whitebox-fail1.summary >+++ b/pengine/test10/whitebox-fail1.summary >@@ -1,7 +1,7 @@ > > Current cluster status: >-Online: [ 18node1 18node2 18node3 lxc2:container2 ] >-OFFLINE: [ lxc1:container1 ] >+Online: [ 18node1 18node2 18node3 ] >+Containers: [ lxc2:container2 ] > > container1 (ocf::heartbeat:VirtualDomain): FAILED 18node2 > container2 (ocf::heartbeat:VirtualDomain): Started 18node2 >@@ -38,7 +38,8 @@ Executing cluster transition: > * Resource action: B monitor=10000 on lxc1 > > Revised cluster status: >-Online: [ 18node1 18node2 18node3 lxc1:container1 lxc2:container2 ] >+Online: [ 18node1 18node2 18node3 ] >+Containers: [ lxc1:container1 lxc2:container2 ] > > container1 (ocf::heartbeat:VirtualDomain): Started 18node2 > container2 (ocf::heartbeat:VirtualDomain): Started 18node2 >diff --git a/pengine/test10/whitebox-fail2.summary b/pengine/test10/whitebox-fail2.summary >index 0e53524..338173d 100644 >--- a/pengine/test10/whitebox-fail2.summary >+++ b/pengine/test10/whitebox-fail2.summary >@@ -1,7 +1,7 @@ > > Current cluster status: >-Online: [ 18node1 18node2 18node3 lxc2:container2 ] >-OFFLINE: [ lxc1:container1 ] >+Online: [ 18node1 18node2 18node3 ] >+Containers: [ lxc2:container2 ] > > container1 (ocf::heartbeat:VirtualDomain): FAILED 18node2 > container2 (ocf::heartbeat:VirtualDomain): Started 18node2 >@@ -38,7 +38,8 @@ Executing cluster transition: > * Resource action: B monitor=10000 on lxc1 > > Revised cluster status: >-Online: [ 18node1 18node2 18node3 lxc1:container1 lxc2:container2 ] >+Online: [ 18node1 18node2 18node3 ] >+Containers: [ lxc1:container1 lxc2:container2 ] > > container1 (ocf::heartbeat:VirtualDomain): Started 18node2 > container2 (ocf::heartbeat:VirtualDomain): Started 18node2 >diff --git a/pengine/test10/whitebox-fail3.summary b/pengine/test10/whitebox-fail3.summary >index 1d25724..395d218 100644 >--- a/pengine/test10/whitebox-fail3.summary >+++ b/pengine/test10/whitebox-fail3.summary >@@ -1,7 +1,6 @@ > > Current cluster status: > Online: [ dvossel-laptop2 ] >-OFFLINE: [ 18builder:vm 18node1:vm2 ] > > vm (ocf::heartbeat:VirtualDomain): Stopped > vm2 (ocf::heartbeat:VirtualDomain): Stopped >@@ -39,8 +38,8 @@ Executing cluster transition: > * Resource action: X monitor=10000 on 18builder > > Revised cluster status: >-Online: [ 18builder:vm dvossel-laptop2 ] >-OFFLINE: [ 18node1:vm2 ] >+Online: [ dvossel-laptop2 ] >+Containers: [ 18builder:vm ] > > vm (ocf::heartbeat:VirtualDomain): Started dvossel-laptop2 > vm2 (ocf::heartbeat:VirtualDomain): Stopped >diff --git a/pengine/test10/whitebox-move.summary b/pengine/test10/whitebox-move.summary >index 6dc2f6f..3422ac7 100644 >--- a/pengine/test10/whitebox-move.summary >+++ b/pengine/test10/whitebox-move.summary >@@ -1,6 +1,7 @@ > > Current cluster status: >-Online: [ 18node1 18node2 18node3 lxc1:container1 lxc2:container2 ] >+Online: [ 18node1 18node2 18node3 ] >+Containers: [ lxc1:container1 lxc2:container2 ] > > container1 (ocf::heartbeat:VirtualDomain): Started 18node1 > container2 (ocf::heartbeat:VirtualDomain): Started 18node2 >@@ -34,7 +35,8 @@ Executing cluster transition: > * Resource action: lxc1 monitor=30000 on 18node2 > > Revised cluster status: >-Online: [ 18node1 18node2 18node3 lxc1:container1 lxc2:container2 ] >+Online: [ 18node1 18node2 18node3 ] >+Containers: [ lxc1:container1 lxc2:container2 ] > > container1 (ocf::heartbeat:VirtualDomain): Started 18node2 > container2 (ocf::heartbeat:VirtualDomain): Started 18node2 >diff --git a/pengine/test10/whitebox-start.summary b/pengine/test10/whitebox-start.summary >index e5d654b..2801abe 100644 >--- a/pengine/test10/whitebox-start.summary >+++ b/pengine/test10/whitebox-start.summary >@@ -1,7 +1,7 @@ > > Current cluster status: >-Online: [ 18node1 18node2 18node3 lxc2:container2 ] >-OFFLINE: [ lxc1:container1 ] >+Online: [ 18node1 18node2 18node3 ] >+Containers: [ lxc2:container2 ] > > container1 (ocf::heartbeat:VirtualDomain): Stopped > container2 (ocf::heartbeat:VirtualDomain): Started 18node2 >@@ -29,7 +29,8 @@ Executing cluster transition: > * Resource action: M monitor=10000 on lxc1 > > Revised cluster status: >-Online: [ 18node1 18node2 18node3 lxc1:container1 lxc2:container2 ] >+Online: [ 18node1 18node2 18node3 ] >+Containers: [ lxc1:container1 lxc2:container2 ] > > container1 (ocf::heartbeat:VirtualDomain): Started 18node1 > container2 (ocf::heartbeat:VirtualDomain): Started 18node2 >diff --git a/pengine/test10/whitebox-stop.summary b/pengine/test10/whitebox-stop.summary >index 4116571..51357b9 100644 >--- a/pengine/test10/whitebox-stop.summary >+++ b/pengine/test10/whitebox-stop.summary >@@ -1,6 +1,7 @@ > > Current cluster status: >-Online: [ 18node1 18node2 18node3 lxc1:container1 lxc2:container2 ] >+Online: [ 18node1 18node2 18node3 ] >+Containers: [ lxc1:container1 lxc2:container2 ] > > container1 (ocf::heartbeat:VirtualDomain): Started 18node2 > container2 (ocf::heartbeat:VirtualDomain): Started 18node2 >@@ -30,8 +31,8 @@ Executing cluster transition: > * Pseudo action: all_stopped > > Revised cluster status: >-Online: [ 18node1 18node2 18node3 lxc2:container2 ] >-OFFLINE: [ lxc1:container1 ] >+Online: [ 18node1 18node2 18node3 ] >+Containers: [ lxc2:container2 ] > > container1 (ocf::heartbeat:VirtualDomain): Stopped > container2 (ocf::heartbeat:VirtualDomain): Started 18node2 >diff --git a/tools/crm_mon.c b/tools/crm_mon.c >index 7c6e495..599df02 100644 >--- a/tools/crm_mon.c >+++ b/tools/crm_mon.c >@@ -1153,7 +1153,10 @@ print_status(pe_working_set_t * data_set) > node_t *dc = NULL; > char *since_epoch = NULL; > char *online_nodes = NULL; >+ char *online_remote_nodes = NULL; >+ char *online_remote_containers = NULL; > char *offline_nodes = NULL; >+ char *offline_remote_nodes = NULL; > const char *stack_s = NULL; > xmlNode *dc_version = NULL; > xmlNode *quorum_node = NULL; >@@ -1246,7 +1249,7 @@ print_status(pe_working_set_t * data_set) > const char *node_mode = NULL; > char *node_name = NULL; > >- if(node->details->remote_rsc) { >+ if (node->details->remote_rsc && node->details->remote_rsc->container) { > node_name = g_strdup_printf("%s:%s", node->details->uname, node->details->remote_rsc->container->id); > } else { > node_name = g_strdup_printf("%s", node->details->uname); >@@ -1286,23 +1289,37 @@ print_status(pe_working_set_t * data_set) > } else if (node->details->online) { > node_mode = "online"; > if (group_by_node == FALSE) { >- online_nodes = add_list_element(online_nodes, node_name); >+ if (node->details->remote_rsc && node->details->remote_rsc->container) { >+ online_remote_containers = add_list_element(online_remote_containers, node_name); >+ } else if (node->details->remote_rsc) { >+ online_remote_nodes = add_list_element(online_remote_nodes, node_name); >+ } else { >+ online_nodes = add_list_element(online_nodes, node_name); >+ } > continue; > } >- > } else { > node_mode = "OFFLINE"; > if (group_by_node == FALSE) { >- offline_nodes = add_list_element(offline_nodes, node_name); >+ >+ if (node->details->remote_rsc) { >+ if (node->details->remote_rsc->container == NULL) { >+ offline_remote_nodes = add_list_element(offline_remote_nodes, node_name); >+ } else { >+ /* ignore displaying offline container nodes */ >+ } >+ } else { >+ offline_nodes = add_list_element(offline_nodes, node_name); >+ } > continue; > } > } > >- if(node->details->remote_rsc) { >- online_nodes = add_list_element(online_nodes, node->details->remote_rsc->id); >- } >- >- if (safe_str_eq(node->details->uname, node->details->id)) { >+ if (node->details->remote_rsc && node->details->remote_rsc->container) { >+ print_as("ContainerNode %s: %s\n", node_name, node_mode); >+ } else if (node->details->remote_rsc) { >+ print_as("RemoteNode %s: %s\n", node_name, node_mode); >+ } else if (safe_str_eq(node->details->uname, node->details->id)) { > print_as("Node %s: %s\n", node_name, node_mode); > } else { > print_as("Node %s (%s): %s\n", node_name, node->details->id, node_mode); >@@ -1328,6 +1345,18 @@ print_status(pe_working_set_t * data_set) > print_as("OFFLINE: [%s ]\n", offline_nodes); > free(offline_nodes); > } >+ if (online_remote_nodes) { >+ print_as("RemoteOnline: [%s ]\n", online_remote_nodes); >+ free(online_remote_nodes); >+ } >+ if (offline_remote_nodes) { >+ print_as("RemoteOFFLINE: [%s ]\n", offline_remote_nodes); >+ free(offline_remote_nodes); >+ } >+ if (online_remote_containers) { >+ print_as("Containers: [%s ]\n", online_remote_containers); >+ free(online_remote_containers); >+ } > > if (group_by_node == FALSE && inactive_resources) { > print_as("\nFull list of resources:\n"); >diff --git a/tools/crm_simulate.c b/tools/crm_simulate.c >index 0d95e53..78cab50 100644 >--- a/tools/crm_simulate.c >+++ b/tools/crm_simulate.c >@@ -530,7 +530,10 @@ static void > print_cluster_status(pe_working_set_t * data_set) > { > char *online_nodes = NULL; >+ char *online_remote_nodes = NULL; >+ char *online_remote_containers = NULL; > char *offline_nodes = NULL; >+ char *offline_remote_nodes = NULL; > > GListPtr gIter = NULL; > >@@ -539,7 +542,7 @@ print_cluster_status(pe_working_set_t * data_set) > const char *node_mode = NULL; > char *node_name = NULL; > >- if(node->details->remote_rsc) { >+ if (node->details->remote_rsc && node->details->remote_rsc->container) { > node_name = g_strdup_printf("%s:%s", node->details->uname, node->details->remote_rsc->container->id); > } else { > node_name = g_strdup_printf("%s", node->details->uname); >@@ -576,24 +579,45 @@ print_cluster_status(pe_working_set_t * data_set) > node_mode = "OFFLINE (maintenance)"; > } > >+ >+ > } else if (node->details->online) { > node_mode = "online"; >- online_nodes = add_list_element(online_nodes, node_name); >+ if (node->details->remote_rsc && node->details->remote_rsc->container) { >+ online_remote_containers = add_list_element(online_remote_containers, node_name); >+ } else if (node->details->remote_rsc) { >+ online_remote_nodes = add_list_element(online_remote_nodes, node_name); >+ } else { >+ online_nodes = add_list_element(online_nodes, node_name); >+ } > free(node_name); > continue; > > } else { > node_mode = "OFFLINE"; >- offline_nodes = add_list_element(offline_nodes, node_name); >+ if (node->details->remote_rsc) { >+ if (node->details->remote_rsc->container == NULL) { >+ offline_remote_nodes = add_list_element(offline_remote_nodes, node_name); >+ } else { >+ /* ignore displaying offline container nodes */ >+ } >+ } else { >+ offline_nodes = add_list_element(offline_nodes, node_name); >+ } > free(node_name); > continue; > } > >- if (safe_str_eq(node_name, node->details->id)) { >+ if (node->details->remote_rsc && node->details->remote_rsc->container) { >+ printf("ContainerNode %s: %s\n", node_name, node_mode); >+ } else if (node->details->remote_rsc) { >+ printf("RemoteNode %s: %s\n", node_name, node_mode); >+ } else if (safe_str_eq(node->details->uname, node->details->id)) { > printf("Node %s: %s\n", node_name, node_mode); > } else { > printf("Node %s (%s): %s\n", node_name, node->details->id, node_mode); > } >+ > free(node_name); > } > >@@ -605,6 +629,18 @@ print_cluster_status(pe_working_set_t * data_set) > printf("OFFLINE: [%s ]\n", offline_nodes); > free(offline_nodes); > } >+ if (online_remote_nodes) { >+ printf("RemoteOnline: [%s ]\n", online_remote_nodes); >+ free(online_remote_nodes); >+ } >+ if (offline_remote_nodes) { >+ printf("RemoteOFFLINE: [%s ]\n", offline_remote_nodes); >+ free(offline_remote_nodes); >+ } >+ if (online_remote_containers) { >+ printf("Containers: [%s ]\n", online_remote_containers); >+ free(online_remote_containers); >+ } > > fprintf(stdout, "\n"); > for (gIter = data_set->resources; gIter != NULL; gIter = gIter->next) {
You cannot view the attachment while viewing its details because your browser does not support IFRAMEs.
View the attachment on a separate page
.
View Attachment As Diff
View Attachment As Raw
Actions:
View
|
Diff
Attachments on
bug 1015126
:
807085
|
807086
|
821052
| 852809