Accepting request 176003 from network:ha-clustering:Factory
Automatic submission by obs-autosubmit OBS-URL: https://build.opensuse.org/request/show/176003 OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/corosync?expand=0&rev=17
This commit is contained in:
commit
388aa7acab
@ -1,3 +0,0 @@
|
|||||||
version https://git-lfs.github.com/spec/v1
|
|
||||||
oid sha256:c88fbfc14cd0ff8fba24833fa43b54cf8380fbd8106b9d7e70458e72d36ad169
|
|
||||||
size 729503
|
|
3
corosync-1.4.5.tar.gz
Normal file
3
corosync-1.4.5.tar.gz
Normal file
@ -0,0 +1,3 @@
|
|||||||
|
version https://git-lfs.github.com/spec/v1
|
||||||
|
oid sha256:c9dbe9f84b397108c9a63bc4ee48c61631cbfec7b28930c6edff720429ac364a
|
||||||
|
size 803598
|
@ -1,3 +1,39 @@
|
|||||||
|
-------------------------------------------------------------------
|
||||||
|
Fri May 10 13:18:25 UTC 2013 - tserong@suse.com
|
||||||
|
|
||||||
|
- Update to corosync 1.4.5 stable release (bnc#799031)
|
||||||
|
- coroipc: Handle pfd.revents as bit-field
|
||||||
|
- Check socket_recv error code in ipc_dispatch_get
|
||||||
|
- On places with POLLERR check also POLLNVAL
|
||||||
|
- coroipc: Don't spin when waiting on semaphore
|
||||||
|
- log: Handle race in printf_to_logs and format_set
|
||||||
|
- objdb: Don't read uninitialized memory in inc/dec
|
||||||
|
- Add waiting_trans_ack also to fragmentation layer
|
||||||
|
- Handle segfault in backlog_get
|
||||||
|
- Fix problem with sync operations under very rare circumstances
|
||||||
|
- manpages: Add confdb_key_get man page
|
||||||
|
- manpages: Add links for referenced confdb calls
|
||||||
|
- manpages: Fix typo in evs* manpages
|
||||||
|
- If failed_to_recv is set, consensus can be empty
|
||||||
|
- Ignore sync barrier msgs if sync doesn't started
|
||||||
|
- Make service_build contain correct number of msgs
|
||||||
|
- Handle sync and service unload correctly
|
||||||
|
- Don't call sync_* funcs for unloaded services
|
||||||
|
- Return back "Totem is unable to form..." message
|
||||||
|
- Move "Totem is unable to form..." message to main
|
||||||
|
- Use unix socket for local multicast loop
|
||||||
|
- cpg: Enhance downlist selection algorithm
|
||||||
|
- cpg: Process join list after downlists
|
||||||
|
- cpg: Never choose downlist with localnode
|
||||||
|
- Fix cpg_membership_get()
|
||||||
|
- Don't access invalid mem in totemconfig
|
||||||
|
- Move some totem and cpg messages to trace level
|
||||||
|
- flatiron: Free outq items list on conn exit
|
||||||
|
- Fix nodeid conflicting issue (bnc#806634)
|
||||||
|
+ Added fix-nodeid-conflicting.patch
|
||||||
|
- change the default priority to RR(1) same as pacemaker(bnc#804707)
|
||||||
|
+ Added corosync_reduce_RR_priority.patch
|
||||||
|
|
||||||
-------------------------------------------------------------------
|
-------------------------------------------------------------------
|
||||||
Thu Mar 21 11:59:58 UTC 2013 - mmeister@suse.com
|
Thu Mar 21 11:59:58 UTC 2013 - mmeister@suse.com
|
||||||
|
|
||||||
|
@ -29,7 +29,7 @@ Name: corosync
|
|||||||
Summary: The Corosync Cluster Engine and Application Programming Interfaces
|
Summary: The Corosync Cluster Engine and Application Programming Interfaces
|
||||||
License: BSD-3-Clause
|
License: BSD-3-Clause
|
||||||
Group: Productivity/Clustering/HA
|
Group: Productivity/Clustering/HA
|
||||||
Version: 1.4.3
|
Version: 1.4.5
|
||||||
Release: 0
|
Release: 0
|
||||||
Url: http://www.corosync.org
|
Url: http://www.corosync.org
|
||||||
Source0: http://build.clusterlabs.org/%{name}/releases/%{name}-%{version}.tar.gz
|
Source0: http://build.clusterlabs.org/%{name}/releases/%{name}-%{version}.tar.gz
|
||||||
@ -38,6 +38,8 @@ Patch1: corosync-confexample-timestamp.patch
|
|||||||
Patch2: corosync-revert-cs2429.patch
|
Patch2: corosync-revert-cs2429.patch
|
||||||
Patch4: corosync.conf.example.patch
|
Patch4: corosync.conf.example.patch
|
||||||
Patch5: corosync-cpg-procdown.patch
|
Patch5: corosync-cpg-procdown.patch
|
||||||
|
Patch6: corosync_reduce_RR_priority.patch
|
||||||
|
Patch7: fix-nodeid-conflicting.patch
|
||||||
BuildRoot: %{_tmppath}/%{name}-%{version}-build
|
BuildRoot: %{_tmppath}/%{name}-%{version}-build
|
||||||
# Runtime bits
|
# Runtime bits
|
||||||
Requires: libcorosync4 = %{version}-%{release}
|
Requires: libcorosync4 = %{version}-%{release}
|
||||||
@ -65,6 +67,8 @@ BuildRequires: pkg-config
|
|||||||
%patch2 -p1
|
%patch2 -p1
|
||||||
%patch4 -p1
|
%patch4 -p1
|
||||||
%patch5 -p1
|
%patch5 -p1
|
||||||
|
%patch6 -p1
|
||||||
|
%patch7 -p1
|
||||||
|
|
||||||
%build
|
%build
|
||||||
%if 0%{?buildtrunk} == 1
|
%if 0%{?buildtrunk} == 1
|
||||||
@ -144,6 +148,7 @@ script.
|
|||||||
%{_libexecdir}/lcrso/vsf_ykd.lcrso
|
%{_libexecdir}/lcrso/vsf_ykd.lcrso
|
||||||
%dir %{_localstatedir}/lib/corosync
|
%dir %{_localstatedir}/lib/corosync
|
||||||
%dir %{_localstatedir}/log/cluster
|
%dir %{_localstatedir}/log/cluster
|
||||||
|
%{_mandir}/man8/confdb_keys.8*
|
||||||
%{_mandir}/man8/corosync_overview.8*
|
%{_mandir}/man8/corosync_overview.8*
|
||||||
%{_mandir}/man8/corosync.8*
|
%{_mandir}/man8/corosync.8*
|
||||||
%{_mandir}/man8/corosync-blackbox.8*
|
%{_mandir}/man8/corosync-blackbox.8*
|
||||||
|
14
corosync_reduce_RR_priority.patch
Normal file
14
corosync_reduce_RR_priority.patch
Normal file
@ -0,0 +1,14 @@
|
|||||||
|
Index: corosync-1.4.4/exec/main.c
|
||||||
|
===================================================================
|
||||||
|
--- corosync-1.4.4.orig/exec/main.c
|
||||||
|
+++ corosync-1.4.4/exec/main.c
|
||||||
|
@@ -1268,7 +1268,8 @@ static void corosync_setscheduler (void)
|
||||||
|
#if defined(HAVE_PTHREAD_SETSCHEDPARAM) && defined(HAVE_SCHED_GET_PRIORITY_MAX) && defined(HAVE_SCHED_SETSCHEDULER)
|
||||||
|
int res;
|
||||||
|
|
||||||
|
- sched_priority = sched_get_priority_max (SCHED_RR);
|
||||||
|
+ /*use the minimal priority same as pacemaker */
|
||||||
|
+ sched_priority = sched_get_priority_min (SCHED_RR);
|
||||||
|
if (sched_priority != -1) {
|
||||||
|
global_sched_param.sched_priority = sched_priority;
|
||||||
|
res = sched_setscheduler (0, SCHED_RR, &global_sched_param);
|
71
fix-nodeid-conflicting.patch
Normal file
71
fix-nodeid-conflicting.patch
Normal file
@ -0,0 +1,71 @@
|
|||||||
|
Index: corosync-1.4.5/conf/corosync.conf.example
|
||||||
|
===================================================================
|
||||||
|
--- corosync-1.4.5.orig/conf/corosync.conf.example
|
||||||
|
+++ corosync-1.4.5/conf/corosync.conf.example
|
||||||
|
@@ -41,7 +41,10 @@ totem {
|
||||||
|
max_messages: 20
|
||||||
|
|
||||||
|
# Limit generated nodeids to 31-bits (positive signed integers)
|
||||||
|
- clear_node_high_bit: yes
|
||||||
|
+ # you would set it to 'yes', the new option 'new' means wiping
|
||||||
|
+ # off the highest bit in network order to avoid possible nodeid
|
||||||
|
+ # conflicting.
|
||||||
|
+ clear_node_high_bit: new
|
||||||
|
|
||||||
|
# secauth: Enable mutual node authentication. If you choose to
|
||||||
|
# enable this ("on"), then do remember to create a shared
|
||||||
|
Index: corosync-1.4.5/exec/totemconfig.c
|
||||||
|
===================================================================
|
||||||
|
--- corosync-1.4.5.orig/exec/totemconfig.c
|
||||||
|
+++ corosync-1.4.5/exec/totemconfig.c
|
||||||
|
@@ -338,6 +338,9 @@ printf ("couldn't find totem handle\n");
|
||||||
|
if (strcmp (str, "yes") == 0) {
|
||||||
|
totem_config->clear_node_high_bit = 1;
|
||||||
|
}
|
||||||
|
+ if (strcmp (str, "new") == 0) {
|
||||||
|
+ totem_config->clear_node_high_bit = 2;
|
||||||
|
+ }
|
||||||
|
}
|
||||||
|
|
||||||
|
objdb_get_int (objdb,object_totem_handle, "threads", &totem_config->threads);
|
||||||
|
Index: corosync-1.4.5/exec/totemip.c
|
||||||
|
===================================================================
|
||||||
|
--- corosync-1.4.5.orig/exec/totemip.c
|
||||||
|
+++ corosync-1.4.5/exec/totemip.c
|
||||||
|
@@ -626,10 +626,20 @@ int totemip_iface_check(struct totem_ip_
|
||||||
|
*/
|
||||||
|
if (ipaddr.family == AF_INET && ipaddr.nodeid == 0) {
|
||||||
|
unsigned int nodeid = 0;
|
||||||
|
+ unsigned int new_nodeid = 0;
|
||||||
|
memcpy (&nodeid, ipaddr.addr, sizeof (int));
|
||||||
|
- if (mask_high_bit) {
|
||||||
|
+#if __BYTE_ORDER == __LITTLE_ENDIAN
|
||||||
|
+ new_nodeid = swab32 (nodeid);
|
||||||
|
+#else
|
||||||
|
+ new_nodeid = nodeid;
|
||||||
|
+#endif
|
||||||
|
+ if (mask_high_bit == 1) {
|
||||||
|
nodeid &= 0x7FFFFFFF;
|
||||||
|
}
|
||||||
|
+ if (mask_high_bit == 2) {
|
||||||
|
+ new_nodeid &= 0x7FFFFFFF;
|
||||||
|
+ nodeid = new_nodeid;
|
||||||
|
+ }
|
||||||
|
ipaddr.nodeid = nodeid;
|
||||||
|
}
|
||||||
|
totemip_copy (boundto, &ipaddr);
|
||||||
|
Index: corosync-1.4.5/man/corosync.conf.5
|
||||||
|
===================================================================
|
||||||
|
--- corosync-1.4.5.orig/man/corosync.conf.5
|
||||||
|
+++ corosync-1.4.5/man/corosync.conf.5
|
||||||
|
@@ -175,7 +175,9 @@ This configuration option is optional an
|
||||||
|
specified. Some openais clients require a signed 32 bit nodeid that is greater
|
||||||
|
than zero however by default openais uses all 32 bits of the IPv4 address space
|
||||||
|
when generating a nodeid. Set this option to yes to force the high bit to be
|
||||||
|
-zero and therefor ensure the nodeid is a positive signed 32 bit integer.
|
||||||
|
+zero and therefor ensure the nodeid is a positive signed 32 bit integer. Set
|
||||||
|
+this option to new to force the high bit in network order to be zero which
|
||||||
|
+intends to avoid possible nodeid conflicting.
|
||||||
|
|
||||||
|
WARNING: The clusters behavior is undefined if this option is enabled on only
|
||||||
|
a subset of the cluster (for example during a rolling upgrade).
|
Loading…
x
Reference in New Issue
Block a user