diff options
Diffstat (limited to '')
-rw-r--r-- | ChangeLog | 26796 |
1 files changed, 26796 insertions, 0 deletions
diff --git a/ChangeLog b/ChangeLog new file mode 100644 index 0000000..23f0232 --- /dev/null +++ b/ChangeLog @@ -0,0 +1,26796 @@ +2023-11-06 Machiry Aravind Kumar <makrvcs@gmail.com> + + Handling integer overflow issues + Avoiding signed integer overflows by converting size + related types to size_t. + + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2023-10-09 Christine Caulfield <ccaulfie@redhat.com> + + rust: Improve vector initialisation + (also silence clippy in rust 1.73) + + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2023-10-06 Christine Caulfield <ccaulfie@redhat.com> + + man: Update the corosync_overview manpage + The bits about IPv6 were out of date (for knet). + + Added reference to the corosync-*tool utilities so that + people know they are there + + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2023-10-05 Christine Caulfield <ccaulfie@redhat.com> + + config: Fail to start if ping timers are invalid + This required adding a lot of return values to two previously + 'void' functions. I did two rather than just the one that was + needed because it seemed to make sense to do them both together. + + Although these functions now return errors, they are probably + still ignored higher up. this really needs a comprehensive audit. + + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2023-08-30 Christine Caulfield <ccaulfie@redhat.com> + + rust: Remove some pointless casts + As pointed out by clippy in Rust 1.72 + + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2023-08-09 Christine Caulfield <ccaulfie@redhat.com> + + parser: Allow a non-breaking space as 'whitespace' + non-breaking spaces are depressingly easy to enter in some + editors and can make a mess of a corosync.conf file, as the + character can break keyword names and generate some very strange + error messages. + + So here we include it (0xA0) as a valid whitespace character. + The (unsigned char) cast is for portability - Intel systems use + signed chars so we'd need something there, but this should + protect us against unsigned char systems too. + + No attempt is made to protect against UTF-8 characters, that's very + much out of scope for this project I suspect. + + ref: https://github.com/corosync/corosync/issues/723 + + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2023-06-06 Jan Friesse <jfriesse@redhat.com> + + spec: Migrate to SPDX license + Both Fedora and openSUSE now recommends to use SPDX shortname format + for License. + + Reviewed-by: Fabio M. Di Nitto <fdinitto@redhat.com> + +2023-05-29 Jan Friesse <jfriesse@redhat.com> + + build: Fix rust make -j build dep for distcheck + "Inspired" by similar patch from kronosnet + (531ebe195a955d9a1c8b762443ecab3edca95ad4) + + Reviewed-by: Fabio M. Di Nitto <fdinitto@redhat.com> + +2023-05-23 Jan Friesse <jfriesse@redhat.com> + + rust: Remove tests from check scripts + Rust test are equivalent of C tests (so interactive one) and not + automated tests, so it shouldn't be executed by make check. + + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + +2023-04-24 Christine Caulfield <ccaulfie@redhat.com> + + Rust: Remove obsolete bindgen flag + --size_t-is-usize has been deprecated for a while and is + removed in bindgen 0.64 + + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2023-04-03 Christine Caulfield <ccaulfie@redhat.com> + + knet: use knet TRACE logging level if available + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2023-01-27 Christine Caulfield <ccaulfie@redhat.com> + + Rust: 'fix' clippys for Rust 1.67 + This is clippy getting a bit above itself IMHO + + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2023-01-26 Christine Caulfield <ccaulfie@redhat.com> + + rust: Make it work on FreeBSD + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + + bindings: Add Rust bindings + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2022-10-24 Jan Friesse <jfriesse@redhat.com> + + totemconfig: Add support for knet_mtu + totem.knet_mtu is new configuration option which allows setting + of automatic or manual knet MTU. + + Also reload of totem.knet_pmtud_interval is fixed now, so it works when + key is deleted (and set back default value). + + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + +2022-07-27 Jan Friesse <jfriesse@redhat.com> + + configure: Modernize configure.ac a bit + ... to make 2.71 happy. Also increase minimum version to 2.69 (10 years + old version so should be compatible enough). + + Reviewed-by: Fabio M. Di Nitto <fdinitto@redhat.com> + +2022-03-31 Christine Caulfield <ccaulfie@redhat.com> + + log: Configure knet logging to the same as corosync + Before this, all knet messages, including debug, were sent + over the pipe from knet to corosync and filtered in corosync. + This was obviously a waste, so now we tell knet the logging + level we need from it and so only get the messages that the + user has requested. + + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2022-03-30 Jan Friesse <jfriesse@redhat.com> + + logrotate: Use copytruncate method by default + The reopen lograte method has two main problems: + 1. It does fail when corosync is not running (solvable by + adding "|| true") + 2. If (for some reason, like SELinux) cfgtool -L fails, logrotate + fails and corosync keeps logging into old file. Added "|| true" + makes situation even worse because logrotate removes file but + corosync keeps logging into it. + + Solution is to install copytruncate logrotate snip by default (and + keep reopen config file only for reference). + + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + +2022-03-08 Andreas Grueninger <andreas.grueninger@noemail.com> + + totemconfig: Check uname return value correctly + uname in Solaris/Illumos returns non-negative value when succesful. + + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2022-02-01 Jan Friesse <jfriesse@redhat.com> + + totempg: Fix alignment handling + Some platforms requires aligned memory access. For such platforms, + special code was added using address modulo 4 to check if aligning is + needed or not. This may be problem for 64 bits platforms. Also check in + app_deliver_fn was incorrect and always true. + + Solution is to use modulo sizeof pointer and add parentheses to fix the + check in app_deliver_fn function. + + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + +2022-01-05 Jan Friesse <jfriesse@redhat.com> + + pkgconfig: Export corosysconfdir + Useful for external code to easily tell where corosync.conf + is (in case someone configured it for /usr/local/etc, ...) + + E.g. pacemaker's crm_report collects corosync.conf, and some + of its testing tools generate a corosync.conf for a test cluster. + + Reviewed-by: Fabio M. Di Nitto <fdinitto@redhat.com> + +2022-01-03 Ferenc Wágner <wferi@debian.org> + + Remove bashism from configure script + This was the real problem behind 384d168: Debian experimental now + sports a dash with LINENO support, so configure does not fall back to + using bash instead, choking on such bash-only constructs. Unfortunately + this didn't bail out cleanly, just unexpectedly set link_all_deplibs to + no, and the error message + + ./configure: 13158: test: yes: unexpected operator + + stayed unnoticed in the logs. Actually, link_all_deplibs=no is the + default in Debian, reducing overlinking and causing confusion overall, + see https://debbugs.gnu.org/db/13/13920.html for example. + + I think being explicit about used interfaces has its merit, so now that + Corosync has it, it might be advantageous to disable link_all_deplibs + by default across the board (after this patch re-enables it as a side + effect). + + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2021-11-24 Jan Friesse <jfriesse@redhat.com> + + totemudpu: Don't block local socketpair + Commit to drop packets from unlisted IPs made ifdown case not working + because msg_name is unset for socketpair. + + solution is to drop packets from unlisted IPs only when bind state is + BIND_STATE_REGULAR. + + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + +2021-11-10 Jan Friesse <jfriesse@redhat.com> + + build: Add explicit dependency for used libraries + Don't rely on implicit symbol finding (cs_strerror being most prominent + example) but rather use explicit one. + + This makes current debian experimental happy (compile source) + + Reviewed-by: Fabio M. Di Nitto <fdinitto@redhat.com> + +2021-11-03 Jan Friesse <jfriesse@redhat.com> + + totemsrp: Switch totempg buffers at the right time + Commit 92e0f9c7bb9b4b6a0da8d64bdf3b2e47ae55b1cc added switching of + totempg buffers in sync phase. But because buffers got switch too early + there was a problem when delivering recovered messages (messages got + corrupted and/or lost). Solution is to switch buffers after recovered + messages got delivered. + + I think it is worth to describe complete history with reproducers so it + doesn't get lost. + + It all started with 402638929e5045ef520a7339696c687fbed0b31b (more info + about original problem is described in + https://bugzilla.redhat.com/show_bug.cgi?id=820821). This patch + solves problem which is way to be reproduced with following reproducer: + - 2 nodes + - Both nodes running corosync and testcpg + - Pause node 1 (SIGSTOP of corosync) + - On node 1, send some messages by testcpg + (it's not answering but this doesn't matter). Simply hit ENTER key + few times is enough) + - Wait till node 2 detects that node 1 left + - Unpause node 1 (SIGCONT of corosync) + + and on node 1 newly mcasted cpg messages got sent before sync barrier, + so node 2 logs "Unknown node -> we will not deliver message". + + Solution was to add switch of totemsrp new messages buffer. + + This patch was not enough so new one + (92e0f9c7bb9b4b6a0da8d64bdf3b2e47ae55b1cc) was created. Reproducer of + problem was similar, just cpgverify was used instead of testcpg. + Occasionally when node 1 was unpaused it hang in sync phase because + there was a partial message in totempg buffers. New sync message had + different frag cont so it was thrown away and never delivered. + + After many years problem was found which is solved by this patch + (original issue describe in + https://github.com/corosync/corosync/issues/660). + Reproducer is more complex: + - 2 nodes + - Node 1 is rate-limited (used script on the hypervisor side): + ``` + iface=tapXXXX + # ~0.1MB/s in bit/s + rate=838856 + # 1mb/s + burst=1048576 + tc qdisc add dev $iface root handle 1: htb default 1 + tc class add dev $iface parent 1: classid 1:1 htb rate ${rate}bps \ + burst ${burst}b + tc qdisc add dev $iface handle ffff: ingress + tc filter add dev $iface parent ffff: prio 50 basic police rate \ + ${rate}bps burst ${burst}b mtu 64kb "drop" + ``` + - Node 2 is running corosync and cpgverify + - Node 1 keeps restarting of corosync and running cpgverify in cycle + - Console 1: while true; do corosync; sleep 20; \ + kill $(pidof corosync); sleep 20; done + - Console 2: while true; do ./cpgverify;done + + And from time to time (reproduced usually in less than 5 minutes) + cpgverify reports corrupted message. + + Reviewed-by: Fabio M. Di Nitto <fdinitto@redhat.com> + +2021-10-25 Christine Caulfield <ccaulfie@redhat.com> + + cpghum: Allow to continue if corosync is restarted + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2021-10-18 miharahiro <hmihara@redhat.com> + + man: Fix consensus timeout + The consensus timeout is 1.2 * token_timeout, + which has been changeg from 1000 to 3000, so change also consensus + timeout. + + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2021-09-13 Jan Friesse <jfriesse@redhat.com> + + logsys: Unlock config mutex on error + Thanks Ryan Cai <ycaibb@gmail.com> for reporting the problem. + + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + +2021-08-20 Jan Friesse <jfriesse@redhat.com> + + totem: Add cancel_hold_on_retransmit config option + Previously, existence of retransmit messages canceled holding + of token (and never allowed representative to enter token hold + state). + + This makes token rotating maximum speed and keeps processor + resending messages over and over again - overloading network + and reducing chance to successfully deliver the messages. + + Also there were reports of various Antivirus / IPS / IDS which slows + down delivery of packets with certain sizes (packets bigger than token) + what make Corosync retransmit messages over and over again. + + Proposed solution is to allow representative to enter token hold + state when there are only retransmit messages. This allows network to + handle overload and/or gives Antivirus/IPS/IDS enough time scan and + deliver packets without corosync entering "FAILED TO RECEIVE" state and + adding more load to network. + + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + +2021-08-04 Jan Friesse <jfriesse@redhat.com> + + totemconfig: Knet nodeid must be < 65536 + Knet limits maximum node id to 16-bit type. This was not ensured in + corosync and it was possible to set nodeid to value >= 65536 and + (surprisingly) most of the things were working quite well because of + overflow. corosync-cmapctl -m stats contained knet nodeid in + stats.knet. subtree, so for nodeid 65536 result was: + + Can't get value of stats.knet.node0.link0.connected. Error + CS_ERR_NOT_EXIST + + Commit implements checking of nodeid and limits it to KNET_MAX_HOST + value when knet is used. + + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + + totemconfig: Ensure all knet hosts has a nodeid + Nodeid is required for knet for every node. Right now, existence of + nodeid is checked only for local for local node, so broaden the test. + + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + +2021-08-02 Jan Friesse <jfriesse@redhat.com> + + cfgtool: Use CS_PRI_NODE_ID for formatting nodeid + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + + cfgtool: Fix brief mode display of localhost + Show 'n' also for first localhost link, so all localhost links + are marked consistently with non-brief display. + + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + + cfgtool: Set nodeid indexes after sort + Needed for having correct index of localhost + + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + + totemconfig: Put autogenerated nodeid back to cmap + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + + cfgtool: Check existence of at least one of nodeid + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + + totemconfig: Do not process totem.nodeid + totem.nodeid is relict from times when nodelist was not required and + totemsrp was sending whole membership with ip addresses. + + With Corosync 3 ip addresses are no longer sent so + it is not possible to find "next" node ip address where to send token + (because only nodeid is sent) without having information about all of + the nodes stored locally. + + When totem.nodeid was configured it was partly used and other parts + (most notably totemudpu_token_target_set) were using autogenerated + nodeid. Together it was not possible to create even single node + membership. + + Solution is to ignore totem.nodeid completely (and display warning when + it is set). + + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + +2021-07-29 Christine Caulfield <ccaulfie@redhat.com> + + knet: Fix node status display + Currently if there is a gap in the links (eg link0 is missing) + corosync-cfgtool -s will still display the links as 0,1,2,3... + even if they are 1,2,5,6... + + Also display the KNET transport type with the link in + corosync-cfgtool -s & -n + + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2021-07-23 Jan Friesse <jfriesse@redhat.com> + + main: Add support for cgroup v2 and auto mode + Support for cgroup v2 is very similar to cgroup v1 just checking (and + writing) different file. + + Because of all the problems described later with cgroup v2 new "auto" + mode (new default) is added. This mode first tries to set rr scheduling + and moves Corosync to root cgroup only if it fails. + + Testing this feature is a bit harder than with cgroup v1 so it's + probably worh noting in this commit message. + + 1. Copy some service file (I've used httpd service) and set + CPUQuota=30% in the [service] section. + 2. Check /sys/fs/cgroup/cgroup.subtree_control - there should be no + "cpu" + 3. Start modified service + 4. Check /sys/fs/cgroup/cgroup.subtree_control - there should be "cpu" + 5. Start corosync - It should be able to get rt priority + + When move_to_root_cgroup is disabled (applies only for kernels + with CONFIG_RT_GROUP_SCHED enabled), behavior differs: + - If corosync is started before modified service, so + there is no "cpu" in /sys/fs/cgroup/cgroup.subtree_control + corosync starts without problem and gets rt priority. + Starting modified service later will never add "cpu" into + /sys/fs/cgroup/cgroup.subtree_control (because corosync is holding + rt priority and it is placed in the non-root cgroup by systemd). + + - When corosync is started after modified service, so "cpu" + is in /sys/fs/cgroup/cgroup.subtree_control, corosync is not + able to get RT priority. + + It's worth noting problems when cgroup v2 is used together with systemd + logging described in corosync.conf(5) man page. + + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + +2021-06-03 Christine Caulfield <ccaulfie@redhat.com> + + stats: fix crash when iterating over deleted keys + The libqb map API leaves 'ownership' of the data with the caller + but does its own lifetime management, so it can easily happen that + map_rm() is called and the data deleted by the caller. + But if an iterator is running over that item then the map entry + will not get removed (leaving dangling pointers) until later. + + libqb has a hack-y callback that tells the owner when it is safe to + delete the allocated memory, so we hook into that. icmap is already + using this. + + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2021-06-02 Jan Friesse <jfriesse@redhat.com> + + man: Add note about single node configuration + Internally knet is using just one link for localhost so for single node + configuration knet_link_get_link_list returns only one entry. This is + propagated to `corosync-cfgtool -s`. + + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + +2021-05-21 Jan Friesse <jfriesse@redhat.com> + + Revert "main: Add support for cgroup v2" + This reverts commit 57e6b86b53010dd2612b0a6a4e04917673062ecf. + + We are in process of finding better solution so reverting for now. + + Revert "man: Add info about cgroup v2 behavior" + This reverts commit 9d3df5696ed6b04b379a2fe643eec1fcd5a4b10d. + + We are in process of finding better solution so reverting for now. + +2021-05-19 Jan Friesse <jfriesse@redhat.com> + + man: Add info about cgroup v2 behavior + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + + cfg: corosync_cfg_trackstop blocks forever + corosync_cfg_trackstop expects reply but that was never sent. Make sure + to send reply so corosync_cfg_trackstop works. + + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + +2021-05-10 Jan Friesse <jfriesse@redhat.com> + + main: Add support for cgroup v2 + Support for cgroup v2 is very similar to cgroup v1 just checking (and + writing) different file. + + Testing this feature is a bit harder than with cgroup v1 so it's + probably worh noting in this commit message. + + 1. Copy some service file (I've used httpd service) and set + CPUQuota=30% in the [service] section. + 2. Check /sys/fs/cgroup/cgroup.subtree_control - there should be no + "cpu" + 3. Start modified service + 4. Check /sys/fs/cgroup/cgroup.subtree_control - there should be "cpu" + 5. Start corosync - It should be able to get rt priority + + When move_to_root_cgroup is disabled, behavior differs: + - If corosync is started before modified service, so + there is no "cpu" in /sys/fs/cgroup/cgroup.subtree_control + corosync starts without problem and gets rt priority. + Starting modified service later will never add "cpu" into + /sys/fs/cgroup/cgroup.subtree_control (because corosync is holding + rt priority and it is placed in the non-root cgroup by systemd). + + - When corosync is started after modified service, so "cpu" + is in /sys/fs/cgroup/cgroup.subtree_control, corosync is not + able to get RT priority. + + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + +2021-04-14 Jan Friesse <jfriesse@redhat.com> + + main: Mark crypto_model key read only + ... to be in align with crypto_cypher and crypto_hash. + + Reload (corosync-cfgtool -R) works without any problem and changing of + key is not supported anyway, + + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + + totemconfig: Ensure strncpy is always terminated + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + + config: Properly check crypto and compress models + Use knet_get_crypto_list to find knet supported crypto models and use + them instead of hardcoded list. + + Also fix compression handling. Previously knet_compression_model + value was not checked at all and was directly passed to knet. + + Use knet_get_compress_list to find knet supported compress models and + use them to check validity of config file and for more informative + error message. + + Lastly enhance corosync version display with information + about available crypto/compression models. + + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + +2021-04-07 Ferenc Wágner <wferi@debian.org> + + man: corosync-cfgtool.8: use proper single quotes + Apostrophe as the first character of the input line indicates a + request, so groff complained: macro 'onwire'' not defined. + + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2021-04-06 Fabio M. Di Nitto <fdinitto@redhat.com> + + knet: pass correct handle to knet_handle_compress + totemknet_configure_compression was using knet_context + just to gather the knet handle / instance. + + On first time config knet_contex is not initialized till + much later in the code, passing some random garbage pointers + to knet_handle_compress, that would crash later trying + to acquire a mutex lock. + + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2021-03-29 Johannes Krupp <johannes.krupp@cispa.saarland> + + totemconfig: fix integer underflow and logic bug + Fix integer underflow when computing `namelen` in `nodelist_byname`, + always use computed `namelen`. + Fixes #626. + + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2021-03-25 liangxin1300 <XLiang@suse.com> + + totemconfig: change udp netmtu value as a constant + Insted of using "magic number" use UDP_NETMTU constant. + + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2021-03-18 Dan Streetman <ddstreet@canonical.com> + + totemknet: retry knet_handle_new if it fails + Retry knet_handle_new without privileged operations if it fails + + knet_handle_new can fail with ENAMETOOLONG if its privileged operations + fail, which can happen if we're running as a user process or in an + unprivileged container. + + This adds a cmap key 'allow_knet_handle_fallback' that defaults to no, + which is the current behavior of exiting with error if the knet_handle + can't be created with privileged operations. If the new cmap key is set + to 'yes' and the knet_handle creation fails, fallback to creating the + handle using unprivileged operations is tried. + + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2021-03-11 Dan Streetman <ddstreet@canonical.com> + + main: Check memlock rlimit + Don't lock all current and future memory if can't + increase memlock rlimit. + + If we fail to increase our RLIMIT_MEMLOCK, then locking all our current + and future memory is extremely dangerous; once our memory use reaches + our RLIMIT_MEMLOCK, memory allocations will start failing, very likely + leading to our entire process crashing. + + This can happen if we aren't a privileged process, for example if + running as non-root user, or inside an unprivileged container. + + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2021-03-09 Fabio M. Di Nitto <fdinitto@redhat.com> + + configure: drop unnecessary check and define + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + + configure: move exec_prefix sanitize + Move exec_prefix sanitize closer to prefix. This is not + functional change, just group functional tests together. + + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + + configure: drop dead code + prefix is sanitized already at the top of configure.ac to /usr, + hence the second instance can never hit. + + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + + configure: detect and init pkg-config with macro + this also allows to use PKG_CONFIG_* macros immediately + in conditional calls + + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2021-03-04 Christine Caulfield <ccaulfie@redhat.com> + + main: Close race condition when moving to statedir + Found by covscan which also didn't like us 'leaking' the + fd to the lockfile. So close that too. + + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2021-01-14 Jan Friesse <jfriesse@redhat.com> + + init: Use corosync-cfgtool for shutdown + ... to trigger cfg shutdown callbacks. + + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + +2021-01-14 Christine Caulfield <ccaulfie@redhat.com> + + test: Add testcfg to exercise some cfg functions + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + + cfg: Reinstate cfg tracking + CFG tracking was removed in 815375411e80131f31b172d7c43625769ee8b53d, + probably as a mistake, as part of the tidy up of cfg and the removal of + dynamic loading. This means that shutdown tracking (using + cfg_try_shutdown()) stopped working. + + This patch restores the trackstart & trackstop API calls (renamed to be + more consistent with the exiting libraries) so that shutdown tracking + can be used again. + + Change cfg.shutdown_timeout to be in milliseconds rather than seconds + nd use libqb macros for conversion. + + Add --force option to corosync-cfgtool -H + + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2020-11-26 Jan Friesse <jfriesse@redhat.com> + + cfg: Improve nodestatusget versioning + Patch tries to make nodestatusget really extendable. Following changes + are implemented: + - corosync_cfg_node_status_version_t is added with (for now) single + value CFG_NODE_STATUS_V1 + - corosync_knet_node_status renamed to corosync_cfg_node_status_v1 (it + isn't really knet because it works as well for udp(u() + - struct res_lib_cfg_nodestatusget_version is added which holds only ipc + result header and version on same position as for + corosync_cfg_node_status_v1 + - corosync_cfg_node_status_get requires version and pointer to one of + corosync_cfg_node_status_v structures + - request is handled in case switches to make adding new version easier + + Also fix following bugs: + - totempg_nodestatus_get error was retyped to cs_error_t without any + meaning. + - header.error was not checked at all in the library + + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + +2020-11-26 Christine Caulfield <ccaulfie@redhat.com> + + cfg: New API to get extended node/link infomation + Current we horribly over-use totempg_ifaces_get() to + retrieve information about knet interfaces. This is an attempt to + improve on that. + + All transports are supported (so not only Knet but also UDP(U)). + + This patch builds best against the "onwire-upgrade" branch of knet + as that's what sparked my interest in getting more information out. + + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2020-11-12 Jan Friesse <jfriesse@redhat.com> + + totemknet: Check both cipher and hash for crypto + Previously only crypto cipher was used as a way to find out if crypto is + enabled or disabled. + + This usually works ok until cipher is set to none and hash to some other + value (like sha1). Such config is perfectly valid and it was not + supported correctly. + + As a solution, check both cipher and hash. + + Reviewed-by: Fabio M. Di Nitto <fdinitto@redhat.com> + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + +2020-11-10 Ferenc Wágner <wferi@debian.org> + + The ring id file needn't be executable + At the same time simplify the overwrite logic and stop clearing the + umask (which is unexpected and quite pointless here, as applications + can't really protect the users from their own pathological settings). + + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2020-11-06 Fabio M. Di Nitto <fdinitto@redhat.com> + + pkgconfig: export LOGDIR in corosync.pc + logdir is configurable at build time and can change + from distro to distro. Export the path for pcs to use. + + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2020-11-02 Jan Friesse <jfriesse@redhat.com> + + spec: Add isa version of corosync-devel provides + Also add release to version to match autogenerated corosynclib-devel + provides. + + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + +2020-10-19 liangxin1300 <XLiang@suse.com> + + totemconfig: remove redundant nodeid error log + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + +2020-10-15 Aleksei Burlakov <aburlakov@suse.com> + + totemsrp: More informative messages + ... when token and consensus timeouts pop. + + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2020-10-15 Jan Friesse <jfriesse@redhat.com> + + config: Increase default token timeout to 3000 ms + Default token timeout of 1000 ms was often changed by users because of + other workloads on machine which may make corosync responding a bit + later than needed and resulting in token loss. + + 3000 ms was chosen as a compromise between token timeout increase + and allow live cluster upgrade (other nodes should receive token + by node with new default on time). + + It doesn't affect token token_coefficient so final token timeout still + depends on number of configured nodes (just base is higher). + + This change slows down failover a bit so for clusters where failover + times are important, please change the token timeout in configuration + file corosync.conf as a: + + totem { + version: 2 + token: 1000 + ... + + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + +2020-10-12 Ferenc Wágner <wferi@debian.org> + + man: votequorum.5: use proper single quotes + Backtick and apostrophe are formatted as directional quotes by plain + groff, but they behave literally in the body of a man page. + + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + + man: fix typo: avaialable + By slightly rewording the documentation of knet_compression_model. + + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2020-10-12 Jan Friesse <jfriesse@redhat.com> + + tests: Use CS_DISPATCH_BLOCKING instead of cycle + Some tests were using dispatch function in CS_DISPATCH_ALL mode + without poll/select on fd. This leads to busywait cycle, because + CS_DISPATCH_ALL masks CS_ERR_TRY_AGAIN error. + + Simpliest solution is to use CS_DISPATCH_BLOCKING instead and remove + while cycle, because CS_DISPATCH_BLOCKING handles CS_ERR_TRY_AGAIN + correctly. + + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + + quorum: Add support for nodelist callback + Current quorum callback contains only actual view list and there is no + way how to find out joined/left nodes. This cannot be emulated by user + app, because when corosync restarts before other nodes notices then view + list is unchanged (ring id is changed tho). + + Solution is to implement similar callback as for cpg which contains ring + id, member list, joined list and left list. + + To implement such callback and keep backwards compatibility, + quorum_model_initialize is introduced. Its behavior is similar to + cpg_model_initialize. This allows passing model v1, which contains + enhanced quorum (full ring id is passed instead of just seq number) + and nodelist callbacks. + + To find out which events should be sent by corosync daemon, new message + MESSAGE_REQ_QUORUM_MODEL_GETTYPE is used. Quorum library on init was + sending MESSAGE_REQ_QUORUM_GETTYPE. Whem model v1 is requested the + MESSAGE_REQ_QUORUM_MODEL_GETTYPE is used, which contains model number + so corosync knows that client is using model v1 and can send enhanced + quorum and nodelist events. + + Nodelist event is (for now) send both in case of change of membership + and also when requested, also when CS_TRACK_CURRENT is requested, but + then left_list and joined_list is left empty, because they don't make + too much sense there. + + New test application testquorummodel is added as an example of new API + usage. + + Also during patch developement, I found few bugs here and there, which + are also fixed: + - quorum_initialize was never returning error code returned by + MESSAGE_REQ_QUORUM_GETTYPE call (always returned CS_OK) + - Allocated memory in send_library_notification was based + on sizeof(unsigned int) instead of mar_uint32_t. That's not wrong, + but it make more sense to use sizeof(mar_uint32_t) instead + + (big thanks to Chrissie for englishify the man pages) + + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + +2020-09-30 Christine Caulfield <ccaulfie@redhat.com> + + man: reload during rolling upgrade + Make it clear that reloads during a rolling upgrade are not + supported. + + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2020-09-29 Jan Friesse <jfriesse@redhat.com> + + totemsrp: Move token received callback + Trigger token received callback only for valid token. + + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + +2020-09-24 Jan Friesse <jfriesse@redhat.com> + + common_lib: Remove trailing spaces in cs_strerror + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + +2020-09-18 liangxin1300 <XLiang@suse.com> + + totemconfig: improve linknumber checking + Check whether linknumber larger than INTERFACE_MAX and display error if + so. + + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2020-09-17 liangxin1300 <XLiang@suse.com> + + totemconfig: add interface number to the error str + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + + cfg: enhance message_handler_req_lib_cfg_killnode + While execute corosync-cfgtool -k <nodeid> to kill node: + * Check whether nodeid exists + * Check whether the node was joined + + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2020-09-03 liangxin1300 <XLiang@suse.com> + + totemconfig: validate totem.transport value + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2020-08-21 liangxin1300 <XLiang@suse.com> + + cmapctl: return error on no result of print prefix + return EXIT_FAILURE if no result print for ACTION_PRINT_PREFIX. + + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + + cmapctl: check NULL for key type and value for -p + To avoid segmentation fault. + + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2020-08-20 liangxin1300 <XLiang@suse.com> + + quorumtool: strict check for -o option + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2020-08-19 liangxin1300 <XLiang@suse.com> + + quorumtool: Help shouldn't require running service + Do not require corosync running when usage is requested. + + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2020-08-18 liangxin1300 <XLiang@suse.com> + + cfgtool: Return error when -i doesn't match + Give error message and EXIT_FAILURE return code when -i + option doesn't match. + + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2020-08-17 liangxin1300 <XLiang@suse.com> + + man: update output of -s and -b for cfgtool + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + + cmapctl: return EXIT_FAILURE on failure + For -g and -d option return EXIT_FAILURE when error occurs (most often + because key does not exist). + + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2020-08-12 liangxin1300 <XLiang@suse.com> + + tools: use util_strtonum for options checking + Function atoi is not safe since miss validation; + Function strtol is better but need to consider empty string and overflows + Function util_strtonum is a safer wrapper of strtoll + + Use util_strtonum to check nodeid option and strict checking condition. + + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2020-08-11 liangxin1300 <XLiang@suse.com> + + cfgtool: enhancement -a option + * Add return code + * Give error message when nodeid not exist + + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2020-08-07 liangxin1300 <XLiang@suse.com> + + cfgtool: output error messages to stderr + ... and standardize the return code + + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2020-07-16 Jan Friesse <jfriesse@redhat.com> + + configure: Use default systemd path with prefix + Reviewed-by: Fabio M. Di Nitto <fdinitto@redhat.com> + + build: Use git-version-gen during specfile build + Instead of copying parts of git-version-gen for spec target use + git-version-gen directly and parse final version into components + (rpmver, alphatag, numcomm) and use them. + + Main reason is to simplify code a bit (sed scripts are a bit repetitive + tho), reuse the code and also allow building of RPM from dist tarball + generated from non-tagged commit or dirty git (not very useful). + + The code relies on fact, that hyphen is never used in tagged release + name. + + Reviewed-by: Fabio M. Di Nitto <fdinitto@redhat.com> + + build: Update git-version-gen + Reviewed-by: Fabio M. Di Nitto <fdinitto@redhat.com> + + spec: Require at least knet 1.18 for crypto reload + Reviewed-by: Fabio M. Di Nitto <fdinitto@redhat.com> + +2020-07-09 Christine Caulfield <ccaulfie@redhat.com> + + config: Allow reconfiguration of crypto options + Needs new knet crypto API. + + If it's not available, then fall back to the old + API and forbid changing crypto while running. + + To avoid us being dependant on the leader node, each + node sends its own crypto_reconfig_phase messages so + we can guarantee that the reconfiguration always completes + on each node. + + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2020-05-18 Christine Caulfield <ccaulfie@redhat.com> + + test: Fix cpgtest + ... to cope with the max number of group members. + + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2020-04-24 Christine Caulfield <ccaulfie@redhat.com> + + config: Fix crash when a reload fails twice + Have string values stored in char arrays in totem_config + so we don't get into a mess with the pointers. + + Also remove vsftype (which hasn't been used since corosync 1) + + Use strncpy even though we know the string is fine. Keep covscan happy + + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + + config: Don't free pointers used by transports + reload failed for UDP[U] because they had saved pointers + to the interfaces[] array. so memcpy into that rather then + re-allocate it. + + Also, move the check for different IP address families so + it also gets run at reload time. + + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + + config: don't reload vquorum if reload fails + Fix an 'error: success' stype message by propogating error_string + back down the stack. + + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + + cfg: Improve error return to cfgtool -R + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + + config: Reorganise the config system + To be more reliable & maintainable + + The basic plan here is to fix reloads to be more stable + using read/parse/verify/build/commit stages, so that any errors + will not leave corosync in an unstable state. This should + also make the code more maintainable as currently the verify/commit + stages are horribly intertwined. + + Also: + - Fix local_node_pos not being updated in the new map during validation + (broke adding and removing new nodes in the middle of the list). + - Fix reconfiguration so that nodes are indexed by nodeid and not their + position in the list. This is an old bug that's just been carried + over + + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2020-04-22 Jan Friesse <jfriesse@redhat.com> + + Revert "totemip: compare sin6_scope_id and interface_num" + This reverts commit efd34df531d1b23d6458dca863a7517b7ac0099d to make + master compile after revert of 934c47ed4384daf2819c26306bebba3225807499. + + Revert "totemip: Add support for sin6_scope_id" + This reverts commit 934c47ed4384daf2819c26306bebba3225807499 which is + causing protocol incompatibility in needle. Master seems to be not + affected, but it needs more checking. + +2020-03-30 Hideo Yamauchi <renayama19661014@ybb.ne.jp> + + cfgtool: Fix error code as described in MP + If all links are connected 0 is returned to the shell, otherwise it's + error code 1. + + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2020-03-26 Christine Caulfield <ccaulfie@redhat.com> + + icmap: icmap_init_r() leaks if trie_create() fails + Thanks to Coverity for finding this + + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2020-03-24 Jan Friesse <jfriesse@redhat.com> + + votequorum: set wfa status only on startup + Previously reload of configuration with enabled wait_for_all result in + set of wait_for_all_status which set cluster_is_quorate to 0 but didn't + inform the quorum service so votequorum and quorum information may get + out of sync. + + Example is 1 node cluster, which is extended to 3 nodes. Quorum service + reports cluster as a quorate (incorrect) and votequorum as not-quorate + (correct). Similar behavior happens when extending cluster in general, + but some configurations are less incorrect (3->4). + + Discussed solution was to inform quorum service but that would mean + every reload would cause loss of quorum until all nodes would be seen + again. + + Such behaviour is consistent but seems to be a bit too strict. + + Proposed solution sets wait_for_all_status only on startup and + doesn't touch it during reload. + + This solution fulfills requirement of "cluster will be quorate for + the first time only after all nodes have been visible at least + once at the same time." because node clears wait_for_all_status only + after it sees all other nodes or joins cluster which is quorate. It also + solves problem with extending cluster, because when cluster becomes + unquorate (1->3) wait_for_all_status is set. + + Added assert is only for ensure that I haven't missed any case when + quorate cluster may become unquorate. + + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + +2020-03-13 Jan Friesse <jfriesse@redhat.com> + + quorumtool: exit on invalid expected votes + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + + votequorum: Change check of expected_votes + Previously value of new expected_votes was checked so newly computed + quorum value was in the interval <total_votes / 2, total_votes>. The + upper range prevented the cluster to become unquorate, but bottom check + was almost useless because it allowed to change expected_votes so it is + smaller than total_votes. + + Solution is to check if expected_votes is bigger or equal to total_votes + and for quorate cluster only check if cluster doesn't become unquorate + (for unquorate cluster one can set upper range freely - as it is + perfectly possible when using config file) + + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + +2020-03-04 Jan Friesse <jfriesse@redhat.com> + + cfgtool: Simplify output a bit for link status + Display words connected/disconnected instead of 1/0 and show enabled + status only when link is not enabled (shouldn't happen). + + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + +2020-02-27 Jan Friesse <jfriesse@redhat.com> + + man: Enhance link_mode priority description + Some users found description of priority for passive link_mode + confusing (probably because "priority" word is too + overloaded) so add some redundancy to make description + unambiguous. + + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + + main: Add schedmiss timestamp into message + This is useful for matching schedmiss event in stats map with logged + event. + + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + +2020-02-21 liangxin1300 <XLiang@suse.com> + + totemip: compare sin6_scope_id and interface_num + When user configure a specific interface like vlan + with the same IPv6 link-local address, Corosync should + compare sin6_scope_id with interface_num, to make sure got + the right interface to bind + + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2020-02-17 Jan Friesse <jfriesse@redhat.com> + + totemip: Really remove totemip_copy_endian_convert + + totemip: Remove unused totemip_copy_endian_convert + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + + totemip: Add support for sin6_scope_id + sin6_scope_id was not present in totemip structure making impossible to + use link-local ipv6 address. + + Patch adds sin6_scope_id and changes convert/copy functions to use it + (formally also comparator functions should be changed, but it seems to + cause more harm and it is not really needed). + + This makes corosync work with link-local addresses fine for both UDPU + and Knet transport as long as interface specification is used (so + fe80::xxxx:xxxx:xxxx:xxxx%eth0). + + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + +2020-02-12 Jan Friesse <jfriesse@redhat.com> + + cfgtool: Improve link status display + Totemknet is enhanced to use 'n' character for localhost and not adding + status, because it is safe to expect that localhost link is always + connectd. corosync-cfgtool is enhanced to properly decode 'n', '?' and + 'd' characters and display its meaning for extended status. Special + characters are also documented in man page. + + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + +2020-02-10 Hideo Yamauchi <renayama19661014@ybb.ne.jp> + + totemknet: Change the initial value of the status + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2020-01-23 Jan Friesse <jfriesse@redhat.com> + + stats: Use nanoseconds from epoch for schedmiss + Using monotonic time is not working because it doesn't have to match + time from epoch. + + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + +2020-01-22 Christine Caulfield <ccaulfie@redhat.com> + + stats: Add stats for scheduler misses + This patch add a stats.schedmiss.* set of entries that + are a record of the last 10 times corosync was not scheduled + in time. + + These entries are keypt in reverse order (so stats.schedmiss.0.* is + always the latest one kept) and the values, including the timestamp, + are in milliseconds. + + It's also possible to use a cmap tracker to follow these events, which + might be useful. + + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2020-01-21 Jan Friesse <jfriesse@redhat.com> + + votequorum: Reflect runtime change of 2Node to WFA + When 2Node mode is set, WFA is also set unless WFA is configured + explicitly. This behavior was not reflected on runtime change, so + restarted corosync behavior was different (WFA not set). Also when + cluster is reduced from 3 nodes to 2 nodes during runtime, WFA was not + set, what may result in two quorate partitions. + + Solution is to set WFA depending on 2Node when WFA + is not explicitly configured. + + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + +2020-01-09 Hideo Yamauchi <renayama19661014@ybb.ne.jp> + + cpg: Change downlist log level + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2020-01-07 Ferenc Wágner <wferi@debian.org> + + man: move cmap_keys man page from section 8 to 7 + Section 8 is for "System administration commands", 7 is "Miscellaneous". + + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2019-11-28 Jan Friesse <jfriesse@redhat.com> + + stats: Check return code of stats_map_get + + quorumtool: Assert copied string length + + notifyd: Check cmap_track_add result + And assert length of key_name to strcpy. + + cmapctl: Free bin_value on error + + cfgtool: Remove unused callbacks + + cpghum: Remove unused time variables and functions + + votequorum: Assert copied strings length + + totemknet: Assert strcpy length + + totemknet: Check result of fcntl O_NONBLOCK call + + totemconfig: Initialize warnings variable + + sync: Assert sync_callbacks.name length + + totemknet: Don't mix corosync and knet error codes + And use correct return code in stats.c. + + stats: Assert value_len when value is needed + + cmap: Assert copied string length + + totemconfig: Reuse already fetched pointer + Make code a bit readable and easier to process for coverity. + + logconfig: Remove double free of value + + votequorum: Ignore the icmap_get_* return value + Express intention to ignore icmap_get_* return + value and rely on default behavior of not changing the output + parameter on error. + + totemconfig: Free leaks found by coverity + +2019-11-18 Christine Caulfield <ccaulfie@redhat.com> + + icmap: fix the icmap_get_*_r functions + Make the icmap*_r functions read from the specified map rather + than the global map. + + Also include icmap_get_string_r() which seems to have been missed out. + + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2019-11-18 Fabio M. Di Nitto <fdinitto@redhat.com> + + pkgconfig: Add libqb dependency + To make sure libqb dependency is visible across all libraries. + + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2019-11-08 Jan Friesse <jfriesse@redhat.com> + + Initialize stack allocated memory + Some functions allocated memory on stack without clearing memory and + then send them on wire. This is not an issue, but valgrind reports this + as a problem so it is easy to miss real problem then. + + Solution is to clear stack memory. + + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + +2019-10-17 Thomas Lamprecht <t.lamprecht@proxmox.com> + + man: Fix corosync.conf knet pong count default + commit 029b8ebad60314d3daa285eb945c55355fade389 changed the default + of the KNET_PONG_COUNT from the kronosnet default of 5 to 2, as + corosync bring up was deemed to slow. + + The documentation, and the comment stating that the totem config + default values match the knet ones were not updated, and thus now out + of date. + + Fixhis by noting the correct default of 2 for KNET_PONG_COUNT and + note that all but that one are in sync with the korosync defaults in + the comment. + + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2019-10-09 Jan Friesse <jfriesse@redhat.com> + + totemsrp: Reduce MTU to left room second mcast + Messages sent during recovery phase are encapsulated so such message has + extra size of mcast structure. This is not so big problem for UDPU, + because most of the switches are able to fragment and defragment packet + but it is problem for knet, because totempg is using maximum packet size + (65536 bytes) and when another header is added during retransmition, + then packet is too large. + + Solution is to reduce mtu by 2 * sizeof (struct mcast). + + Reviewed-by: Fabio M. Di Nitto <fdinitto@redhat.com> + + totempg: Check sanity (length) of received message + Reviewed-by: Thomas Lamprecht <t.lamprecht@proxmox.com> + Reviewed-by: Fabio M. Di Nitto <fdinitto@redhat.com> + +2019-10-09 Fabio M. Di Nitto <fdinitto@redhat.com> + + build: add option for enabling sanitizer builds + --with-sanitizers= option is stricly meant for runtime debugging + purposes. Do NOT use in production. + + Please check gcc/clang man pages on how to use ASAN/UBSAN/TSAN. + + Also allow users to specificy SANITIZERS_CFLAGS and SANITIZERS_LDFLAGS + for advanced use. + + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2019-09-10 Jan Friesse <jfriesse@redhat.com> + + totemknet: Add locking for log call + Knet callbacks may be called from different thread than main thread. If + this happens, log messages may be lost. Most prominent example is when + link goes up (logged by main thread) and host_change_callback_fn is + called. + + Implemented solution is adding mutex for every log call in totemknet. + + Reviewed-by: Fabio M. Di Nitto <fdinitto@redhat.com> + +2019-08-27 Jan Friesse <jfriesse@redhat.com> + + man: Fix link_mode priority description + ... to match knet source code. + + Reviewed-by: Fabio M. Di Nitto <fdinitto@redhat.com> + +2019-07-30 Jan Friesse <jfriesse@redhat.com> + + notifyd: Don't dereference NULL key_name + This problem shouldn't really happen, but better safe than sorry. + +2019-07-15 Jan Friesse <jfriesse@redhat.com> + + totem: Increase ring_id seq after load + This patch handles the situation where the leader + node (the node with lowest node_id) crashes and is started again + before token timeout of the rest of the cluster. + The newly restarted node restores the ringid of the old ring from + stable storage, so it has the same ringid as rest of the nodes, + but ARU is zero. If the node is able to create a singleton membership + before receiving the joinlist from rest of the cluster, + everything works as expected, because the ring id gets increased + correctly. + + But if the node receives a joinlist from another cluster node before + its own joinlist, then it continues as it would had it never left + the cluster. This is not correct, because the new node should always + create a singleton configuration first. + + During the recovery phase, ARUs are compared and because they differ + (the ARU of the old leader node is 0), the other nodes + try to sent all of their previous messages. This is impossible + (even if it was correct), because other nodes have already freed most + of those messages. The implementation uses an assert to limit maximum + number of messages sent during recovery (we could fix this, + but it's not really the point). + + The solution here is to increase the ring_id sequence number by 1 after + loading it from storage. During creation of the commit token it is + always increased by 4, so it will not collide with an existing + sequence. + + Thanks Christine Caulfield <ccaulfie@redhat.com> for clarify commit + message. + + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + +2019-07-08 Jan Friesse <jfriesse@redhat.com> + + init: Use cpgtool instead of cfgtool + Init script used to use corosync-cfgtool -s to wait till + corosync accepts ipc connection. Problem with this approach + is that error code is returned not only if ipc cannot be initialized, + but also when one of the ring is marked as failed, making corosync + service not to start. Corosync with one failed ring can work just + fine and there is no need to fail startup. + + Patch is changing call of corosync-cfgtool to corosync-cpgtool. Also to + make spotting of broken ring easier, corosync-cfgtool -s is called after + successful return of the cpgtool, and warning is issued if cfgtool + fails. + + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + + notifyd: Fix warning produced by 32-bit compiler + time_t is platform dependent real type which is usually long int on + 64-bit platform, but only int on 32-bit platform and printing it with + %ld generated warning. + + Solution seems to be ether retype time_t to long int or use functions + which works with time_t. Later option is used in this patch, which uses + localtime and strftime to print time_t value. + + Also code is refactored to remove duplicate calls and add _cs_snmp + prefix to prevent snmp_ prefix collision. + + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + + cfgtool: Remove unused code + corosync_cfg_ring_status_get returns string status, which is always OK + for UDP(U) and detailed status for Knet transport. Previously also + FAULTY status was returned for UDP(U) and cfgtool used to return error + code back to shell when one of the interfaces was faulty. + + Because FAULTY is now not returned, it's not needed to have code for + handling it. + + Also man page was misleading, so it is fixed too. + + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + +2019-07-03 Jan Friesse <jfriesse@redhat.com> + + logging: Add CS_PRI_NODE_ID and CS_PRI_RING_ID + Previously node id was logged ether as a %d (most often), %u, %x or + PRI.32 and ring id ether as %lld, %llx with various separators (., :, /) + between rep nodeid and seq. This seems to cause confusion. + + This patch adds macros CS_PRI_NODE_ID, CS_PRI_RING_ID and + CS_PRI_RING_ID_SEQ (CS prefix = corosync, PRI modeled in spirit of + inttypes.h PRIx32) and makes code use them. + + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + +2019-07-02 Jan Friesse <jfriesse@redhat.com> + + vqsim: Fix gitignore + +2019-06-28 Jan Friesse <jfriesse@redhat.com> + + totemknet: Disable forwarding on shutdown + Disabling forwarding will make knet flush the messages (especially + LEAVE one). + + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + +2019-06-17 Jan Friesse <jfriesse@redhat.com> + + totemconfig: Fix compiler warning + Compiler is unable to understand relation between members and + num_configured and warns about uninitialized members. Instead of + initializing members to 0 and (potentially after some code + refactor) let code fall to display error message, more explicit method + of assert is used. + + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + +2019-06-17 Thomas Lamprecht <t.lamprecht@proxmox.com> + + totem: fix check if all nodes have same number of links + configured links may not come in order in the interfaces array, which + holds an entry for _all_ possible links, not just configured ones. + + So iterate through all interfaces, but skip those which are not + configured. This allows to start corosync with a configuration where + link 0 is currently not mentioned, as else it was checked but had + member_count = 0 from it's default initialization, which then made + this code report a false positive for the "Not all nodes have the + same number of links" check even on a correct config. + + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + + totem: fix check if all nodes have name attrs in multi-link setups + As totem_config->interfaces entries are _all_ possible links and not + only the configured ones we cannot trust that interface[0] is + configured at the time of checking, and thus has a valid + member_count. So set the members variable to the member_count entry + from an actually configured interface and loop over that one. + + This fixes a case where the check for the name property on all nodes + for multi links was skipped if link 0 was not configured, as then its + member_count was 0. + + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2019-06-14 dkutergin <dmytro.kutergin@harmonicinc.com> + + corosync-notifyd: Add option to disable DNS lookup + New configuration option -n is added. + + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2019-06-14 Jan Friesse <jfriesse@redhat.com> + + totemsrp: Fix warnings produced by gcc 9.1 + New gcc warn about passing posibly unaligned pointer from packed + structure. This shouldn't be problem for x86. + + Implemented solution is to let compiler do its job (compiler knows if + pointer is aligned so accessing structure field is safe) and + use it together with support for asigning and returning of structure + (not a pointer to the structure). + + - srp_addr_copy is removed and replaced by simple assignment + - srp_addr_copy_endian_convert is removed and replaced by + srp_addr_endian_convert function which takes srp_addr structure and + returns endian converted srp_addr structure + - functions which accepts srp_addr array are not changed because + (luckily) non-aligned pointer is always just one item array and + such item is always used as a source pointer so it's possible to use + temporary variable + + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + +2019-06-13 Jan Friesse <jfriesse@redhat.com> + + cpg: Move filling of member_list to subfunction + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + Reviewed-by: Fabian Grünbichler <f.gruenbichler@proxmox.com> + + cpg: Add more comments to notify_lib_joinlist + And make handling of left_list more generic. Also free skiplist + allocated by joinlist_inform_clients function. Last (but not least) + remove czechlish founded (should have been pp of "find"). + + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + Reviewed-by: Fabian Grünbichler <f.gruenbichler@proxmox.com> + +2019-06-13 Fabian Grünbichler <f.gruenbichler@proxmox.com> + + cpg: send single confchg event per group on joinlist + using a similar approach to + + 43bead364514e8ae2ba00bcf07c460e31d0b1765 + "Send one confchg event per CPG group to CPG client" + + which did the same for leave events on a network partition. + + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + + cpg: notify_lib_joinlist: drop conn parameter + since it is always set to NULL. + + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2019-06-12 Jan Friesse <jfriesse@redhat.com> + + vqsim: Check length of copied optarg + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + + vqsim: Check result of icmap_set_uint32 + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + + vqsim: Remove unused total_nodes + ... and remove unused nodes_in_partition function. + + Also replace TAILQ_FOREACH with goto to while cycle. + + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + + vqsim: Free allocated newvq on error + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + + vqsim: Check length of received message + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + + vqsim: Check write result + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + + vqsim: Do not access unitialized argv[0] + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + + totemknet: Initialize return value in setup_nozzle + Also add comment why return value is currently not used. + + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + + totemknet: macaddr_str is always set + Check for NULL was invalid, because macaddr_str is ether defined in cmap + or set to "54:54:01:00:00:00". + + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + + totemknet: Ignore icmap_get_string result + ... and add comment why it is not a bug. + + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + + totemknet: create_nozzle_device simplify check + ipaddr existence is checked for being not NULL by caller setup_nozzle. + Also ipaddr was passed to reparse_nozzle_ip_address function unchecked + so code would crash before reaching the actual check. + + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + + totemip: Use res in totemip_sa_equal + Setting res to -1 was not entirely following semantics of "equal" + operation. Set it to 0 and return it when families differs makes + compiler happy. + + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + + totemconfig: ipaddr_equal use switch + Compiler may have problem understanding relation between addr1p and + addrlen. Small change makes code a little more readable and compiler + happy. + + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + +2019-06-10 Jan Friesse <jfriesse@redhat.com> + + configure: Fix GDB_CFLAGS typo + GDB_FLAGS (without C) is the correct name of variable + to print in the summary. + + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + + man: Add vqsim man page into distributed tarball + +2019-06-07 Jan Friesse <jfriesse@redhat.com> + + spec: Add support for user-flags configure option + Passing -ggdb3 (or -g3) during compiler may result in corrupted + debuginfo files (bug in debugedit - for Fedora filed as a + https://bugzilla.redhat.com/show_bug.cgi?id=1708786). Until the bug is + fixed it's possible to ether change configure to add -ggdb2/-g2 or use + already existing --enable-user-flags option and rely on environment set + by rpmbuild. + + Patch implements second option so RPM distros without broken debugedit + are not affected. + + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + + man: Enahnce block_unlisted_ips description + Thanks Christine Caulfield <ccaulfie@redhat.com> for + Englishify and refining the description. + + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + +2019-05-31 Jan Friesse <jfriesse@redhat.com> + + man: Enhance corosync.conf mp a bit + Fix issues found by Ulrich Windl <Ulrich.Windl@rz.uni-regensburg.de> + + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + +2019-05-30 Fabian Grünbichler <f.gruenbichler@proxmox.com> + + cfgtool: Fix link status display + instead of the nodeid, this displayed arbitrary values (usually '1') + from other cmap keys under nodelist.node.XX. + + sscanf returns the number of conversions even on mismatch, e.g. it also + returns 1 for + + nodelist.node.2.quorum_votes + nodelist.node.2.ring0_addr + nodelist.node.2.name + ... + + instead of just + + nodelist.node.2.nodeid + + which leads to the value of (at least) quorum_votes being stored in + nodeid_list in addition to the actual nodeid. + + storing the returned int in a cs_error_t enum also potentially masks + errors, so just compare the result with the expectation directly. + + Fixes: c0d14485c3ebdeb2332f7c48acd155163e5b7fc1 + + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2019-05-29 Jan Friesse <jfriesse@redhat.com> + + knet: Use block_unlisted_ips + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + + udpu: Drop packets from unlisted IPs + This feature allows corosync to block packets received from unknown + nodes (nodes with IP address which is not in the nodelist). This is + mainly for situations when "forgotten" node is booted and tries to join + cluster which already removed such node from configuration. Another use + case is to allow atomic reconfiguration and rejoin of two separate + clusters. + + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + +2019-05-29 Christine Caulfield <ccaulfie@redhat.com> + + knet: Fix initialising of knet access lists. + It needs to be done at both reload and initialize time. + Also disable access lists if the config key is removed. + + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2019-05-29 Fabio M. Di Nitto <fdinitto@redhat.com> + + knet: allow corosync to use knet access lists + currently knet acl are only available on master + but they might be backported + to stable1 as they don´t break onwire protocol. + + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2019-05-28 yuan ren <yren@suse.com> + + man: Enhance token_retransmit description + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2019-05-15 yuan ren <yren@suse.com> + + totemconfig: Fix minimum limit for hold timeout + Make sure the retransmit timeout have the lowest limit + `MINIMUM_TIMEOUT`. So, the lowest limit of hold should be + recalculated. + + Also token timeout and retransmits count should + keep a relational expression. + + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2019-05-13 Christine Caulfield <ccaulfie@redhat.com> + + vqsim: Enhance vqsim + 1. Enable scripting of vqsim and add man page + + I've added a 'sleep' command to help with scripting as well as + documentation on how to do it. + + 2. Make 'sync' operation much more robust and useful + + Refactored a lot of code to make sure that in sync mode the + prompt appears at the 'right' time. What we do is wait for all + of the nodes in all partitions to have the same ring_id. If this + doesn't happen then the timeout will fire as before. + + 3. Rename binary to corosync-vqsim and add a sub-package for it + + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2019-05-02 Christine Caulfield <ccaulfie@redhat.com> + + knet: Fix a couple of errors when adding a new link + When adding a new link for the first time you will often see: + 1) knet_link_set_ping_timers for nodeid 1, link 1 failed: Invalid + argument (22) + 2) New config has different knet transport for link 1. Internal value + was NOT changed. To reconfigure an interface it must be deleted and + recreated. A working interface needs to be available to corosync at all + times + + 1) is caused by setting the ping timers twice, once in + totemknet_member_add() and once in totemknet_refresh_config(). + The first time we don't know the value + so it's zero and thus display an error. For this we simply check + for the zero and skip the knet API call. It's not ideal, but + totemconfig needs a lot of reconfiguring itself before we can + make this more sane. + + 2) was caused by simply comparing an unconfigured link with + a configured one, so OF COURSE, they are going to be different! + + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2019-05-02 yuan ren <yren@suse.com> + + totemconfig: fix autogen mcastaddr for ipv6-4 + When UDP is used as a transport, the error would occur + "Multicast address family does not match bind address family" + because there is no ipv6 in /etc/hosts specified but using the + totem.ip_version: ipv6-4. because + the mcastaddr generated (if not specified) only according to + the totem.ip_version. + + Solution is to use bindnetaddr (configured or generated from + nodelist) addr family. + + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2019-04-25 Jan Friesse <jfriesse@redhat.com> + + totemconfig: Ensure nodeid is specified for IPv6 + Thanks Yuan Ren <yren@suse.com> for finding this problem. + + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + +2019-04-25 Christine Caulfield <ccaulfie@redhat.com> + + vqsim: Fix vqsim for corosync 3.0 + A couple of small internal changes in corosync 3.0 broke vqsim. + 1) The way the custom config file is specified (no long an env variable) + 2) votequorum now needs to know ouZ_node_pos + + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2019-04-24 Jan Friesse <jfriesse@redhat.com> + + vqsim: Make vqsim compile + Also add vqsim binary to .gitignore. + + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + +2019-04-23 Jan Friesse <jfriesse@redhat.com> + + totemconfig: ipaddr_equal check just addr part + Checking whole structure is fine for IPv4, but IPv6 contains also scope + id, what may be problem for local address. It's possible to use a zone + index, but because it's not required when host name is used, it + shouldn't be needed when IPv6 address is used. + + Example configuration snip which fails without patch: + + ... + nodelist { + node { + nodeid: 1 + ring0_addr: fe80::1234:5678:9abc:def1 + } + } + ... + + (example succeed when %eth0 is used). + + With patch, zone index is not needed. + + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + +2019-04-16 Jan Friesse <jfriesse@redhat.com> + + cpg: Add CPG_REASON_UNDEFINED + Previously the reason field for the member_list items + in cpg_totem_confchg_fn was unset what may be little confusing. + + Solution is to add a special value CPG_REASON_UNDEFINED and use it for + the member_list items. + + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + +2019-04-15 Fabian Grünbichler <f.gruenbichler@proxmox.com> + + crypto: re-introduce secauth parameter + with the following semantics: + - default off + - implies crypto_hash SHA256 and crypto_cipher AES256 + - crypto_* have higher precedence + - only applicable for knet, like crypto_* + + this should make upgrading from Corosync 2.x less painful for users that + have an explicit secauth=on in their configuration. + + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2019-04-11 Jan Friesse <jfriesse@redhat.com> + + totemconfig: Remove support for 3des + Triple DES is considered as a "weak cipher" since 2016 so there is + really no need to support it in the corosync. Thanks to bug in + Corosync/Knet/NSS which caused 3des to not work at all, + no matter what library was used, we can just remove support for 3des + without braking the compatibility. + + Also fix coroparse so: + - totem.crypto_type is removed (this is 1.x construct which was not used + even in 2.x) + - Add checking of totem.crypto_model. + - Enumarate possible values for crypto_model, crypto_cipher and + crypto_hash error messages + + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + + keygen: Reflect change in knet + Knet commit 1cb36f0cffd4559971826ca4774a88c5b05882fb reduced minimal + key length to 1024-bit. Keygen should keep compatibility with already + released 3.0.[0-1] so default key length should be 2048 bits. It's + possible to use -s argument to generate shorter key - keygen respects + minimum/maximum as defined by knet. + + Also fix man page to reflect this change. + + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + +2019-04-05 Fabian Grünbichler <f.gruenbichler@proxmox.com> + + set totem.keyfile and totem.key to RO + so that we get the nice log message when attempting to modify them at + runtime, just like for totem.crypto_* and co. + + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2019-04-04 Jan Friesse <jfriesse@redhat.com> + + Revert "init: Enable StopWhenUnneeded" + This reverts commit 03d9321bc80887d4578744c26c05d61e2d9d4278. + + Reverted because when corosync service is not enabled and corosync + is executed by "systemctl start corosync" it is then immediately + shutdown because of "Unit not needed anymore. Stopping.". + + This is really not expected behavior. + + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + +2019-04-01 yuan ren <yren@suse.com> + + totemsrp: Word spelling mistake + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2019-02-26 Jan Friesse <jfriesse@redhat.com> + + coroparse: Fix compiler warning + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + + configure: Do not autodetect nozzle + Nozzle is part of kronosnet but it is independent library. Enabling it + when detected without ability to turn it off is not in line with + other libraries. + + Solution is to use same method as for other libraries - add + --enable-nozzle to configure script and add support for this option into + spec file. + + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + +2019-02-26 Christine Caulfield <ccaulfie@redhat.com> + + nozzle: Add support for libnozzle devices + A nozzle device is a pseudo ethernet device that routes network + traffic through a channel on the corosync knet network (NOT cpg or any + corosync internal service) to other nodes in the cluster. It allows + applications to take advantage of knet features such as multipathing, + automatic failover, link switching etc. + + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2019-02-15 Jan Friesse <jfriesse@redhat.com> + + quorumtool: Fix exit status codes + 1. Use EXIT_SUCCESS and EXIT_FAILURE when possible + 2. For -s option return EXIT_SUCCESS when no problem appeared and node + is quorate, EXIT_FAILURE if problem appeared and exit code 2 + (EXIT_NOT_QUORATE) when no problem appeared but node is not quorate. + 3. Document exit codes in the man page + + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + +2019-02-14 Jan Friesse <jfriesse@redhat.com> + + corosync-cfgtool: Fix -i matching + Previously it was required to use link id together with IP address (ex. + "0 127.0.0.1") as a -i parameter. + + This was reported as not very user friendly. Solution is to split + returned interface name and try match link id and ip address + separately. + + Also fix typo in description of parameter -s. + + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + +2019-02-06 Ferenc Wágner <wferi@debian.org> + + build: Use the AWK variable provided by configure + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + + build: Use the SED variable provided by configure + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + + configure.ac: AC_PROG_SED is already present + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + + corosync.conf.5: typography fixes + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + + corosync.conf.5: fix grammar + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2019-02-04 Christine Caulfield <ccaulfie@redhat.com> + + cfgtool: Improve link status display + Now show the nodeids properly, rather than node indexes which were + annoying and unhelpful. + + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2019-01-18 Jan Friesse <jfriesse@redhat.com> + + doc: Update INSTALL file + - Add LibQB and Knet links + - Remove old (pre udpu) config file example + - Change corosync.conf man page to contain useful information about + token timeout + + Reviewed-by: Fabio M. Di Nitto <fdinitto@redhat.com> + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + +2019-01-11 Jan Pokorný <jpokorny@redhat.com> + + init: Enable StopWhenUnneeded + It shall be a rule of thumb not to combine "application stack" + components run under particular init/supervision mechanism and + run by whatever other means (without transitive relationships + like when corosync's client runs from other pacemaker that is + itself started through systemd) when there's a directed graph + of reliance between them (sans constrained corner cases like + when of such components is a kernel module). + + And corosync on its own is just a service provider that only + appears useful when utilized as a basic building block for + application specific distributed environments. + + Therefore, we may assume whenever corosync gets started by the + means of systemd, it's because of a mechanized attempt to satisfy + declared dependency of some such corosync's client that is about + to be started under the service manager realms (directly or, by + induction, through the same triggering mechanism indirectly). + Hence, when there's no such client around anymore (unless + this dependant is being restarted at the moment, see below) + corosync shall rather shutdown as well. + + In the past, there was an issue with systemd regarding said + inflicted restart of the dependant/client, but that's resolved + as of v236: + https://github.com/systemd/systemd/commit/ + deb4e7080db9dcd2a1d51ccf7c357f88ea863e54 + + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2019-01-11 Jan Friesse <jfriesse@redhat.com> + + totemip: Use AF_UNSPEC for ipv4-6 and ipv6-4 + AF_UNSPEC returns different results than AF_INET/AF_INET6, because of + nsswitch.conf search is in order and it stops asking other + modules once current module success. + + Example of difference between previous and new code when ipv6-4 is used: + - /etc/hosts contains test_name with an ipv4 + - previous code called AF_INET6 where /etc/hosts failed so other methods + were used which may return IPv6 addr -> result was ether fail or IPv6 + address. + - new code calls AF_UNSPEC returning IPv4 defined in /etc/hosts -> + result is IPv4 address + + New code behavior should solve problems caused by nss-myhostname. + + Reviewed-by: Fabio M. Di Nitto <fdinitto@redhat.com> + +2019-01-03 Fabio M. Di Nitto <fdinitto@redhat.com> + + [totemknet] update for libknet.so.2.0.0 init API + more changes are to be expected on this front as the API evolves in + knet master. + + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2019-01-03 Ferenc Wágner <wferi@debian.org> + + Config version must be specified + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + + Don't declare success early + Here we're very far from entering the main loop, even farther from + sending the READY notification to systemd. This sounded awkward: + + systemd[1]: Starting Corosync Cluster Engine... + corosync[827]: [MAIN ] Corosync Cluster Engine ('2.99.5'): + started and ready to provide service. + corosync[827]: [MAIN ] Corosync built-in features: dbus monitoring + watchdog augeas systemd xmlconf snmp pie relro bindnow + corosync[827]: [MAIN ] parse error in config: No interfaces defined + corosync[827]: [MAIN ] Corosync Cluster Engine exiting with status 8 + at main.c:1378. + systemd[1]: corosync.service: Main process exited, code=exited, + status=8/n/a + systemd[1]: corosync.service: Failed with result 'exit-code'. + systemd[1]: Failed to start Corosync Cluster Engine. + + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + + More natural error messages + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2018-12-14 Jan Friesse <jfriesse@redhat.com> + + main: Rename run_dir to state_dir + system.run_dir was a little bit unfortunate and confusing name. Rename + to state_dir makes more evident what is content of this directory. To + keep setting consistent with code, get_run_dir is changed to + get_state_dir. + + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + + totemconfig: Enhance totem.ip_version + Originally totem.ip_version was used to force ip version used by totem. + With Knet this variable didn't make too much sense so it was not used. + + Sadly rely only on DNS resolver order doesn't always work (RFC is quite + complicated, but if IPv6 is not configured then IPv4 is preferred), what + we tried to solve by forcing IPv6 and only if that fails, use IPv4. + + Sadly this collides with nss_myhostname which is able to return every + local address and today system usually have at least one autogenerated + link-local IPv6 address so it is able to "overwrite" /etc/hosts. + + Solution is to enhance totem.ip_version and use it also for Knet. + totem.ip_version is now just a flag for resolver and can have four + states: ipv4 (only IPv4 is used), ipv6 (only IPv6 is used), ipv4-6 (ask + IPv4 first and if it fails ask for IPv6) and ipv6-4 (ask IPv6 first and + if it fails ask for IPv4). Default for Knet and UDPU transports is + ipv6-4, for UDP it's ipv4, because autogenerated mcast addr doesn't play + too well with ipv6-4. + + So everywhere where nss_myhostname becomes problem, it's just possible + to set totem.ip_version to ipv4-6. + + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2018-12-13 Jan Friesse <jfriesse@redhat.com> + + totemip: Add debug information to totemip_parse + It's required to create TOTEM logsys subsys before totemip_parse is used + (so before totem_config_read). Logsys is not yet fully initialized, but + it's good enough. + + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + + totemconfig: Add IPs to family mismatch error + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + +2018-12-11 Christine Caulfield <ccaulfie@redhat.com> + + config: Look up hostnames in a defined order + Current practice is to let getaddrinfo() decide which address we get + but this is not necessarily deterministic as DNS servers won't + always return addresses in the same order if a node has + several. While this doesn't deal with node names that have + multiple IP addresses of the same family (that's an installation issue + IMHO) we can, at least, force a definite order for IPv6/IPv4 name + resolution. + + I've chosen IPv6 then IPv4 as that's what happens on my test system ( + using /etc/hosts) and it also seems more 'future proof'. + + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2018-12-11 Ferenc Wágner <wferi@debian.org> + + Fix corosync.conf.5 manpage typos + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2018-12-10 Christine Caulfield <ccaulfie@redhat.com> + + man: Add some information about address resolution + to corosync.conf(5) + + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2018-12-10 Jan Friesse <jfriesse@redhat.com> + + totemconfig: Really use totemip_parse results + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + +2018-12-06 Christine Caulfield <ccaulfie@redhat.com> + + man: Add instructions for adding/removing nodes + This replaces the 'cmaptool' method previously documented + in cmap_keys.8 + + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + + config: Disallow corosync-cmapctl updates of nodelist + It didn't work anyway (the config system requires whole links + to be configured at once) and caused crashes. + + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2018-12-03 Christine Caulfield <ccaulfie@redhat.com> + + config: Report IP addr/nodename parse errors back + Corosync used to just ignore parse errors so that un-resolved names + could cause silent failures. We now always check the result from + totemip_parse() and at least print something in syslog. + + There's also a little get-out here that allows you to correct + a bad node address without having to destroy and recreate the + whole link. I'm being nice to you. + + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2018-11-29 Jan Friesse <jfriesse@redhat.com> + + coroparse: Remove unused cs_err initialization + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + + cpghum: Check cpg_local_get return code + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + + testcpg2: Check cpg_dispatch return code + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + +2018-11-16 Jan Friesse <jfriesse@redhat.com> + + notifyd: Delete registered tracking keys + Forward port of needle 70fd66767494872b93018949d685f19482cd5bec by Hideo + Yamauchi <renayama19661014@ybb.ne.jp>. + + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + + stats: Fix delete of track + When cmap_track_delete was called to stats map (cmap created with + CMAP_MAP_STATS parameter) result was always ERR_BAD_HANDLE. + + It turned out that corosync part of cmap is always calling icmap + function to get user data (where required hdb handle is stored) + instead of generalized map_fns. + + After fixing this issue, valgrind showed error about jump depending on + unitialized data in stats_map_track_delete. Solution seems to be always + initialize tracker->events (so not only when track_type is add or + delete). + + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + +2018-11-15 Jan Friesse <jfriesse@redhat.com> + + init: Fix init script to work with containers + Previously init scripts were not using pid file so pidof was used. This + is usually not a problem, but when containers are used it may result to + killing improper instance when issued on host. + + Solution is to always use pidfile. + + Also try to use LSB complaint status codes. + + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + + main: Remove COROSYNC_RUN_DIR + Remove last used environment variable (reasons similar to removal of + COROSYNC_MAIN_CONFIG_FILE). + + This environment variable was never documented, so document it properly. + + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + + man: Describe nodelist.node.name properly + Old description is no longer true, because with knet transport name got + new and very important role. + + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + + main: Remove COROSYNC_TOTEM_AUTHKEY_FILE + Remove another environment variable (reasons similar to removal of + COROSYNC_MAIN_CONFIG_FILE). + + Also properly document both totem.keyfile and totem.key. + + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + + main: Replace COROSYNC_MAIN_CONFIG_FILE + COROSYNC_MAIN_CONFIG_FILE environment variable was quite well hidden + and it was never used by init script. It also makes quite hard to debug + possible problems. + + Replace it by -c option. + + Also patch makes use of configuration file path as a base for uidgid.d + directory, so it's no longer needed to keep uidgid.d in sysconfdir. + + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + + main: Move sched paramaters to config file + The reason for this change is, that number of corosync CLI options + kind of exploded and scheduler based one are really beter to be kept in + config file. + + Nice side-effect of this move is better "integration" with systemd, + because currently used EnvironmentFile should be really used for + environment and not that much for passing extra options to CLI. + + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + +2018-11-07 Jan Friesse <jfriesse@redhat.com> + + configure: move to AC_COMPILE_IFELSE + from AC_PREPROC_IFELSE which is strongly discouraged. + + Our detection system was very weak and recent versions of clang did + show that PREPROC_IFELFE (cpp) would enable warning options that + the compiler does not support (clang). + + Use a full compilation test to detect what works and what doesn't. + + Based on knet patch 88491f27375a9e8aceb946853a1abf4d23ebb8f3. + + Reviewed-by: Fabio M. Di Nitto <fdinitto@redhat.com> + +2018-10-29 Jan Friesse <jfriesse@redhat.com> + + logsys: Make hires timestamp default + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + + logsys: Support hires timestamp + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + + totemconfig: Fix logging of freed string + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + +2018-10-25 Christine Caulfield <ccaulfie@redhat.com> + + config: Allow generated nodeis for UDP & UDPU + The conversion to the new srp_addr format broke the feature where + UDP/UDPU nodes could get their nodeids generated from the IP address. + + A big part of this was the removal of mandatory ring0_addr - it was used + as a placeholder when reading down the nodelist. I replaced this with + nodeid thinking that nodeid was now mandatory, forgetting this use case. + So the compare on "ring0_addr" or "nodeid" is now replaced with a more + robust check that we're only reading keys from the same node_pos once, + this was needed in votequorum.c as well as totemconfig.c + + Another tidying side-effect of this patch is that the nodeid generation + is now all in a single routine in totemconfig.c and not shared between + it and totemip.c. + + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2018-10-22 Jan Friesse <jfriesse@redhat.com> + + config example: Migrate to newer syntax + Default config is knet with nodelist so extra udpu example is no longer + needed. + + XML variant of corosync config never got expected usage, so delete + example config too. + + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + +2018-10-16 Jan Friesse <jfriesse@redhat.com> + + log: Implement support for reopening log files + Feature depends on existence of libqb function qb_log_file_reopen. + + New function call is added into CFG service API. This function is + used by corosync-cfgtool which now accepts -L parameter. + + Finally, logrotate "postrotate" script is calling + corosync-cfgtool -L to notify corosync, instead of using + copytruncate option. + + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + + totemconfig: Replace strcpy by strncpy + Formally not needed, because totemip_print should not return string + longer than INET6_ADDRSTRLEN, but static analysis tools are not capable + of such conclusion. + + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + +2018-10-15 Christine Caulfield <ccaulfie@redhat.com> + + config: Fix crash in reload if new interfaces are added + This is a bug I seem to have introduced in + 429209f4aa3c55504a49833e0004489f241e7819 where we compare links + for changes. if a new node was added on an existing link then it + was compared against a non-existant one in the previous configuration. + We now only compare nodes that are in both interfaces. + + As I needed min() for this function, I moved it from individual + .c files into util.h so we only have one copy. + + And the error message was fixed. + + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2018-10-04 Jan Friesse <jfriesse@redhat.com> + + man: Fix default knet_pmtud_interval to match code + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + +2018-09-27 Jan Friesse <jfriesse@redhat.com> + + build: Remove totempg shared library leftovers + Because totempg is not distributed it doesn't make sense to distribute + totem header files. Also pkgconfig file should not be created any more. + + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + +2018-09-25 Jan Friesse <jfriesse@redhat.com> + + build: Do not compile totempg as a shared library + Instead of compiling totempg as a shared library, compile all totem code + directly into corosync binary. + + Main idea of having totempg which may be + used in other projects was nice, but never really finished (and as far + as I know no project were ever really using it). So at the end of the + day, we've end with huge amount of problems (need to pass new arguments + thru X layers, hard debugging, ...) without any real benefit. + + For a future version, we may consider to revisit idea of split totemsrp + into well tested library without unrelated bits like transports/ip/... + + Reviewed-by: Fabio M. Di Nitto <fdinitto@redhat.com> + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + +2018-09-24 Ferenc Wágner <wferi@debian.org> + + man: Fix typo conains -> contains + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + + man: Fix typo connnections -> connections + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2018-09-17 Jan Friesse <jfriesse@redhat.com> + + build: Remove NSS dependencies + Complete removal of NSS from corosync tree. Most of the changes are + in build system and cpgverify had to be rewritten to use crc32 instead + of sha1. + + Reviewed-by: Fabio M. Di Nitto <fdinitto@redhat.com> + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + + cts: Remove CTS + There are several reasons for removal of CTS: + 1. It's not actively maintained + 2. It's quite hard to setup + 3. It has hard to fix bug in it's design (syslog messages are thrown by + rsyslog (configurable), journald (configurable) or when rsyslog is + used together with journald (non configurable)) so test + can fail just because of lost message. + 4. It depends on pacemaker CTS, which is changed quite often + 5. CTS itself is great tool for Pacemaker + (shutdown/startup of the node), but Corosync has a slightly + different needs + 6. Bin Liu <bliu@suse.com> made a heroic effort to port it to Python 3 + (huge thanks), but it's still not fully complete + + All and all, if somebody is interested in maintaining CTS code, please + create repository similar to corosync flatiron cts and let us know. + + Reviewed-by: Fabio M. Di Nitto <fdinitto@redhat.com> + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + +2018-09-13 Jan Friesse <jfriesse@redhat.com> + + man: Fix crypto_hash and crypto_cipher defaults + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + +2018-09-07 Jan Friesse <jfriesse@redhat.com> + + coroparse: Fix newly introduced warning + Small fix for a problem introduced by "coroparse: Use key_name for error + message" patch. + +2018-09-07 Chris Walker <cwalker@cray.com> + + Add option to force cluster into GATHER state + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2018-09-06 Jan Friesse <jfriesse@redhat.com> + + coroparse: Use key_name for error message + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + + coroparse: Add file name and line to error message + It's just much easier to find out what is happening when message like + + parser error: /etc/corosync/corosync.conf:39: Unexpected closing brace + + is logged instead of + + parser error: Unexpected closing brace + + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + + coroparse: Be more strict in what is parsed + Corosync parser is not very clever, but it is able to detect more errors + without too much code. + + 1. Check if section name is not empty (just '{' character) + 2. Check if there is no extra characters after opening bracket '{' + 3. Check if there is no extra characters after or before closing bracket + '}' + 4. Check if line is opening section, closing section or key/value + + So following examples are reported as error: + + totem { + version: 2 + }}}}}}}}}} + + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + + coroparse: Fix remove_whitespace end condition + When remove_whitespace function parameter is single character string + with whitespaces (like a:) then colon is not removed. Reason is end + condition end != start, which is valid for empty string, but invalid in + case described above. Solution is to check if *end is '\0'. + + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + + coroparse: Check icmap_set results + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + + coroparse: Return error if config line is too long + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + +2018-09-05 Jan Friesse <jfriesse@redhat.com> + + notifyd: Propagate error to exit code + When it's impossible to dispatch cmap/quorum messages exit code of + corosync-notifyd shouldn't be success. + + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + +2018-09-03 Jan Friesse <jfriesse@redhat.com> + + git-version-gen: Fail on UNKNOWN version + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + + build: Support for git archive stored tags + Attempt to solve problem with git archive generated tarballs + (used for example by github when release is downloaded) which are no + longer git tree and (in contrast to officially released tarballs) also + doesn't contain .tarball-version file so git-version-gen script simply + cannot obtain valid version info. + + Solution is based on using gitattributes which is instructs git to + replace string in the .gitarchivever file by known ref names. + git-version-gen is enhanced to support this file and tries to parse + any string which looks like "tag: v[0-9]+.[0-9]+.[0-9]". If such string + is found it's used as a version. This file is used as a last attempt and + other methods (.tarball-version, git abbrev) have precedence. + + Based on idea stated by Jan Pokorný <jpokorny@redhat.com>. + + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + +2018-08-20 Ferenc Wágner <wferi@debian.org> + + man: fix cmap key name runtime.config.totem.token + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2018-08-14 Jan Friesse <jfriesse@redhat.com> + + Remove libcgroup + Libcgroup is deprecated and not shipping with new distributions + (OpenSuSE is one example). Solution is to have a partial implementation + of required functionality of libcgroup in the corosync code. + + Patch uses hardcoded cgroup mount point, because most of the systems are + now systemd and systemd is also using hardcoded mountpoint (see + https://github.com/systemd/systemd/blob/master/src/core/mount-setup.c) + + Configuration option --enable-cgroup is gone, because it's not needed + any longer. + + Big thanks to Christine Caulfield <ccaulfie@redhat.com> for example of + simplified implementation of cgroup management code primitives. + + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + +2018-08-14 Jan Pokorný <jpokorny@redhat.com> + + systemd: prevent redundancy in journal + Originating from a dual sink (stderr and syslog). + + Annotated example from "journalctl -b --no-hostname -u corosync": + + Aug 14 00:27:45 corosync[5203]: [MAIN ] Corosync Cluster + Engine ('2.99.3'): started and ready to provide service. + ^ from syslog source + Aug 14 00:27:45 corosync[5203]: notice [MAIN ] Corosync Cluster + Engine ('2.99.3'): started and ready to provide service. + ^ from stderr source + + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2018-08-14 Chris Walker <cwalker@cray.com> + + Add token_warning configuration option + Token_warning is used to present information about + when the token was last received. + + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2018-08-13 Jan Friesse <jfriesse@redhat.com> + + corosync-notifyd: Rename global local_nodeid + To prevent warning in functions where local_nodeid is also passed as + local parameter. + + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + + totemsrp: Add assert into memb_lowest_in_config + Add assert when there are no members in token_memb structure so + non-existing member is not accessed (token should always have + at least one member). + + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + + totemconfig: Enlarge error_string_response + ... so error_reason can be fully included into parse error message. + + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + + ipc_glue: Fix strncpy in pid_to_name function + Trailing zero is always added so there is no need to have a warning + about unterminated destination string. + + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + + cmap: Fix strncpy warning in cmap_iter_next + cmap_iter_next in contrast of it's icmap counterpart copies key name + into user preallocated space. In the worst case, key name may be + CMAP_KEYNAME_MAXLEN, so cmap_iter_next then need CMAP_KEYNAME_MAXLEN + + additional byte to store zero. strncpy was copying only + CMAP_KEYNAME_MAXLEN characters so there was possibility of unterminated + string. + + Patch solves this by using memcpy and always add trailing zero. + Documentation was improved suggesting minimum size of keyname buffer to + be CMAP_KEYNAME_MAXLEN + 1. + + Also sam and quorumtool were using too short buffer so they are fixed too. + + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + + util: Fix strncpy in setcs_name_t function + Trailing zero is always added so there is no need to have a warning + about unterminated destination string. + + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + + totemknet: Free instance on failure exit + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + +2018-08-09 Jan Friesse <jfriesse@redhat.com> + + spec: Add explicit gcc build requirement + Also remove %clean macro which is not needed for ages. + +2018-08-09 Chris Walker <cwalker@cray.com> + + Add option for quiet operation to corosync-cmapctl + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2018-07-12 Jan Friesse <jfriesse@redhat.com> + + totemudpu: Pass correct paramto totemip_nosigpipe + Fixes compilation on (at least) FreeBSD. + +2018-07-12 Bin Liu <bliu@suse.com> + + totemudpu: Add local loop support + This patch intends to solve long time ifdown corosync problem. Idea is + to use local socket for sending both unicast and multicast messages if + interface is down. + + Together with testing what is current bind state it's possible to keep + pretending existence of old IP address instead of rebinding to localhost + what breaks a lot things badly. + + Heavilly based on Yu, Zou <zouyu@shiqichuban.com> work and it's + basically port of UDP patch created by + Jan Friesse <jfriesse@redhat.com>. + + (ported from needle 96354fba72b7e7065610f37df0c0547b1e93ad51) + + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2018-07-03 Christine Caulfield <ccaulfie@redhat.com> + + config: Fail config validation if not all nodes have all links + KNET requires that all links be full-mesh (this may change in the future + but almost certainly not before knet 2.0), so enforce this in the + config. + + Also avoid a potential div-by-0 error if the local node is not fully + configured either. + + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + + config: Enforce use of 'name' node attribute in multi-link clusters + If the local host does not have a 'name' attribute and the cluster + has more than one link then fail the validation test. + + I'm open to the idea of checking all of the nodes in the nodelist + if necessary. It seems overkill as each node will check its own + entry though. + + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2018-07-02 Christine Caulfield <ccaulfie@redhat.com> + + totemconfig: Check for things that cannot be changed on the fly + There are a few things in the interface that cannot be changed on the + fly. Warn about them and tell the user that these things need to be done + in two steps and why. + + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2018-07-02 Jan Friesse <jfriesse@redhat.com> + + Fix snprintf warnings + Compiler shows warnings about possible not large enough buffer, so check + snprintf return value properly. + + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + + init: Use existing env variable from sysconf + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + + upstart: Remove notifyd upstart unit + Hopefully this is last upstart bit. + + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + +2018-07-02 Christine Caulfield <ccaulfie@redhat.com> + + knet: Don't try to create loopback interface twice + It wasn't hardmful, but it generated an annoying message + + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + + knet: Fix knet log buffer size + knet sends log messages as struct knet_log_msg, not a string + of KNET_MAX_LOG_MSG_SIZE (which is only part of that structure). + So we were both losing and corrupting messages. + + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2018-04-30 Jan Friesse <jfriesse@redhat.com> + + cpg: Inform clients about left nodes during pause + Patch tries to fix incorrect behaviour during following test-case: + - 3 nodes + - Node 1 is paused + - Node 2 and 3 detects node 1 as failed and informs CPG clients + - Node 1 is unpaused + - Node 1 clients are informed about new membership, but not about Node 1 + being paused, so from Node 1 point-of-view, Node 2 and 3 failure + + Solution is to: + - Remove downlist master choose and always choose local node downlist. + For Node 1 in example above, downlist contains Node 2 and 3. + - Keep code which informs clients about left nodes + - Use joinlist as a authoritative source of nodes/clients which exists + in membership + + This patch doesn't break backwards compatibility. + + I've walked thru all the patches which changed behavior of cpg to ensure + patch does not break CPG behavior. Most important were: + - 058f50314cd20abe67f5e8fb3c029a63b0e10cdc - Base. Code was significantly + changed to handle double free by split group_info into two structures + cpg_pd (local node clients) and process_info (all clients). Joinlist + was + - 97c28ea756cdf59316b2f609103122cc678329bd - This patch removed + confchg_fn and made CPG sync correct + - feff0e8542463773207a3b2c1f6004afba1f58d5 - I've tested described + behavior without any issues + - 6bbbfcb6b4af72cf35ab9fdb4412fa6c6bdacc12 - Added idea of using + heuristics to choose same downlist on all nodes. Sadly this idea + was beginning of the problems described in + 040fda8872a4a20340d73fa1c240b86afb2489f8, + ac1d79ea7c14997353427e962865781d0836d9fa, + 559d4083ed8355fe83f275e53b9c8f52a91694b2, + 02c5dffa5bb8579c223006fa1587de9ba7409a3d, + 64d0e5ace025cc929e42896c5d6beb3ef75b8244 and + b55f32fe2e1538db33a1ec584b67744c724328c6 + - 02c5dffa5bb8579c223006fa1587de9ba7409a3d - Made joinlist as + authoritative source of nodes/clients but left downlist_master_choose + as a source of information about left nodes + + Long story made short. This patch basically reverts + idea of using heuristics to choose same downlist on all nodes. + + (ported from needle 9c2a97f4f96b9639d07e2a9fe378c28ab1963191) + + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + +2018-04-25 Chris Lamb <lamby@debian.org> + + man: Make the manpages reproducible + Whilst working on the Reproducible Builds effort [0], we noticed + that corosync could not be built reproducibly. + + This is because, whilst it uses SOURCE_DATE_EPOCH[1], the output + varies depending on the current timezone. + + (The LC_ALL is not needed as we only use %Y-%m-%d) + + This was originally filed in Debian as #896441. + + [0] https://reproducible-builds.org/ + [1] https://reproducible-builds.org/specs/source-date-epoch/ + [2] https://bugs.debian.org/896441 + + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2018-04-23 Jan Friesse <jfriesse@redhat.com> + + totemsrp: Fix leave message regression + Leave message in totem is just join message where leaving member is + excluded from member list and included in fail list. It also contains + special nodeid in header.nodeid and system_from.nodeid fields. + + Before "totem: Use nodeid ONLY in srp_addr" fix, most of the functions + were using system_from addresses and not nodeid, which was used only in + one specific case for memb_consensus_set function. + + After the patch, addresses are gone and only nodeid is used. Result is, + that leaving node nodeid is not added into local fail list + (my_faillist) so node is unable to reach consensus till token timeout, + which starts new gather process. + + Solution is to send valid leaving node nodeid in system_from.nodeid and + handle specific case for memb_consensus_set in memb_join_process. + + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + + totemsrp: Log proc/fail lists in memb_join_process + These information are useful and with trace log level they should not be + too much irritating. + + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + + totemsrp: Fix srp_addr_compare + There is regression caused by "totem: Use nodeid ONLY in srp_addr" patch + in srp_addr_compare function. This function should be usable with qsort, + so it should return values less than, equal to or greater than zero. It + was however returning only zero or negation of a zero. Final results + were unable to reach consensus in following test case: + - 3 node cluster + - start nodes 1, 2, 3 + - shutdown node 3 + - start node 3 + - shutdown node 2 + - start node 2 + - shutdown node 1 + + After this steps, node 2 and 3 were unable to reach consensus. + + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + +2018-04-23 Ferenc Wágner <wferi@debian.org> + + tools: don't distribute what we can easily make + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2018-04-23 Fabio M. Di Nitto <fdinitto@redhat.com> + + Drop all references to SECURITY file + File was removed by 6bdf0962ad035ac659bcbf36a918fe39931ed75d. + Patch fixes master branch build again. + + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2018-04-20 Jan Friesse <jfriesse@redhat.com> + + SECURITY: Remove SECURITY file + Basically no information from SECURITY file is valid. + + Library interface and related uidgid are better described in manpages. + + LibNSS is not directly used any longer. + + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + +2018-04-20 Ferenc Wágner <wferi@debian.org> + + NSS_NoDB_Init: the parameter is reserved, must be NULL + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + + Fix typo: defualt -> default + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + + Fix typo: sucesfully -> successfully + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2018-04-12 Jan Friesse <jfriesse@redhat.com> + + totemsrp: Check join and leave msg length + If number of proc_list, failed_list or active members is too high it + may be impossible to put them into message, which is allocated on the + stack what results in stack corruption. + + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + + totemsrp: Implement sanity checks of received msgs + Sanity checkers are used to prevent crashing because of + accessing unallocated memory. + + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + +2018-04-11 Rytis Karpuška <rytisk@neurotechnology.com> + + cpg: Handle fragmented message sending interrupt + It turns out that there are some legitimate cases where fragmented + messages might be interrupted during sending (e.g. CS_ERR_TRY_AGAIN or + as in my case: CS_ERR_INTERRUPT). This creates a situation where + LIBCPG_PARTIAL_FIRST is sent multiple times before receiving + LIBCPG_PARTIAL_LAST. + + Solution is to drop incomplete message and start assembly of new message + as libcpg should have reported error during sending of that + incomplete message. + + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2018-03-16 Jan Friesse <jfriesse@redhat.com> + + totem: Display IP of sender + To make finding victim of incompatible messages easier, IP of sender is + logged. Propagating IP in layers makes patch slightly larger. + + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + + totemsrp: Add magic and version into header + Magic number (0xC070) together with version in every packet + is used for detecting that other node is really + Corosync 3.x. + + Endian_detector field is removed and magic number is now + used instead. + + If received packet magic number differs, guessing is used to show more + about the source (Corosync 2.3+, 2.2 are quite reliable, Knet and + unencrypted Corosync 2.1/2.0/1.x/OpenAIS are semi-reliable and encrypted + Corosync 2.1/2.0/1.x/OpenAIS are quite unreliable). + + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + +2018-03-16 Christine Caulfield <ccaulfie@redhat.com> + + knet: Fix display of links with unconfigured link0 + because totemknet always configures link0 as loopback even + if it's not known to corosync, we need to filter it + out when returning the link status, as things get misaligned + in cfg. + + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2018-03-02 Jan Friesse <jfriesse@redhat.com> + + main: Set errno before calling of strtol + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + + quorumtool: Don't set our_flags without v_handle + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + + sam_test_agent: Remove unused assignment + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + + blackbox: Quote subshell result properly + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + + init: Quote subshell result properly + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + +2018-03-01 Christine Caulfield <ccaulfie@redhat.com> + + cfgtool: Don't assume link ID is a single char + For the moment link-ids are a single digit, but that could change and + the tools shouldn't be quite so fragile. So parse the interface_name + properly by looking for the space between the linkID and the IP. + + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + + knet: Always use link0 for loopback + Even if it's not used for anything else. + + Also, make cfgtool show the correct link ID when links are not + contiguous + + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + + totem: Fix debug warnings printed by knet + Fix crash introduced a couple of commits ago in iface_get + + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + + config: Allow use of ring0_addr + Allow ring0_addr to be used in place of 'name' for + backwards compatibility + + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + + config: Update message when local host isn't found + Make the message more representative of what's going on. + + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + + cfg: Fix cfg_get_node_addrs so that DLM works + Also update copyright dates + + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + + totem: Return interface count correctly + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + + totem: Use nodeid ONLY in srp_addr + This shrinks the srp_addr (and consequently every packet sent by + corosync) so that instead of containing loads of IP addresses to + identify a node, it just sends the nodeid. + + This then allows us to make ring0 optional and replaceable when running + knet. + + It also means that we need some other way of identifying the local + node in corosync.conf, so the nodelist.node.name entry is now mandatory + and is mapped to the local host using the same algorithm as used in + cman. + + This code needs LOTS of testing as it touches a huge amount of totemsrp + and totemconfig. + + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2018-02-14 Fabio M. Di Nitto <fdinitto@redhat.com> + + [rpm] use rpm macros to identify build distro + thanks Honza for spotting it + + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + + [rpm] fixup corosync.spec.in to build on opensuse + - move dbus-devel and nss-devel BuildRequires to file based depedency. + Those 2 BR have different names in OpenSUSE vs Fedora/RHEL/Centos. + This is kind of controversial as most distribution prefers a package + based build depedency, but the rpm version that supports + BuildRequires: foo || bar + is only available in rawhide and tumbleweed (aka no stable releases + are shipping it yet). + In order to build rpms in CI and have some level of flexibility + with upstream spec file, we need to compromise a bit. + + - add explicit --docdir + OpenSUSE does not ship docs in the normal dir and their rpm macro + does not appear to set it for us. + + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2018-02-09 Rytis Karpuška <rytisk@neurotechnology.com> + + totempg: Fix corrupted messages + Commit 899cb299831fea479ca8bc64d99fb1fce215d795 changed copy_len + to iovec[i].iov_len, assuming, + copy_len is always the same as iovec[i].iov_len under those + circumstances, but it missed the possability of small message being + partly put at the end of packet, which cuts this message in two parts + and therefore making copy_len not equal to iovec[i].iov_len. + + This is revert of 899cb299831fea479ca8bc64d99fb1fce215d795 + + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2018-02-08 Rytis Karpuška <rytisk@neurotechnology.com> + + totempg: use iovec[i].iov_len instead of copy_len + To be more explicit that we are copying whole message. + + Related to 0ebae6b47d39940c62dcbd9185b9af2f265a47ff. + + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + + totempg: Fix fragmentation segfault + The problem was that two or more messages were concatenated + together during fragmentation in mcast_msg() function. In specific case, + message of just short of 1MB was provided for mcast_msg() and it + happened so, that the remainder (212 bytes to be exact) left some free + space in packet, therefore branch + + if ((copy_len + fragment_size) < + (max_packet_size - sizeof (unsigned short))) { + ... + + was selected and this was the last mesage in provided iovec. + Then, on the second call, came another big message (about 300KB ) and + during fragmentation mcast.fragmented was set to 1. + + On the other end, while receiving messages, due to missing + mcast.fragmentation==0 those two messages were concatenated and + therefore assembly->data array overflowed overwriting linked list + pointers and offset (which happened to be set to 0 and that 300KB + message was being copied from the beginning again). + After whole 300KB message has been sent, mcast.fragmentation==0 arrived + and totempg_deliver_fn() tried to move assembly structure to + assembly_list_free list, but as linked list pointers has been overriden, + segfault occured. + + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2018-02-05 Fabio M. Di Nitto <fdinitto@redhat.com> + + [build] fix build with non-standard knet location + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + + [man] fix regression introduced by 7162e75dcf81b7e475536e3060bf5e9312cd43b8 + +2018-01-30 Christoph Berg <myon@debian.org> + + Man: Move overview mp to sections 3 and 7 from 8 + The _overview manpages are not actually commands and hence do not belong + into manpage section 8. Move corosync_overview to section 7 + ("Miscellaneous") and the other *_overview pages to section 3 as they + contain API documentation (cf. string(3) for precedence of + multi-function manpages). + + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2018-01-30 Jan Friesse <jfriesse@redhat.com> + + logging: Close before and open blackbox after fork + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + + logging: Make blackbox configurable + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + +2018-01-26 Andrey Ter-Zakhariants <at1984z@live.com> + + corosync-notifyd: improve error handling + Better handling of errors in _cs_cmap_members_key_changed(). + + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2018-01-25 Jan Friesse <jfriesse@redhat.com> + + spec: Modernize spec to comply with newest Fedora + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + + build: Remove support for upstart + Upstart files were already mostly removed but not from spec file and + configure.ac. + + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + + build: Replace -lknet with autoconf generated vars + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + + build: Remove rdma/ibverbs + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + + qdevice: Remove qdevices + corosync-qdevice and corosync-qnetd now has a new home + https://github.com/corosync/corosync-qdevice + + This will allow us to better react on actual needs of quite independent + projects. + + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + +2018-01-18 Christine Caulfield <ccaulfie@redhat.com> + + config: Don't fudge port numbers + When I was adding knet I wanted the port numbers to default to the + base port number + the linknumber. + + However I seem to have messed this up such that any port number + specified in the config file has the link number added to it. Which + is almost certainly not what people would expect. + + This patch sets it right. If a port number is not specified + then 5405+linknumber is used. If a port number IS specified + then that actual number is used. + + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2018-01-15 Christine Caulfield <ccaulfie@redhat.com> + + knet: Allow ping_timers to be auto-configured + knet ping_timers are auto-configured according to token value. + + This patch also fixes some knet config bugs that resulted in defaults + not being applied when values were removed from corosync.conf. + + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2018-01-15 Bin Liu <bliu@suse.com> + + cts: Make code compatible with Python 3 + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + + corosync-notifyd: make SNMP work again + rrp_faulty_fn in notify_callbacks no longer exists, and now become + link_faulty_fn, and also link_faulty_fn needs 5 arguments while + rrp_faulty_fn needs 4. + + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2018-01-11 yuskiida <yusk.iida@gmail.com> + + build: Add the headers necessary for RPM build + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2018-01-09 Christine Caulfield <ccaulfie@redhat.com> + + config: if local node addr is wrong, fail with a sensible message + If no valid local address is found in corosync.conf then corosync + exits with: "parse error in config: No multicast port specified" + + This is because of the config change for knet that always populates + the interfaces. The old error of "no interfaces found" was only + slightly better anyway IMHO. + + This patch adds an explicit check that local_node_pos has been + set in icmap and uses that to determine if a valid local address + has been found. + + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2018-01-09 Jan Friesse <jfriesse@redhat.com> + + totemknet: Drop truncated packets on receive + This is backport of part of "totemudpu: Scale receive buffer" patch. + + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + + totemudp: Make use of UDP_RECEIVE_FRAME_SIZE_MAX + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + + totemudpu: Export and rename UDPU_FRAME_SIZE_MAX + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + + totemconfig: Fix UDP autogeneration of mcast addr + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + + totemudpu: Scale receive buffer + Receive buffer should be based on PROCESSOR_COUNT_MAX and not static + buffer. + + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + +2018-01-05 Christine Caulfield <ccaulfie@redhat.com> + + config: Allow selection of crypto_model + KNET has options for nss or openssl crpyto libraries, make this + available to corosync. + + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2018-01-04 Rytis Karpuška <rytisk@neurotechnology.com> + + libcpg: Fix issue with partial big packet assembly + Packet assembly is done seperately for each nodeid, pid pair, therefore + multiple packets are not mixed into single buffer. + + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2018-01-02 Bin Liu <bliu@suse.com> + + qdevice: mv free(str) after port validation + in the previous code of qdevice_net_instance_init_from_cmap: + host_port = strtol(str, &ep, 10); + + free(str); + + if (host_port <= 0 || host_port > ((uint16_t)~0) || *ep != '\0') + + before free, *ep is '\0'. But after free, *ep changed to 'U', so mv + free behind the comparison. + + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2017-12-22 Toki Winter <toki@linuxfoundation.org> + + corosync.aug: Add missing options + Knet related options are not yet included. + + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2017-12-22 Christine Caulfield <ccaulfie@redhat.com> + + config: Allow links to have different ip_versions + knet allows links to have different IP versions - proivided they + all match per link. So don't force them all to be the same. + + I've added a check here to make sure that all nodes on the same + link are using the same IP version. + + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2017-12-05 Bin Liu <bliu@suse.com> + + Fix compile errors in qdevice and vqsim on FreeBSD + Some header files need to be specified on FreeBSD, otherwise there + are compile errors. These files does not affect Linux compilation. + + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2017-12-01 Christine Caulfield <ccaulfie@redhat.com> + + cmapctl: mention the Clear stats option in usage message + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2017-12-01 Bin Liu <bliu@suse.com> + + corosync-cfgtool: refactor cli parameters handling + use the idea from corosync-cmapctl to set ACTION and params in the first + swtich, and add another swtich to call function based on ACTION and the + params. + + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + + wd: fix snprintf warnings + When running ./configure --enable-watchdog, gcc 7.2.1 will report + warnings for snprintf. This patch fixes the warnings. + + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2017-11-30 Christine Caulfield <ccaulfie@redhat.com> + + totemsrp: Revert totemsrp_get_ifaces() changes + In my enthusiasm for removing code while integrating knet I + also deleted the correct code for returning IP address for a node, + so that only the IP addres of the local node was ever returned. + + This commit restores the the previous code. + + Also, because we always return INTERFACE_MAX interfaces now (they don't + have to be contiguous) set ss_family to zero if that interface is not + in use so that downstream apps know and don't display a lot of 0.0.0.0 + + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2017-11-30 Jan Friesse <jfriesse@redhat.com> + + man: Add note about corosync not using name option + +2017-11-30 Jan Pokorný <jpokorny@redhat.com> + + corosync.conf: publicize nodelist.node.name + It was discovered that pacemaker has been occassionaly relying on + those items configured in corosync.conf (and documenting so), while + backpropagation got stuck somewhere. As the option is deemed generally + beneficial, rectify this gap now and make it standard, + public part of the configuration space, possibly also for other + client SW to use now. + + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2017-11-29 Bin Liu <bliu@suse.com> + + man: fixes for corosync.conf man page + 1. multicast address/port is only for UDP + 2. change kronosnet to Kronosnet + 3. nodeid must be set with KNET, not UDPU + + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + + cmapctl: add "-m" option into help message + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + + totemconfig: remove duplicate aes256 test + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2017-11-27 Bin Liu <liu4480@126.com> + + fix output format for corosync-cfgtool with knet (#283) + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com>
+ +2017-11-16 Jan Friesse <jfriesse@redhat.com> + + sync: Call sync_init of all services at once + This patch solves situation which can happen very rearly: + - Node B is running + - Node A is started and tries to create singleton membership. It also + initialize service S which tries to send message during initialization + - Just before node A finished move to operational state, it gets + Node B multicast message so moves to gather state + - Node A and B creates membership and moves to operational state and + sync is started + - Node A and B receives message sent by node A during initialization of + service S + - Node A exits before sync of service is finished + + In this situation, node B may never execute sync_init for + service S. So node B service S is not aware of existence of node A but + it received message from it. + + Similar situation can theoretically also happen during merge. + + Solution is to change flow of sync, so now it looks like: + + - Build service_list + - Call sync_init for all local services + - Send service_list + - Receive service_list from all members and send barier + - For all services: + - Receive barier + - Call sync_activate if this is not first service + - Call sync_process for next service or finish sync if previous + this service is the last one + - Send barier + + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + + sync: Remove unneeded determine sync code + Code was used for compatibility with old sync v1 (in needle this was + deleted and previous version 2 became v1), and it's no longer needed. + + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + +2017-11-16 Christine Caulfield <ccaulfie@redhat.com> + + stats: Add some missing knet stats + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2017-11-14 Jan Friesse <jfriesse@redhat.com> + + man: Add note about qdevice parallel cmds start + +2017-11-14 Jan Pokorný <jpokorny@redhat.com> + + man: corosync-qdevice: some more stylistics + Following the well-used scheme: + - expressly given defaults: italics (underline in standard terminals) + - key cross-references: bold (as well as the originals) + + + fix missing paragraph delimiters + + s/what/which/ and s/on/one/ where appropriate + + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2017-11-10 Ferenc Wágner <wferi@debian.org> + + systemd: corosync-qdevice can not run without corosync + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2017-11-09 Jan Pokorný <jpokorny@redhat.com> + + man: corosync-qdevice: fix formatting vs. punctuation + Previously, some enumerations were hard to follow, as they were marked + up all at once, including punctuation and connectives. Also mark up + some expressly given defaults. + + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2017-11-09 Ferenc Wágner <wferi@debian.org> + + configure: kill off INITWRAPPERSDIR + When configured for systemd, don't install the SysV init scripts at all. + + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + + corosync-qdevice: send startup notification to systemd + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + + corosync-qnetd: send startup notification to systemd + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + + Send corosync-notifyd startup notification to systemd + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + + Make systemd stop corosync-notifyd if corosync is stopped + Otherwise is just exits successfully (which should probably be fixed + eventually), leading to confusion. + + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2017-11-09 Jan Friesse <jfriesse@redhat.com> + + corosync.spec: Add system-devel build requirement + Reviewed-by: Ferenc Wágner <wferi@debian.org> + +2017-11-09 Ferenc Wágner <wferi@debian.org> + + Send corosync startup notification to systemd + This enables starting the daemon directly in the service file, because + dependent units won't be started until initialization is complete. + + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2017-11-08 Jan Friesse <jfriesse@redhat.com> + + quorumtool: Use full buffer size in snprintf + Thanks Bin Liu <bliu@suse.com> for this patch. + + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + + cpghum: Mark print/log functions with printf attr + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + + cpg_test_agent: Fix snprintf compiler warnings + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + + sam: Fix snprintf compiler warnings + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + +2017-11-06 Jan Friesse <jfriesse@redhat.com> + + coroparse: Do not convert empty uid, gid to 0 + When uid (or gid) value was empty string it was incorrectly converted to + 0. Solution is to check input string emptines. + + Thanks Bin Liu <bliu@suse.com> for reporting the bug. + + Reviewed-by: Bin Liu <bliu@suse.com> + +2017-11-03 Christine Caulfield <ccaulfie@redhat.com> + + cmapctl: Add option to clear the stats + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + + stats: Don't display errors when reading knet stat + Only add the knet handle stat keys if we are actually running knet. This + prevents errors occurring when iterating through all of the stats keys + + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2017-11-03 Bin Liu <liu4480@126.com> + + make the output of "corosync-cfgtool -s" more readable (#269) + +2017-11-01 Bin Liu <bliu@suse.com> + + cfg: nodeid should be unsigned int + nodeid in struct req_lib_cfg_get_node_addrs is "unsigned int", + so the function corosync_cfg_get_node_addrs should have its param + "nodeid" to be unsigned int. + + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + + quorumtool: remove duplicated help message + Option "-p" was included twice, so remove one of them. + + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2017-11-01 Jonathan Davies <jonathan.davies@citrix.com> + + man: fix cpg_mcast_joined.3.in + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2017-10-31 Christine Caulfield <ccaulfie@redhat.com> + + man: Add stats.clear keys to the cmap_keys man pg + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + + stats: Add cmap key to clear the various stats. + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2017-10-31 Ferenc Wágner <wferi@debian.org> + + Use RuntimeDirectory instead of tmpfiles.d + This reverts part of commit 32123f6bb2ebc4f9ac7865945cc85a9c9b903dc6. + + A simple directive is a much lighter solution to the same problem, and + automatically follows the specified User. I copied the 0770 modes from + the corresponding init scripts; they could use a little documentation. + + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2017-10-30 Bin Liu <bliu@suse.com> + + totemconfig: generate mcast icmap items for UDP + Generating mcastaddr and mcastport in icmap make + sense only for UDP transport. + + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2017-10-30 Ferenc Wágner <wferi@debian.org> + + Use static case blocks to determine distro flavor + This is a configure-time decision, avoid live filesystem checks. + + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + + configure: add --with-initconfigdir option + Default value is /etc/sysconfig and resulting + INITCONFIGDIR is used to reduce duplication in init system + integration code. + + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2017-10-30 Bin Liu <bliu@suse.com> + + totemconfig: add nodeid check for knet + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2017-10-25 Ferenc Wágner <wferi@debian.org> + + man: support SOURCE_DATE_EPOCH + Make reproducible builds possible by supporting + https://reproducible-builds.org/specs/source-date-epoch/ + + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2017-10-25 Bin Liu <bliu@suse.com> + + man:fix in corosync-qdevice.8 + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2017-10-24 Bin Liu <bliu@suse.com> + + man: must set nodeid for knet in nodelist + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2017-10-23 Jan Pokorný <jpokorny@redhat.com> + + logsys: Avoid redundant callsite section checking + Previously, corosync executable was repeatedly (proportionally to the + count of LOGSYS_DECLARE_SUBSYS macro applications involved in the + constituent source files) checking the same for no gain in the pre-main + startup. This is not needed since nothing changes with static data + shared withing the same program space (it may have been a different + story once upon a time if loadable modules were in use), so make that + happen in (one-off per executable) LOGSYS_DECLARE_SYSTEM instead. + + Libqb offers it's own ready-made macro to that + effect, simply to isolate the inner percularities from the library user + (that should not be required to understand anything about the orphan + sections and respective autocreated symbols to denote their boundaries). + As it is compile-time conditionalized in the same way, just use it + directly instead. As a value added, corosync will be kept up to date + about the possibly growing set of the logging-sanity checks as it gets + compiled with newer and newer libqb versions (their header files, for + that matter). + + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2017-10-23 Christine Caulfield <ccaulfie@redhat.com> + + config: Fix memory leak + totem_volatile_config_set_string_value was not properly freeing memory. + + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + + knet: Add support for knet compression + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2017-10-20 Jan Friesse <jfriesse@redhat.com> + + qdevice: Add support for heuristics + Heuristics are set of commands executed locally on startup, cluster + membership change, successful connect to corosync-qnetd and optionally + also at regular times. When all commands finish successfully + (their return error code is zero) on time, heuristics have passed, + otherwise they have failed. The heuristics result is sent to + corosync-qnetd and there it's used in calculations to determine which + partition should be quorate. + + Right know, there are some problems (bugs): + - Regular heuristics is supported only by ffsplit. This is not a + problem for clusters with power fencing, but deployments where + non-quorate partition continues to operate may see this as a problem. + - Qdevice-tool status doesn't contain detailed information about + heuristics. + - Qdevice-tool doesn't have a possibility to trigger heuristics + re-execute. + + Thanks Chrissie Caulfield for Englishify the man pages. + + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + +2017-10-18 Keisuke MORI <kskmori@intellilink.co.jp> + + Spec: fix arch-qualified dependencies + needed along with commit 30af25294e019678c4f31e3368b19266f69b8254 + + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2017-10-11 Jan Friesse <jfriesse@redhat.com> + + cmap: Remove noop highest config version check + +2017-10-11 Jonathan Davies <jonathan.davies@citrix.com> + + cmap: don't shutdown highest config_version node + Scenario: + 1. node A starts corosync with config_version = 2, nodelist = {A, B} + 2. node B starts corosync with config_version = 1, nodelist = {A, B} + + corosync.conf(5) says the config_version option is "used to prevent + joining old nodes with not up-to-date configuration." + + So expected outcome is: + * corosync on node A remains alive + * corosync on node B exits + + Actual outcome is: + * corosync on node A exits + * corosync on node B exits + + Explanation of actual behaviour: + * Host A will have cmap_my_config_version = 2 but + cmap_highest_config_version_received = 1, so will shutdown in + cmap_sync_activate because these are not equal. + * Host B will have cmap_my_config_version = 1 but + cmap_highest_config_version_received = 2, so will shutdown in + cmap_sync_activate because these are not equal. + + Instead, node A should consider its own config_version in the + calculation of the highest config_version, i.e. + cmap_highest_config_version_received = 2, and so not shutdown + in cmap_sync_activate. + + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2017-10-02 Kazunori INOUE <inouekazu@intellilink.co.jp> + + totemudp: Remove memb_join discarding + This is already implemented in totemsrp in much cleaner way (added + by commit ab8942f6260fde93824ed2a18e09e572b59ceb25). + + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2017-09-26 Edwin Torok <edvin.torok@citrix.com> + + votequorum: make atb consistent on nodelist reload + When the cluster changes from even sized to odd sized corosync + disables auto-tie-breaker if wait_for_all is not enabled. + However when changing from odd sized to even sized it doesn't reenable + it, causing auto_tie_breaker to be inconsistent across the cluster: + the newly added node and any nodes that restart corosync + will have it, but all the previously running nodes won't. + + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2017-09-22 Fabio M. Di Nitto <fdinitto@redhat.com> + + totem: Remove unnecessary NSS headers + Also fix corosync.spec.in to depend on libknet. + + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2017-09-21 Christine Caulfield <ccaulfie@redhat.com> + + config: Allow dynamic link configuration + Now we are using knet, it's possible to dynamically add, remove and + reconfigure links on the fly. + + Also print 'n' for non-existant knet links. This will show up + only on loopback links >0. But it looks better than 'status =' + + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2017-09-19 Masse Nicolas <nicolas.masse@stormshield.eu> + + totemudp: Retry if bind fails + If bind call fails it's retried for BIND_MAX_RETRIES. + If it's still unsuccessful, corosync exists instead + of working incorrectly. + + Slightly modified by reviewer. + + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2017-09-14 Ferenc Wágner <wferi@debian.org> + + corosync.conf.5: watchdog support is conditional + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + + wd: default to not using a watchdog + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2017-09-12 Ferenc Wágner <wferi@debian.org> + + wd: remove extra capitalization typo + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + + corosync.conf.5: add warning about slow watchdogs + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2017-09-11 Jonathan Davies <jjd27@dani.uk.xensource.com> + + totemknet: fix debug message typo + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2017-09-11 Ferenc Wágner <wferi@debian.org> + + corosync.conf.5: Fix watchdog documentation + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + + wd: fix typo + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2017-08-31 Khem Raj <raj.khem@gmail.com> + + Include fcntl.h for F_* and O_* defines + Fixes errors like + utils.c:95:22: error: use of undeclared identifier 'O_WRONLY' + + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2017-08-23 Christine Caulfield <ccaulfie@redhat.com> + + stats: add knet 'handle' stats + knet handle stats show compression and crypto statistics. With these + you can see the effectiveness of compression and the overheads of both + crypto and compression. + + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2017-08-22 Christine Caulfield <ccaulfie@redhat.com> + + main: use syslog & printf directly for early log messages + libqb seems funny about logging things before its fully configured. + This corosync commit didn't help either: + 8b6bd86a55b8bda9f3a8ff67bdff908263976fa3 + + So to make sure that messages about the config file not being opened + get delivered to the user/syslog we send them directly. + + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2017-08-14 Christine Caulfield <ccaulfie@redhat.com> + + totempg: Allow space for incoming overflow + totempg needs to store the current message + any + overflow for the next message which can be up to (nearly) the MTU size. + in knet that's large, but for UDP it's just 1500. + + The reason we've never seen it before is because the actual max message + size is 1024 less than 1MB and after all the headers are stripped out the overflow is + usually 1024 bytes or less. + The 1024*1024 size of the assembly buffer is large enough to hold a max message (1047552) + + 1024 bytes of a new UDP message. So we never saw any problems. + + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2017-08-11 Chrissie Caulfield <ccaulfie@redhat.com> + + cpghum: Add options to change flood start/mult/end sizes (#237) + I ran out of sensible short options for cpghum so added some long
+ ones to cope with them.
+
+ Also added is the ability to specify most size values in a sensible format
+ eg 64M for 64 Megabytes or 48K for 48 Kilobytes.
+
+ Strictly those are MiB and KiB of course, but I'm old-fashioned.
+ +2017-08-04 Chrissie Caulfield <ccaulfie@redhat.com> + + totemknet: Use knet's LOOPBACK transport (#236) + knet now has a built-in LOOPBACK transport so use that
+ rather than special-casing it for ourself.
+ +2017-08-03 Christine Caulfield <ccaulfie@redhat.com> + + CFG: Remove ring-reenable code + RRP doesn't exist any more so all the ring re-enable code is redundant. + + I've removed it from the library and all the code that does anything, + but I've left the hole in the IPC just in case old libraries are + hanging around. + + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2017-08-01 Jan Friesse <jfriesse@redhat.com> + + main: Add support for libcgroup + When corosync is started in environment where it ends in cgroup without + properly set rt_runtime_us it's impossible to get RT priority. + + Already implemented workaround is to use higher non-RT priority. + + This patch implements another solution. It moves corosync into root cpu + cgroup. Root cpu cgroup hopefully has enough RT budget. + + Another solution was mentioned on ML + https://lists.freedesktop.org/archives/systemd-devel/2017-July/039353.html + but this means to generate some "random" values. + + Reviewed-by: Fabio M. Di Nitto <fdinitto@redhat.com> + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + (cherry picked from commit c56086c701d08fc17cf6d8ef603caf505a4021b7) + +2017-07-27 Christine Caulfield <ccaulfie@redhat.com> + + stats: Add map with on-demand statistics + Icmap is factored out so it's possible to add other + maps for cmap. API call to switch maps from application + end is added. + + Corosync-cmapctl is enhanced with -m option. + + Stats contains all statistics previously found in runtime.connections, + runtime.services and runtime.totem prefixes together with new knet + related. All stats are read only. + + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2017-07-14 Christine Caulfield <ccaulfie@redhat.com> + + ipc: Check for the libraries sending invalid message IDs + If the library sent an invalid (ie too high) message ID to + corosync, then it could cause the daemon to crash. + + Now we check the message ID before indexing the function array + + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2017-07-10 Jan Friesse <jfriesse@redhat.com> + + main: Add option to set priority + Option -P takes numeric value with same meaning + as nice or values min / max, meaning maximal / minimal priority (so + minimal / maximal nice value). + + Scheduler / priority setting is moved in code so it is now executed + after logsys is configured so errors are logged. + + Setting maximal priority is also used as fallback when realtime + scheduling is requested and sched_setscheduler fails. + + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + (cherry picked from commit a008448efb2b1d45c432867caf08f0bcf2b4b9b0) + +2017-07-03 Jan Friesse <jfriesse@redhat.com> + + totemknet: Prevent dead-loop in log_flush_messages + + corosync-keygen: Display number of needed bits + Instead of currently read bits, number of already read bits is + displayed to let the user know how long it's needed to "press keys" + + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + + totemknet: Flush knet log messages + When initialization fails knet logs messages into pipe. Previously they + were never processed. Solution is to add log_flush_messages which takes + care to call log_deliver_fn. + + Call of log_flush_messages is also added to totemknet_finalize because + this removes log pipe fd from qb_loop so similar problem can happen. + + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + + corosync-keygen: Make less-secure default + /dev/urandom is good enough for crypto keys and it's not blocking. If + superb randomness is really needed, it's possible to use newly added + option -r. + + Also manpage is reworked a bit to use .nf instead of many .br. + + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + + corosync-keygen: Adapt to knet key sizes + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + + totemconfig: Make crypto work again + Knet needs longer key and supports various key lengths. Split + TOTEM_PRIVATE_KEY_LEN into TOTEM_PRIVATE_KEY_LEN_MIN and + TOTEM_PRIVATE_KEY_LEN_MAX (both using KNET_*_KEY_LEN). + + Fix incorrect "Could only read..." message. + + Make sure key is properly initialized/zeroed. + + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + +2017-06-29 Christine Caulfield <ccaulfie@redhat.com> + + knet: Compile with latest knet API + extra parameter added to knet_link_get_status() + +2017-06-15 Jan Friesse <jfriesse@redhat.com> + + totem: Propagate totem initialization failure + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + +2017-06-09 Christine Caulfield <ccaulfie@redhat.com> + + totemknet: Use new knet_link_set_config() API + TC_PRIO_INTERACTIVE is now a link option in knet, so we have + to provide it at link config time. + + This needs the latest knet git to compile as this is an updated API. + +2017-05-29 Michael Jones <jonesmz@jonesmz.com> + + coroapi: Use size_t for private_data_size + Unsigned int and size_t represent two different concepts. + + Same problem was present in ipc_glue. + + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2017-05-26 Christine Caulfield <ccaulfie@redhat.com> + + votequorum: Report errors from votequorum_exec_send_reconfigure + If votequorum_exec_send_reconfigure() returns an error (ie the + packet could not be sent) then we should either return it to the + sender (for a library call) or, for an internal call, log it. + + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2017-05-25 Christine Caulfield <ccaulfie@redhat.com> + + cpghum: remove space after delimiter + machine-readable stats do not need extra spaces! + + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + + cpghum: Add interim RTT to cpghum + when -f is selected the interim stats show the RTTs for that + size of packet. + + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2017-05-23 Michael Jones <jonesmz@jonesmz.com> + + configure: Enable C99 language standard + Also disable some obsolete warnings. + + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2017-05-18 Jan Friesse <jfriesse@redhat.com> + + main: Display reason why cluster cannot be formed + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + +2017-05-18 Hideo Yamauchi <renayama19661014@ybb.ne.jp> + + notifyd: Add the community name to an SNMP trap + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2017-05-15 Christine Caulfield <ccaulfie@redhat.com> + + cpghum: Add machine-readable output + and fix a few small counter bugs. + +2017-05-11 Chrissie Caulfield <ccaulfie@redhat.com> + + test: Fold cpgbench into cpghum (#205) + * test: Fold cpgbench into cpghum
+
+ cpgbench and cpghum share a lot of code & concepts so it makes
+ sense to merge them into a single test program that can both
+ benchmark and sanity check CPG.
+
+ Signed-off-by: Christine Caulfield <ccaulfie@redhat.com>
+ Reviewed-by: Jan Friesse <jfriesse@redhat.com>
+ +2017-05-09 Christine Caulfield <ccaulfie@redhat.com> + + knet: Allow space for encapsulated messages + +2017-04-25 Andrew Price <anprice@redhat.com> + + Main: Call mlockall after fork + Man page of mlockall is clear: + Memory locks are not inherited by a child created via fork(2) and are + automatically removed (unlocked) during an execve(2) or when the + process terminates. + + So calling mlockall before corosync_tty_detach is noop when corosync is + executed as a daemon (corosync -f was not affected). + + This regression is caused by ed7d054e552b4cb2a0cb502b65f84310ce6da844 + (setprio for logsys/qblog was correct, mlockall was not). + + Solution is to move corosync_mlockall call on correct place. + + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2017-04-21 Michael Schwarz <michi.schwarz@gmail.com> + + Fix typos in README.recovery + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2017-04-20 Bin Liu <bliu@suse.com> + + coroparse: Use readdir instead of readdir_r + readdir_r is deprecated in glibc 2.24 in favor of readdir (which became + thread safe). Also because corosync never calls read_uidgid_files_into_icmap + in muliple threads, no problem should appears even with libc where + readdir is thread-safe. + + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + + totemknet: Handle logpipe creation failure + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + + wd: Report error when close of wd fails + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + + Qnetd lms: Use UTILS_PRI_RING_ID printf format str + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + + cpghum: Fix printf of size_t variable + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2017-04-11 Christine Caulfield <ccaulfie@redhat.com> + + totemknet: Got back to recvmsg() from recvmmsg() + The kernel team have recommended us not to use recvmmsg and as it + confers no particular speed advantage (especially given the extra + memory consumption) I'm going back to single message recvmsg() again. + +2017-04-11 Bin Liu <bliu@suse.com> + + totemconfig: Prefer nodelist over bindnetaddr + In a two-node cluster, I 've one node configured with open-vswtich: + 5: br-fixed: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue + state UNKNOWN group default + inet 192.168.124.88/24 scope global br-fixed + inet 192.168.124.87/24 scope global secondary br-fixed + inet 192.168.124.83/24 brd 192.168.124.255 scope global secondary + tentative br-fixed + inet 192.168.124.89/24 scope global secondary br-fixed + + while I use 192.168.124.83 in node list of corosync.conf with udpu, and + the bind_addr is 192.168.124.0. After upgrading corosync on this node, + the it uses 192.168.124.88 instead of 192.168.124.83. As we can see: + + corosync-cfgtool -s + Printing ring status. + Local node ID 1084783704 + + corosync-quorumtool -s + Membership information: + Nodeid Votes Name + 1084783697 1 d52-54-77-77-01-02 + 1084783699 1 d52-54-77-77-01-01 (local) + + while the other node can only see itself: + corosync-cfgtool -s + Printing ring status. + Local node ID 1084783697 + RING ID 0 + id = 192.168.124.81 + status = ring 0 active with no faults + + corosync-quorumtool -s + Membership information: + Nodeid Votes Name + 1084783697 1 d52-54-77-77-01-02.virtual.cloud.suse.de (local) + + this patch will check if there are both nodelist and bindnetaddr and if + so, display warning and use nodelist information. + + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2017-04-11 Christine Caulfield <ccaulfie@redhat.com> + + knet: Close libknet down cleanly at shutdown + By tidily shutting down knet in totekmknet_finalize we + make sure all the links are cleanly taken down and, + more importantly for us, the corosync LEAVE message gets + sent so we don't get fenced on a clean exit. + +2017-04-07 Christine Caulfield <ccaulfie@redhat.com> + + man: Document -a option to corosync-quorumtool + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2017-04-07 Jan Friesse <jfriesse@redhat.com> + + cpghum test: Improve error codes + Return error when unknown option is found. Also return error code 2 if + one of send/crc/length/sequence error happened. Finally make sure abort + returns same error code and not 999 (what is nonsense code anyway). + +2017-04-04 Christine Caulfield <ccaulfie@redhat.com> + + quorumtool: Add option to show all node addresses + New -a option shows all of the names/ip address of nodes + in a multi-homed environment. + +2017-03-14 Christine Caulfield <ccaulfie@redhat.com> + + cpghum: Stop cpghum from reporting fake CRC errors + +2017-03-10 Bin Liu <bliu@suse.com> + + logconfig: Do not overwrite logger_subsys priority + logfile_priority and syslog_priority could be modified by + logging.logger_subsys.{logfile_priority|syslog_priority}. which could + lead to the following output(which are at notice level): + + corosync[21419]: [QUORUM] Using quorum provider corosync_votequorum + corosync[21419]: [QUORUM] Members[1]: 1084777643 + corosync[21419]: [QUORUM] This node is within the primary component + and will provide service. + corosync[21419]: [QUORUM] Members[3]: 1084777563 1084777584 1084777643 + + even the syslog_priority is warning. This patch could avoid the + overwrite. + + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2017-03-02 Christine Caulfield <ccaulfie@redhat.com> + + totem: Fix buffer sizes + knet needs buffers to be KNET_MAX_PACKET_SIZE or messages will + get lost or corrupted. + + UDPU packets shouldn't be that big so I introduced UDP_FRAME_SIZE_MAX + for that transport. + +2017-02-27 Christine Caulfield <ccaulfie@redhat.com> + + main: Don't ask libqb to handle segv, it doesn't work + segv should be handled by corosync, libqb is not the + place to be handling emergency signals. + + This currently requires the head of libqb git tree to + generate a blackbox & coredump in the event of a segfault, + but it's better than the write() spin that currently happens. + + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2017-02-24 Jan Friesse <jfriesse@redhat.com> + + Logsys: Change logsys syslog_priority priority + LibQB adds default "*" syslog filter so we have to set syslog_priority + as low as possible so filters applied later in + _logsys_config_apply_per_file takes effect. + +2017-02-24 Fabio M. Di Nitto <fdinitto@redhat.com> + + knet: improve logging messages by adding knet subsystem + +2017-02-17 Christine Caulfield <ccaulfie@redhat.com> + + cpghum: Add abort_on_error option + +2017-02-16 Christine Caulfield <ccaulfie@redhat.com> + + cpghum: Add min rtt and print stats every alarm + +2017-02-15 Christine Caulfield <ccaulfie@redhat.com> + + cpghum: Add Round Trip Time (RTT) reporting + +2017-02-14 Fabio M. Di Nitto <fdinitto@redhat.com> + + knet: Change nodeids to knet_node_id_t for new knet compatibility + after some feedback on github, people prefers to have the option + to support up to 64K node_id's. + + libknet added knet_node_id_t to mask the size and type, currently + set to uint16_t. + +2017-02-13 Christine Caulfield <ccaulfie@redhat.com> + + knet: Fix MTU sizes & allow transport config in corosync.conf + Corosync layers don't need to know the knet MTU size - this way + corosync fragments buffers only when they get larger than the + KNET buffer size (64K) and knet fragments below that based on + the actual MTU and transport considerations. + + It is also now possible to configure knet to use UDP or SCTP + transports in corosync.conf. This is currently done per-link + so if you have more than 1 link you need several interface{} + stanzas inside totem{} to make it use other than the default + of UDP. if it's useful I might add the option of a global + default. + +2017-02-11 Fabio M. Di Nitto <fdinitto@redhat.com> + + knet: PMTUd data_mtu already accounts for IP and knet header overheads + provide some more space for data and small (+1% perf boost) + + knet: switch from write to sendto() + this provides another 9.6% performance boost on 2 node clusters + +2017-02-03 Christine Caulfield <ccaulfie@redhat.com> + + knet: Change nodeids to 8 bit for new knet compatibility + I've also put an assert in totemknet_member_add() to check + for invalid nodeids. Later on we need to fix the rest of the + corosync code to only use 8bit nodeids (or force people to use + UDPU if they want large nodeids). + +2017-01-18 Adrian Vondendriesch <adrian.vondendriesch@credativ.de> + + doc: document watchdog_device parameter + Commit 8d8d4a936ab73d8449a3574f969b17a90ef9428e introduced the + configuration parameter resources.watchdog_device. This commit + introduces the resources section and watchdog_device parameter in + corosync.conf.5. + + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2017-01-16 Christine Caulfield <ccaulfie@redhat.com> + + knet: Fix member_remove to shut down existing links first + +2017-01-10 Jan Pokorný <jpokorny@redhat.com> + + Spec: make internal dependencies arch-qualified + To prevent any mismatch of this kind for sure. + + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + + Spec: drop unneeded dependency + corosynclib-devel doesn't need to have a dependency on corosync package. + + It's expected that libraries are still working properly (e.g. indicating + errors to their users) when there's no corosync process around in that + moment, and from this perspective it doesn't matter whether it is + installed at all for some purposes, especially having linkage with them + in mind. + + Note that the inverse dependency, main corosync package on corosynclib, + is already there (not strictly needed, likely just to enforce package + version match -- otherwise RPM's dependency generator will handle this + on its own using SONAMEs -- hence the comments to that effect are also + added), so breaking this symmetry: + - is supposed to be harmless modulo cases that should be fixed to + express explicit dependency on corosync's runtime anyway + (but only for runtime, i.e., Requires as opposed to BuildRequires) + - will effectively enable more lightweight get-build-deps-and-build + process for programs linking with corosynclibs (e.g. pacemaker), + as corosync package won't need to be installed needlessly + + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2017-01-03 Christine Caulfield <ccaulfie@redhat.com> + + knet: Reduce default pong count to 2 for faster startup + The default PONG_COUNT of 5 made corosync slow to connect to other + nodes. + This helps. + +2016-12-22 Christine Caulfield <ccaulfie@redhat.com> + + totemknet: Make it compile with kronosnet git master + +2016-12-12 Bin Liu <bliu@suse.com> + + Qdevice: fix spell errors in qdevice + There are somwe spell errors in qdevice-net-algo-test.c, + qnetd-algo-2nodelms.c, qnetd-algo-test.c qnetd-algo-ffsplit.c + + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2016-12-05 Takeshi MIZUTA <miz.take4@gmail.com> + + Remove redundant header file inclusion + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2016-12-05 Richard B Winters <rik@mmogp.com> + + Remove deprecated doxygen flags + Running 'doxygen -u Doxyfile.in' in the source root produces the + following results: + + - SYMBOL_CACHE_SIZE at line 301 has become obsolete. This tag + has been removed. + - SHOW_DIRECTORIES at line 507 has become obsolete. This tag + has been removed. + - HTML_ALIGN_MEMBERS at line 881 has become obsolete. This tag + has been removed. + - USE_INLINE_TREES at line 1067 has become obsolete. This tag + has been removed. + - XML_SCHEMA at line 1311 has become obsolete. This tag has been + removed. + - XML_DTD at line 1317 has become obsolete. This tag has been + removed. + + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2016-12-05 yuusuke <yusk.iida@gmail.com> + + upstart: Add softdog module loading example + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2016-12-05 Bin Liu <bliu@suse.com> + + Totempg: remove duplicate memcpy in mcast_msg func + In function mcast_msg of totempg.c, line 923, there is a memcpy call in + "else" branch, and also another memcpy out of the "else" branch, while + the two calls have the same parameters. It is possibleto remove the memcpy + in "else" branch. + + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2016-12-01 Takeshi MIZUTA <miz.take4@gmail.com> + + man: Modify man-page according to command usage + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2016-11-28 Ferenc Wágner <wferi@niif.hu> + + init: Add doc URIs to the systemd service files + These are used by systemctl help. + + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2016-11-28 Ferenc Wágner <wferi@debian.org> + + Fix typo: Destorying -> Destroying + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2016-11-28 Takeshi MIZUTA <miz.take4@gmail.com> + + man: Fix typos in man page + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2016-11-23 Takeshi MIZUTA <miz.take4@gmail.com> + + totempg: totempg_groups_join return valid error + totempg_groups_join() is called by sync_init(). + sync_init() judge that totempg_groups_join() failed if return code of + totempg_groups_join() is -1. + Therefore, the return code should return in -1 when + totempg_groups_join() fails. + + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2016-11-21 yuusuke <yusk.iida@gmail.com> + + systemd: Delete unnecessary soft_margin + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2016-11-17 Christine Caulfield <ccaulfie@redhat.com> + + knet: Support reload of link parameters + +2016-11-15 Takeshi MIZUTA <miz.take4@gmail.com> + + list: Unify the list processing with qb_list func + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2016-11-15 Christine Caulfield <ccaulfie@redhat.com> + + knet: Allow configuration of more params + knet_pmtud_interval & + knet_pong_count + +2016-11-14 Chrissie Caulfield <ccaulfie@redhat.com> + + knet: Don't lose log messages when knet gets busy (#165) + +2016-11-07 Jan Friesse <jfriesse@redhat.com> + + libvotequorum: Bump version + +2016-10-27 Jan Friesse <jfriesse@redhat.com> + + list: Replace for_each by safe version where need + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + + list: Remove list.h + List.h is no longer needed. + + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + +2016-10-27 Michael Jones <jonesmz@jonesmz.com> + + list: Replace uses of list.h with qblist.h + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2016-10-23 Fabio M. Di Nitto <fdinitto@redhat.com> + + [build] Fix build on RHEL7.3 latest + header inclusion have changed + +2016-10-17 HideoYamauchi <renayama19661014@ybb.ne.jp> + + Change a type of NodeID. + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2016-10-13 Christine Caulfield <ccaulfie@redhat.com> + + vqsim: Fix Makefile.am + Make it conditional on BUILD_VQSIM being defined + + configure: Remove RDMA (again) + How did that creep back in again? + + vqsim: Add Quorum simulator program + vqsim is a small program that allows node up/down/split/join + operations to be simulated without the use of an actual cluster. + +2016-10-13 Jan Friesse <jfriesse@redhat.com> + + Build: Fail configure if knet is not installed + Libknet is now requirement. + + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + +2016-10-13 Christine Caulfield <ccaulfie@redhat.com> + + totem: add totemknet.[ch] + it seems git is better at deleting files than adding them + +2016-10-12 Michael Jones <jonesmz@jonesmz.com> + + cfg: Prevents use of uninitialized buffer + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2016-10-11 Christine Caulfield <ccaulfie@redhat.com> + + totem: Add Kronosnet transport. + This is a big update that removes RRP & MRP from the codebase + and makes knet the default transport for corosync. UDP & UDPU + are still (currently) supported but are deprecated. Also crypto + and mutiple interfaces are only supported over knet. + + To compile this codebase you will need to install libknet from + https://github.com/fabbione/kronosnet + + The corosync.conf(5) man page has been updated with info on the new + options. Older config files should still work but many options + have changed because of the knet implementation so configs should + be checked carefully. In particular any cluster using using RRP + over UDP or UDPU will not start as RRP is no longer present. If you + need multiple interface support then you should be using the knet transport. + + Knet brings many benefits to the corosync codebase, it provides support + for more interfaces than RRP (up to 8), will be more reliable in the event + of network outages and allows dynamic reconfiguration of interfaces. + It also fixes the ifup/ifdown and 127.0.0.1 binding problems that have + plagued corosync/openais from day 1 + +2016-10-06 HideoYamauchi <renayama19661014@ybb.ne.jp> + + coropase: Set a poll_period value for wd monitor + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2016-09-13 Christine Caulfield <ccaulfie@redhat.com> + + votequorum: simplify reconfigure message handling + As we now have update_node_expected_votes(), we can use that + when receiving a new EXPECTED_VOTES value from another node + rather than having our own loop. + + votequorum: Don't update expected_votes display if value is too high + If expected_votes was set via the library but the calculation + decides it's too high, then an error is correctly returned but + the value is still set in the nodes' expected_votes field and + turns up in the corosync-quorumtool display. + + This patch separates out the quorum calculation from the updating + of expected_votes per node to prevent this from happening. + + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2016-09-12 Ferenc Wágner <wferi@niif.hu> + + Fix various typos + occured -> occurred + parantheses -> parentheses + configuraton -> configuration + aquire -> acquire + retrive -> retrieve + prefered -> preferred + + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2016-09-02 Ferenc Wágner <wferi@niif.hu> + + init: corosync and cman aren't system facilities + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + + conf: be explicit about the mcast src/dst ports + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2016-08-30 Jan Friesse <jfriesse@redhat.com> + + Qnetd LMS: Fix two partition use case + Solves situation when in 2 node cluster tie-breaker node dies. Because + code contains two bugs, other node got NACK instead of ACK. + + - Algo timer is not stack, so calling abort and schedule in timer + callback without setting reschedule is noop. + - It's needed to check not only what current node thinks about + membership, but also what other nodes thinks. If views diverge -> wait. + + Thanks Christine Caulfield <ccaulfie@redhat.com> for fixing the English + in the comments somewhat. + + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + +2016-08-12 Christine Caulfield <ccaulfie@redhat.com> + + man: mention qdevice incompatibilites in votequorum.5 + +2016-08-09 Jan Friesse <jfriesse@redhat.com> + + Man: Fix corosync-qdevice-net-certutil link + +2016-08-04 Jan Friesse <jfriesse@redhat.com> + + Spec: Qdevice require same version of corosync + + Config: Flag config uidgid entries + Uidgid entries parsed from configuration files now has prefix + (uidgid.config.) so they are distinguishable from dynamically added + entries. Entries added from config file are pruned on reload if no + longer exists in config file (dynamic one stays unaffected). Also whole + uidgid.config. prefix is made read only. + + This make PCMK work again after configuration reload is called. + + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + +2016-08-04 Bin Liu <bliu@suse.com> + + cts: Make it run with pacemaker-1.13+ + There are changes in pacemaker-cts which corosync-testagents denpends + on. With these changes, corosync-testagents can not run. This patch + fixes the issues, and makes corosync-testagents run. + + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2016-08-01 HideoYamauchi <renayama19661014@ybb.ne.jp> + + Low: totemsrp: Addition of the log. + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2016-07-12 Christine Caulfield <ccaulfie@redhat.com> + + qdevice: some more small man page fixes + including mentioning corosync-qdevice(5) on the + votequorum(5) and corosync.conf(5) pages. + + Thanks to Jan Pokorný for reporting these. + +2016-07-07 Christine Caulfield <ccaulfie@redhat.com> + + qdevice: Fix 'tie_breaker' in man page + the tie_breaker option was incorrectly listed as + tie-breaker on the man page. + +2016-06-30 Jan Friesse <jfriesse@redhat.com> + + Qdevices: Include required files in tarball + + Qdevice: Include man pages in tarball + + tmpfiles.d: Install only when required + +2016-06-30 Christine Caulfield <ccaulfie@redhat.com> + + Qdevice: Englishify man pages + +2016-06-29 Jan Friesse <jfriesse@redhat.com> + + Qdevice: Add corosync-qdevice man page + + Qdevice: Add more man pages + +2016-06-28 Jan Friesse <jfriesse@redhat.com> + + Qdevice: Fallback mkdir of /var/run sundirectory + + Qdevice: Enhance delay before reconnect + + Qdevice: Handle /var/run on tmpfs + + Qdevice: Reconnect on algo or tb differs error + + qdevice: Add qdevice-tool and qnetd-tool man pages + + Qdevice: Make ffsplit algorithm default + + Qdevice: Add sysconfig example + + Fix few bugs found by coverity + + Qdevice: Fix errors found by coverity + + Qnetd: Execute qnetd as non root user + + Qdevice: Adjust path to final location + + Qdevice: Add qnetd configure option + Qnetd is no longer build as a part of --qneable-qdevices. Instead + --enable-qnetd is used. + +2016-06-28 Christine Caulfield <ccaulfie@redhat.com> + + quorum: revert patch that adds qdevice (node 0) to quorum callback + Revert patch 9f54f0a1fad7dad42c55562a50dfb9d773e6a660 as it causes + more troubles than it solves. Code that uses the quorum nodelist + to get a list of actual nodes in the cluster for communication + break using this as well as the display from corosync-quorumtool + +2016-06-28 Jan Friesse <jfriesse@redhat.com> + + Qdevice-net: Make duplicate node id err non-fatal + It can happen because qnetd not yet handled disconnect of client. + + Qnetd: ffsplit: Add no active clients heuristic + On 50:50 split, ffsplit algorithm now prefers partition with + higher number of active clients. Tie-breaker is used only if both + partitions have same number of active clients. + + Qdevice: Allow master_wins + + Qnetd: ffsplit: Enhance ffsplit + 50:50 split algorithm now works in following way: + - On client configuration change, membership change or disconnect wait + till membership is stable (= all client configuration node list are + equal, and all partitions has equal information). + - Choose best partition >= 50% + - If no such partition exists, send NACK to all clients + - Send NACK to all clients who should receive NACK + - After all clients who should receive NACK confirm vote reception, send + ACK to all clients who should get ACK + + This ensures that there are never two partitions with ACK and it has + much better behavior than previous version, because if tie-breaker + partition is not connected, other partition gets ACK. + + Qdevice: Send ring id in more messages + To prevent receiving vote from old membership ring id is sent to server + during init and replied back to client in every node list, + ask for vote reply and vote info messages. + + Qdevice: Remove unused variable + + Qdevice: Wait for ring id before executing model + + Qnetd: Make sure all header files are in final tar + + Qdevice: Add initial version of ffsplit + For now it's doing same job as atb. + + Qnetd: Return errors in test algorithm + + Qnetd: Implement cluster algorithm data + + Qdevice: Fix qdevice-net-certutil quickstart + Last part (import p12 files on other nodes) were not implemented. + + Qnetd: Split cluster-list + + Qnetd: Store result vote of ask_for_vote correctly + Previously unitialized vote was stored. + + Qdevice: Correct API comments + Also after votequorum node list is received and qnetd is connected, + default vote is changed to WAIT_FOR_REPLY. This make much more sense + because it ensures qdevice doesn't vote with new ring id until qnetd + sends reply. + + Qdevice: Add expected votes notify callback API + + Qdevice: Do not call cmap_dispatch in sync + When corosync is during sync operation cmap_dispatch blocks. + + Qdevice: Add advanced settings + All previously defined defaults are now configurable via -S option. + + qnetd: Add warning to test algorithm + + Qnetd: Add advanced settings + All previously defined defaults are now configurable via -S option. + + qdevice: Ensure to exit if ipc socket is closed + When ipc socket was closed before poll and new connection got same fd as + original IPC socket, shutdown didn't work. Solution is to check if IPC + socket is active during poll array create. + + Qdevice: Add IPC clients + + qnetd: Add support for IPC list command + + qdevice: Make sure qdevice exists on corosync exit + + Add qdevice into spec file + + Make sure all qdevice files are packaged + + Split qnetd certutil to qnetd and qdevice-net part + + Qnetd: Add local IPC + Basic commands shutdown and status are implemented. + + Qdevice: Quote str func compatible with simple_lex + + Qdevice: Improve simple lex and add unit test + Simple lex now support backslashes and quotes. Behavior is + similar to shell. + + Qdevice: Support for IPC status cmd in net model + + qdevice certutil: Increase default cert validity + + Qnetd: Don't fall if TLS is disabled + + Qnetd: Log client in IP address:port format + + Qdevice: Don't abrt if IPC connect isn't accepted + Also sending buffer is increased from testing value 2 to 1024. + + Qdevice: Implement status command + + Qdevice: Allow compiler warn about unhandled case + Remove default case where switch selection is made on top of enum value. + + Qdevice: Add format macro for nodeid, ring, ... + + qdevice: Properly free IPC data on exit + + qdevice: Implement shutdown command + + qdevice: Add dynar prepend + + qdevice: Sending error (output) in IPC + + qnetd: Fix logging function va_arg handling + + qdevice: Add vcatf to dynar-str + + qdevice: Fix cluster-list test + + qdevice: Add functions to manipulate dynar string + + qdevice: Add public prealloc function to dynar + + qdevice: Make simple-lex locale independent + Simple-lex is going to be used in protocol so it's not good idea to + depend on locale. + +2016-06-28 Christine Caulfield <ccaulfie@redhat.com> + + quorum: Return qdevice nodeid in the quorum callbacks (if active). + +2016-06-28 Jan Friesse <jfriesse@redhat.com> + + qdevice: Improve socket based IPC + + qnetd: Factorize qnetd-poll-array to generic unit + + qdevice: Add preliminary version of IPC + + qdevice: Add qdevice service scripts + Also fix qnetd systemd service. + + qdevice: Remove compiler warning + + qdevice: Unregister votequorum tracking on exit + + qdevice: Add support for daemonize + Also local unix socket is now created. In future this is going to be + used for qdevice-tool, for now it's used only for handling SIGINT and + SIGTERM. + + qdevice-net: Add option to force ip version + + qnetd: Add dead peer (client) detection + + qdevice timer-list: Add reschedule operation + + qdevice: Wait a while before reconnect + It's viable to give qnetd a little time before client tries reconnect. + + qnetd: Replace err by qnetd_log on some places + err should be used only before qnetd log is fully initialized. + + qnetd: Validate tie-breaker, algo and node dup + If new client request tie-breaker or algo which differes from rest of + cluster, error message is sent back. Also it's checked if node is not + duplicate by comparing node id. + +2016-06-28 Christine Caulfield <ccaulfie@redhat.com> + + qdevice-lms: improvements to LMS algorithm + Use the new timers to get better response from LMS when the network + splits, this also closes a race where the remote side could go inquorate + before we confirmed the vote. + + Add client-side (qdevice-net) code to cope with a detached qnetd if we + are quorate and have wait_for_all enabled. THat situation will now + keep quorum. + +2016-06-28 Jan Friesse <jfriesse@redhat.com> + + qdevice: Allow delete timer withing it's callback + + qdevice: Force send of heartbeat + Previously client was not force to use heartbeat. Because we have to be + able to detect dead client in qnetd, heartbeat setting is now forced. + Insted of set_option message, heartbeat is force to exists in init + message. This also means that + QDEVICE_NET_INSTANCE_STATE_WAITING_SET_OPTION_REPLY can be removed and + client is considered as connected after init_reply is received. So + currently, set_option is not used (but implementation of these two + messages still exists). + + qdevice: Improve timer-list + Timer-list is now more efficient and as a side-effect it's possible to + add/delete timer in callback. + + qnetd: Add support for qnetd algo timer + Algo timer is simplified timer designed for qnetd algorithm. Instead of + full timer only one can exists per client. Workflow is: + - In one of algorithm callbacks qnetd_client_algo_timer_schedule is + called + - On timeout .timer_callback is called (for example + qnetd_algo_test_timer_callback). It's possible to set send_vote and + result_vote to send vote info to client + - It's possible to discard timer by calling + qnetd_client_algo_timer_abort + + Timer is automatically deleted on client disconnect. + + To make all this possible, qnetd main loop now has support for + timer-list (main_timer_list). To be able to handle error and disconnect + client from timer callback, client has schedule_disconnect. If this is + set to 1, client is disconnected on current call of poll loop. + + qdevice-net: Allow connect to choose lists to send + Also disconnect and connect can now affect vote timer. + + qnetd-algo-utils: Remove goto + + qdevice-net: Support tls required and fix leaks + + qdevice tlv: Remove default/return code redundancy + + qdevice-net: Free send buffer on error (leak) + + qnetd: Return lock file fd + + qdevice-net: Ensure to free non blocking client + + Refactor qdevice-net + - corosync-device-net as binary is gone. Replacement is + corosync-qdevice + - corosync-qdevice has support for multiple models (only net is + currently implemented) + - Completelly redesign qdevice-net main loop. + - Connect is non blocking + - Cmap and Votequorum events are handled even before connect to + qnetd. Algorithm gets send_node_list and vote set so it's not needed + to check connection status and also vote_timer is running and voting + until something changes (configuration or votequorum node list) + - If connect fails, algorithm_disconnected with new reason + CANT_CONNECT_TO_THE_SERVER is called + - Logging for qdevice is based on libqb logging functions. Also + logging configuration from corosync.conf is now used and dynamic + changes of configuration are handled. + - Added qdevice_net_algorithm_config_node_list_changed + - Changed qdevice_net_algorithm_votequorum_node_list_notify in respect + of adding send_node_list so it's similar to other functions. + +2016-06-28 Christine Caulfield <ccaulfie@redhat.com> + + votequorum: Allow wait_for_all with qdevice + + qnetd: Use ring_id, not client->last_ring_id in algorithms + ring_id should only be copied into the client structure after the + algorithm has run (so the last one is also available), so fix the + algorithms to use the passed-in ring_id where available. + + Also tidy some debug logging in algo-lms + + qnetd-algo: Fix list traversal corruption when freeing partitions. + TAILQ_* doesn't have a safe iterator for use when freeing entries, so the + only safe way of doing it (without assuming implementation) is to + restart the iterator after freeing the structure. + +2016-06-28 Jan Friesse <jfriesse@redhat.com> + + Improve qdevice + - Add support for cmap node list configuration change + - Add client side algorithms + - Check if currently received ring id in membership message + equals to last sent ring id + - Send config node list only if config node list really changes and not + after every reload + - Add tlv_ring_id_eq (replacing qnetd_algo_rings_eq) so it's usable in + client + - Move debug logs from algo-test into qnetd-log-debug.c and call them in + proper places (= logs are now algorithm independent) + - Fix memory leak in msg + +2016-06-28 Christine Caulfield <ccaulfie@redhat.com> + + qnetd-algo: Refactor common routines + Move several commonly used routines into their own + qnetd-algo-utils.[ch] files and change over to using + the ring_id held in the client structure rather than + managint it ourself. + + qnetd: Add ring_id to client structure + + algo-lms: some tidying + +2016-06-28 Jan Friesse <jfriesse@redhat.com> + + qnetd: Make proper support for ipv4/6 + - Add option for forcing ip version 4 or 6 + - Choose new default port. It's now 5403. Exactly one less than used by + corosync. + - Fix compiler warning + + qnetd: Add init script + + qnetd: Refactor + + qnetd: Really daemonize + +2016-06-28 Christine Caulfield <ccaulfie@redhat.com> + + qdevice: qnetd_algo_lms: Fix nominated tie_breaker node + + qnetd: lms: Add support for other tie_breaker options. + + qnetd: Add tie_breaker options to 2nodelms + +2016-06-28 Jan Friesse <jfriesse@redhat.com> + + qdevice: Add tie_breaker option + Tie-breaker can be used in algorithm to decide if algorithm should + prefer highest, lowest or some concrete node id. + + qnet: Add TLV_VOTE_NO_CHANGE + State used for informative only callbacks (quorum node list) and + possibly informative only callbacks (configuration node list). Client + doesn't change cast vote timer state. + + qnet: Migrate to new votequorum API + +2016-06-28 Christine Caulfield <ccaulfie@redhat.com> + + qdevice: 2nodelms: don't split-brain when the primary node comes back. + + qnetd: lms: Fix search for node/ring_id check + We were looking for us in other node lists, rather than + others in our nodelist. + + Also, remove debug print in votequorum.c + + votequorum: Fix up quorum/nodelist callbacks + This patch tidies the two state change callbacks and explains them + in the man page: + + The difference between votequorum_nodelist_notification_t and + votequorum_quorum_notification_t is subtle but important. + The 'nodelist' callback is sent at the start of a cluster state + transition and contains the new ring_id and only the list of + nodes that are included in the sync state - ie only active nodes. No + quorum information is included this callback because it is not + available at that time. + + The 'quorum' callback is sent after the cluster state transition has + completed and does contain quorum information. + In addition, the nodelist contains a list of all nodes known to + votequorum (whether up or down) and their state as well + as information about the quorum device attached (if any). quorum + callbacks will not be sent for qdevice up and down + events unless they affect quorum. + +2016-06-28 Jan Friesse <jfriesse@redhat.com> + + qnetd: Some small improvements + + qnetd: Improve logging + +2016-06-28 Christine Caulfield <ccaulfie@redhat.com> + + votequorum: split callbacks into nodelist and quorum + This split is needed for qdevice, so that it gets the ring_id and + nodelist as part of the sync process and not afterwards - when quorum + has been calculated. + + As this is and unsupported API I'm not too worried about breaking + existing code - all the clients I know of are using the quorum API + anyway as they should be. + +2016-06-28 Jan Friesse <jfriesse@redhat.com> + + qdevice-net: Copy correct ring id in votequorum cb + +2016-06-28 Christine Caulfield <ccaulfie@redhat.com> + + qnetd: Add LMS algorithm + Only lightly tested so far + +2016-06-28 Jan Friesse <jfriesse@redhat.com> + + Improve qdevice-net + - Add cast vote timer (qdevice-net now really votes) + - In sync phase it's impossible retreive cmap config version so it's no + longer sent in membership node list + - Refactor qdevice-net + +2016-06-28 Christine Caulfield <ccaulfie@redhat.com> + + votequorum: make corosync_quorumtool show full ring_id + Add the ring leader node_id to corosync_quorumtool. This is + only shown when votequorum is active + + qnetd: move 2nodelms algo files to the right directory + No, I don't know how that happened. + + qdevice-net: add a 2node Last Man Standing algorithm Signed-off-by: Christine Caulfield <ccaulfie@redhat.com> + +2016-06-28 Jan Friesse <jfriesse@redhat.com> + + qdevice-net: Implement missing messages handlers + + qnetd-certutil: Fix master node variable + + corosync-qnetd-certutil: Delete tabs + + corosync-qnetd-certutil: Delete dev comment + +2016-06-28 Christine Caulfield <ccaulfie@redhat.com> + + qnetd: Move algorithms_register into qnetd-algorithms.c + and fix qnetd_algorithm_vote_info_reply_received + +2016-06-28 Jan Friesse <jfriesse@redhat.com> + + corosync-qnetd-certutl: Improvements + - Location of certificates is now correctly set depending on operation + (qnetd/node) + - Added quick start mode + +2016-06-28 Christine Caulfield <ccaulfie@redhat.com> + + qnetd: Make it easier to add algorithms + Put the algorithms into an array of structure pointers + (a bit like corosync services) so we can easily add more + without having huge switch statements. + + I haven't added any code to the client end that parses the + name into the enum. Yet. + + Don't attempt to free a string we haven't been given. + +2016-06-28 Jan Friesse <jfriesse@redhat.com> + + qnetd: Improvements + - Move adding client to cluster to init phase instead of preinit + - Implement missing ask for vote and vote info messages + - Fix cluster name memory leak + - Refactor unexpected message handler to one generic function + - Move qnetd_client_send_err to new file + - Add qnetd_client_send_vote_info + + qnetd: Add skel of ffsplit algo and cluster list + + Qnetd improvements + - Complete config and membership node list callbacks + - Add client disconnect callback + - Always send msg_seq_num in node list + - Store config and last membership node list + + Qnet improvements + - Support for membership node list + - Initial support for "pluggable" algorithms + + Qdevices-net improvements + - Implement node list + - Implement send buffer list + - Add nodelist message type + - Add ring_id, config_version, data_center_id, node_state, node_info, + node_list_type and vote msg options + +2016-06-28 Christine Caulfield <ccaulfie@redhat.com> + + votequorum: Make display of qdevice more intuitive. + corosync-quorumtool displays the votes of the qdevice whether + or not it is active. This is confusing because if it is not active + then the display looks like there is a vote being contributed to + quorum when there is not. + + This patch displays 0 for qdevice votes if the device is present + (but inactive) and adds the votes after the name. If the device is + contributing votes then they are displayed as normal. + +2016-06-28 Jan Friesse <jfriesse@redhat.com> + + Improve qnet + + Initial commit of qdevice net + + config: get_cluster_mcast_addr error is not fatal + +2016-06-27 bliu <bliu@suse.com> + + low:typo fix in sam.h + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2016-06-22 Ferenc Wágner <wferi@niif.hu> + + Fix typo: Diabled -> disabled + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + + Fix typo: alocated -> allocated + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + + Fix typo: retrive -> retrieve + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + + Fix typo: aquire -> acquire + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + + Fix typo: Uknown -> Unknown + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + + Fix typo: interger -> integer + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + + Fix typo: funtion -> function + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + + cmap_track_add.3.in: fix typo: bellow -> below + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2016-05-27 Christine Caulfield <ccaulfie@redhat.com> + + logconfig: Fix logging reload disabling logfiles + In my previous logconfig patch, adding a subsys so the + logging stanzas could disable logging to a file, because + the subsys closed the file used by the main logging. + + This patch only applies defaults to higher-level logging and + non-deprecated keys. + + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2016-05-27 yuusuke <yusk.iida@gmail.com> + + wd: Warn if values are out of range + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + + parser: WD Read type correctly from corosync.conf + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + +2016-05-24 Christine Caulfield <ccaulfie@redhat.com> + + Add some more RO keys + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + + Reapply config defaults corosync.conf reload + There were several places where defaults were not restored + if the keys were removed from corosync.conf and the file reloaded. + + This patch adds those back so that reloading corosync.conf + has the expected effect when keys are deleted. + + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2016-05-17 Jan Friesse <jfriesse@redhat.com> + + schedwrk: Cleanup and make it work on PPC BE + Schedwrk is passing hdb handle (64-bit) to + totempg_callback_token_create as a context. Context is defined to be + pointer, so there is conversion function which stores 64-bit hdb_handle + into pointer. Potentially, pointer can be 32-bit. This means, check + part of hdb is discarded (and have to get special no_check value in + schedwrk_do) later. This works quite well on 32-bit Little-Endian + system. Sadly on Big-Endian system, check partition of hdb is stored + instead of value. Result is error of hdb_handle_get call. + + Proposed solution is to pass handle pointer to + totempg_callback_token_create as context. This means full hdb (check + + value) can be used in schedwrk_do (easier detection of memory + corruption). + + Main reason for this patch is to remove usage of pointer as integer + value. + + Small drawback of given solution is that handle pointer must be memory + allocated on heap or static memory, making API more bug-prone. Current + usage of schedwrk API across corosync always use memory in .text + section (safe), so it's not a problem. + + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + + cmapctl: Handle corosync errors in print_key func + print_key handles only CS_ERR_TRY_AGAIN error. If different error is + returned, print_key loops forewer. + + Solution is to handle all errors. + + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + +2016-05-12 Michael Jones <jonesmz@jonesmz.com> + + Adds doxygen stubs to include directory + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2016-05-03 Michael Jones <jonesmz@jonesmz.com> + + Add clang-format configuration file + This .clang-format file is written for clang-format version 3.7.1 + + I've attempted to set the options for clang-format so that the + difference between the current code, and the result of the clang format + call is as small as possible. + + Unfortunately, clang-format doesn't yet have the ability to handle every + single possible formatting option, so it's not perfect yet. + + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2016-05-03 Valentin Vidic <Valentin.Vidic@CARNet.hr> + + wd: make watchdog device configurable + Add configuration option resources.watchdog_device allowing runtime + selection of watchdog device. Useful for newer servers having more + than one watchdog available (IPMI and iTCO). + + Special value "off" disables watchdog in configuration rather than + just using build options. Useful when watchdog device is needed + elsewhere (SBD cluster stonith service). + + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2016-05-03 Christine Caulfield <ccaulfie@redhat.com> + + logging: Use our own version of basename + basename() function has some potentially odd issues on + other platforms. + + So, to be safe, here's an internal version. + + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2016-04-26 Christine Caulfield <ccaulfie@redhat.com> + + logsys: fix TOTEM logging when corosync built out of tree + If corosync is built out-of-tree (passing --srcdir to configure) then + TOTEM logging doesn't print anything. + + This is caused by the source filenames (from __FILE__ at compilation + time) having the configured path in them - in this example + ../corosync/exec/totemudp.c etc. The list of totem source filenames + passed to libqb logging facility only has the basenames so the filenames + never match up as libqb does an exact string match. + + I looked into fixing this in libqb but it causes a regression. We can't + simply basename() __FILE__ at the point of calling log_printf as it's i + common also to use __FILE__ to generate the logging source, and + using basename() on both removes the distinction between similarly named + files from different directories which could be a requirement. + +2016-04-22 Christine Caulfield <ccaulfie@redhat.com> + + parser: Make config file parser more hierarchy + pass 'state' down the stack so that the state of the + hierarchy doesn't get lost when there are unexpected items + in the config hierarchy. + + Don't bother setting 'state' on SECTION_END as there's no point + now we're going back up the stack. + + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2016-04-07 Jan Friesse <jfriesse@redhat.com> + + totemconfig: Explicitly pass IP version + If resolver was set to prefer IPv6 (almost always) and interface section + was not defined (almost all config files created by pcs), IP version was + set to mcast_addr.family. Because mcast_addr.family was unset (reset to + zero), IPv6 address was returned causing failure in totemsrp. + Solution is to pass correct IP version stored in + totem_config->ip_version. + + Patch also simplifies get_cluster_mcast_addr. It was using mix of + explicitly passed IP version and bindnet IP version. + + Also return value of get_cluster_mcast_addr is now properly checked. + + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + +2016-02-24 Jan Friesse <jfriesse@redhat.com> + + cpg: Handle ipc error in cpg_zcb_alloc/free + - Error returned by coroipcc_msg_send_reply_receive is now correctly + handled. + - If munmap fails, error is set to proper value and handle is put back + into handle_db + +2016-02-24 Athira Rajeev <atrajeev@linux.vnet.ibm.com> + + cpg: Memory not unmapped in cpg_zcb_free + Function in cpg_zcb_alloc (from code lib/cpg.c) creates + /dev/shm/corosync_zerocopy-XXXXX and does mmap + + The memory is allocated by corosync service (function zcb_alloc + in exec/cpg.c) also and both shares this memory via mmap + (uses MAP_SHARED in mmap call) + + Corosync calls unlink which deletes the file from /dev/shm while + closing the file descriptor, but unmap is not happening correctly + while calling cpg_zcb_free. + + So: + - still the deleted file holds the memory + - As munmap is not happening correctly, the number of mappings per + process gets exceeded and corosync dies with ENOMEM + + From gdb, the size passed to munmap appears to be zero and address + looks wrong. Also in the code return code of munmap is not checked. + + The patch adds check for: + - munmap return code and getting correct address for munmap + + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2016-02-10 Jan Friesse <jfriesse@redhat.com> + + totempg: Fix memory leak + Previously there were two free lists. One for operational and one for + transitional state. Because every node starts in transitional state and + always ends in the operational state, assembly was always put to normal + state free list and never in transitional free list, so new assembly + structure was always allocated after new node connected. + + Solution is to have only one free list. + + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + Reviewed-by: Steven Dake <stdake@cisco.com> + +2016-01-27 Richard B Winters <rik@mmogp.com> + + Fix spelling error in binary corosync + - Changed paramater to parameter in exec/logcconfig.c + + Change-Id: I8a24b0ef5c6621dc6c19d7decbdfe7a255afd10d + Reviewed-by: Steven Dake <sdake@redhat.com> + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + + Fix spelling error in binary corosync-cfgtool + - Changed reenable to re-enable in tools/corosync-cfgtool.c + + Change-Id: I0457bf3040a454a44f0d8343dd2cd8bf8fad16e0 + Reviewed-by: Steven Dake <sdake@redhat.com> + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + + Fix spelling error in manual sam_overview 8 + - Changed usefull to useful + + Change-Id: I2d7872b21e889202cd2b7752db4c76f18fffa95d + Reviewed-by: Steven Dake <sdake@redhat.com> + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2016-01-27 Jan Friesse <jfriesse@redhat.com> + + cmap_keys.8: Fix spelling and grammar errors + - "There are informations" changed to "There is information" + - Other occurrences of informations changed to information + + Original patch was created by Richard B Winters <rik@mmogp.com>, so + thanks for it. + + Reviewed-by: Steven Dake <sdake@redhat.com> + +2016-01-27 Richard B Winters <rik@mmogp.com> + + Fix spelling errors in manual corosync.conf 5 + - dont to don't + - overriden to overridden + - informations to information + + Change-Id: If6644694d750c30ba9f5f43b4eb852485613d64a + Reviewed-by: Steven Dake <sdake@redhat.com> + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + + Fix grammer error in manual votequorum_trackstart + "allows to" was updated to read "allows one to" + + - With a subject it's grammatically correct. + + Change-Id: I9559e31c780e211b651744c6eaa056ce8d4c3db1 + Reviewed-by: Steven Dake <sdake@redhat.com> + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + + Add section in manual title for cpg_zcb_free 3 + Change-Id: Ib80face38dce0345e649297d16cf8a63c5b0e8c1 + Reviewed-by: Steven Dake <sdake@redhat.com> + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + + Add section in manual title for cpg_zcb_alloc 3 + Change-Id: I8c5d6af915203533c80e4eaa574e305a46d74815 + Reviewed-by: Steven Dake <sdake@redhat.com> + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + + Fix incorrect spelling of retrieve from retreive + Corrected the spelling of retrieve, where it was spelled as retreive. + + - There were two cases of this mispelling; one + upper-case and one lower-case + + Change-Id: Ic97fd210d8d3ae7e568e5a2e5d97c6220d2ff628 + Reviewed-by: Steven Dake <sdake@redhat.com> + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2016-01-05 Jan Friesse <jfriesse@redhat.com> + + Update corosync.spec source link + + Update gitignore files + + Remove all links to old ML + +2016-01-04 Ruben Kerkhof <ruben@rubenkerkhof.com> + + totemsrp: Fix clang warning (tautological compare) + gsfrom is always >= 0 + + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + + configure.ac: Make location of .pc overrideable + FreeBSD stores them in /usr/local/libdata/pkgconfig + + This allows us to remove some local hooks in the process. + + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + + Remove a few unused variables and functions + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + + configure.ac: We don't need no C++ compiler + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + + configure.ac: Remove deprecated AC_PROG_LIBTOOL + AC_PROG_LIBTOOL is deprecated version of LT_INIT. Because LT_INIT is + called we can remove it. + + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + + configure.ac: Remove AC_PROG_RANLIB + It was obsoleted by libtool and we don't use ranlib standalone. + + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + + configure.ac: make foreign apply to all Makefiles + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + + Remove unused, obsolete check + From autoconf info Obsolete Macros: + + "These days, it is portable to assume C89, and that signal + handlers return void, without needing to use this macro or RETSIGTYPE." + + And we indeed assume so. + + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2015-12-16 Ruben Kerkhof <ruben@rubenkerkhof.com> + + Fix detection of qb_log_thread_priority_set + This fixes detection of libqb function qb_log_thread_priority_set + if it was installed outside of the standard library search + path, in my case /opt. + + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + + cpghum: Fix type of recv_crc + Fixes build on FreeBSD which doesn't have ulong + + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + + Check for fdatasync + If we don't have it, fall back to fsync + + Fixes the build on FreeBSD + + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + + Fix detection of warning flags for clang + Using ./configure CC=clang, the following flags are detected + as supported: + + checking whether clang supports "-Wgnu89-inline"... yes + checking whether clang supports "-Wno-strict-aliasing"... yes + + Which results in a lot of warnings during make: + + warning: unknown warning option '-Wunsigned-char' + [-Wunknown-warning-option] + warning: unknown warning option '-Wgnu89-inline' + [-Wunknown-warning-option] + + Clang doesn't support these flags, but the compile check returns a + warning, not an error: + + configure:16649: checking whether clang supports "-Wunsigned-char" + configure:16662: clang -E -Wunsigned-char conftest.c + warning: unknown warning option '-Wunsigned-char' + [-Wunknown-warning-option] + 1 warning generated. + configure:16662: $? = 0 + configure:16663: result: yes + + Use -Wunknown-warning-option -Werror if supported + + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2015-11-27 Hideo Yamauchi <renayama19661014@ybb.ne.jp> + + quorum: Display node id as unsigned int. + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2015-11-23 Jan Friesse <jfriesse@redhat.com> + + cts: InitClusterManager is now BootCluster + This is forward port of flatiron-cts + fbe1721e676eafd1f25f470234b646904f54e3f3. + + Thanks to bliu <bliu@suse.com> for pointing out. + +2015-11-16 Christine Caulfield <ccaulfie@redhat.com> + + totemudp: Move udp bind() so that multicast works with IPv6 + It seems that the IPv6 multicast parameters only take effect when bind() + is called, so I've moved the mcast recv socket bind() to the bottom of + totemudp_build_sockets_ip(). + + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2015-11-13 Hideo Yamauchi <renayama19661014@ybb.ne.jp> + + cfgtool: Display nodeid as unsigned int + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2015-10-22 Christine Caulfield <ccaulfie@redhat.com> + + votequorum: Don't send multiple callbacks when nodes join + This patch aligns the votequorum callbacks so that they are + the same as the quorum ones. Previously it was quite common + for votequorum to send one callback for every node in the cluster + when a single new node joined (because it sent one for every + nodeinfo message it received). + + This new system makes much more sense in itself and being + consistent with the internal quorum is also an advantage! + + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2015-09-18 Ferenc Wágner <wferi@niif.hu> + + man: Add synopsis for cpg_zcb_alloc and free + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + + man html index: Update index + - add link to cmap_keys(8) + - remove link to cpg_groups_get(3) + - add missing cpg_* and votequorum_qdevice_* functions + - corosync-fplay has already been removed by ab32894 + + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2015-08-28 Ferenc Wágner <wferi@niif.hu> + + votequorum: Make sure cs_error_t is defined + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2015-08-26 Ferenc Wágner <wferi@niif.hu> + + Close Doxygen group in include/corosync/cmap.h + This avoids warning: end of file while inside a group. + + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + + Doxygen fix for cmap_iter_next() + Remove the extra cmap_ prefix of the iter_handle parameter. + + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + + configure: Correct help entry for logdir + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + + totmesrp: Fix typo in log message + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + + configure: typo in include + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + + man page: Correct option letter for DBus + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2015-07-14 Christine Caulfield <ccaulfie@redhat.com> + + wd: fix setting of watchdog timeouts + Fix setting of initial watchdog timeout, and also changing of timeout. + + Remove redundant starting of timer in exec_init_fn + + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + +2015-07-02 Jason HU <huzhijiang@gmail.com> + + CFG: Prevent CFG orignating messages during SYNC + During SYNC, corosync-cfgtool -R/-H commands can pass through IPC then + send totem messages. This may corrupts + assembly_list_inuse/assembly_list_free if those messages are recedived + after SYNC is done. + + The solution is marking related CFG APIs as + CS_LIB_FLOW_CONTROL_REQUIRED. + + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2015-06-22 Jan Friesse <jfriesse@redhat.com> + + Don't link with libz when not needed + Commit 8cc8e513633a1a8b12c416e32fb5362fcf4d65dd added check for libz + resulting in linking with lib z for all libraries. This is not expected + behavior. Patch solves it by making defining automake conditional so + cpghum is linked only if libz is available and LIBS variable is not + modified at all. + + Log: Add logrotate configuration file + In cman era corosync was depending on logrotate file distributed by + cman. It's good idea to logrotate also on systems without cman (new + clusters). + + Reviewed-by: Fabio M. Di Nitto <fdinitto@redhat.com> + + Add note about rrp active beeing unsupported + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + +2015-06-18 Christine Caulfield <ccaulfie@redhat.com> + + votequorum: Fix auto_tie_breaker behaviour in odd-sized clusters + auto_tie_breaker can behave incorrectly in the case of a cluster + with an odd number of nodes. It's possible for a partition to + have quorum while the other side has the ATB node, and both will + continue working. (Of course in a properly configured cluster one side + will be fenced but that becomes an indeterminate race .. just what ATB + is supposed to avoid). + + This patch prevents ATB from running in a partition if the 'other' + partition might have quorum, and also mandates the use of wait_for_all + in clusters with an odd number of nodes so that a quorate partition + cannot start services or fence an existing partition with the tie + breaker node. + + Signed-Off-By: Christine Caulfield <ccaulfie@redhat.com> + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2015-06-12 Christine Caulfield <ccaulfie@redhat.com> + + totemsrp: Improve logging of left/down nodes + This patch from Hideo Yamauchi improves the logging of + whether nodes leave the cluster cleanly or uncleanly, + making it easier to determine if a node ws shut down + by the operator. There is also the possibility that a + LEAVE message could get missed (due to the node being + in flush state) so this can also make that clearer. + + The modifications are as follows. + + Change 1) I added the list which maintained LEAVE node to totemsrp. + Change 2) I added registration, a search, the handling of to clear LEAVE + node. + Change 3) I added the output to log. + Change 4) I changed an output level of the log. + + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2015-04-17 Christine Caulfield <ccaulfie@redhat.com> + + totem: Log a message if JOIN or LEAVE message is ignored + As per recent email thread, this patch adds a log message if a JOIN or + LEAVE message is discarded while corosync is flushing the receive queue. + + While ignoring a JOIN message is harmless (it will be resent), ignoring + a LEAVE message can cause a longer state transition as it is treated as + a node crashing rather than leaving gracefully, so the system admin + might be confused as to the cause. + + Unfortunately, we can't (at the totemudp level) distinguish between JOIN + or LEAVE messages without a lot more protocol-specific code creeping in + the lower layer so the message is left ambiguous. + +2015-04-10 Christine Caulfield <ccaulfie@redhat.com> + + totemconfig: Check for duplicate nodeids + Having duplicate nodeids in corosync.conf can play havoc with a cluster, + so (as suggested by someone on this list) here is some code to check + that all nodeids are unique. Even if a nodeid is not specified it will + check to be sure that the ID generated from the IP address (ipv4 only) + does not clash with one that is provided. + + It logs all non-unique nodeids to syslog, but only the last is reported + on the command-line to the user which should be enough to get them to + check further. At startup this will cause corosync to fail to start. + +2015-03-16 Christine Caulfield <ccaulfie@redhat.com> + + quorum: don't allow quorum_trackstart to be called twice + If quorum_trackstart() or votequorum_trackstart() are called twice with + CS_TRACK_CHANGES then the client gets added twice to the notifications + list effectively corrupting it. Users have reported segfaults in + corosync when they did this (by mistake!). + + As there's already a tracking_enabled flag in the private-data, we check + that before adding to the list again and return an error if + the process is already registered. + + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2015-03-10 Jan Friesse <jfriesse@redhat.com> + + Really add cpghum + +2015-03-05 Christine Caulfield <ccaulfie@redhat.com> + + cpg: Add support for messages larger than 1Mb + If a cpg client sends a message larger than 1Mb (actually slightly + less to allow for internal buffers) cpg will now fragment that into + several corosync messages before sending it around the ring. + + cpg_mcast_joined() can now return CS_ERR_INTERRUPT which means that the + cpg membership was disrupted during the send operation and the message + needs to be resent. + + The new API call cpg_max_atomic_msgsize_get() returns the maximum size + of a message that will not be fragmented internally. + + New test program cpghum was written to stress test this functionality, + it checks message integrity and order of receipt. + + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2015-03-05 Andrey N. Groshev <greenx@yandex.ru> + + totemsrp: Format member list log as unsigned int + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2015-03-02 Christine Caulfield <ccaulfie@redhat.com> + + Don't allow both two_node and auto_tie_breaker in corosync.conf + The two_node and auto_tie_breaker options are incompatible as they + specify conflicting methods of determining the quorate half of a cluster + partition. + + This patch detects this error in corosync.conf, issues a message and + disables two_node if auto_tie_breaker is present. + + Signed-Off-By: Christine Caulfield <ccaulfie@redhat.com> + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + + Votequorum: Fix auto_tie_breaker default + The default for auto_tie_breaker should be 'lowest' - which is what it + was before the extended ATB functionality of auto_tie_breaker_node was + added, and what the documentation states. + + However this was broken so that if auto_tie_breaker_node was not + specified then auto_tie_breaker itself was ignored. This patch fixes + that. + + It also fixes a typo in a comment. + + Signed-Off-By: Christine Caulfield <ccaulfie@redhat.com> + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2015-01-21 Jan Friesse <jfriesse@redhat.com> + + Handle adding and removing UDPU members atomically + When config file is reloaded with removed UDPU member, internal icmap + index of nodelist.node can change. This can result in removal and then + adding back node. This, with UDPU alive filtering (where member is by + default considered as not a member) makes corosync not sending messages + to such members resulting in new membership creation. + + Solution is to properly test which members were really deleted and added + (instead of relying on internal and dynamic naming of icmap hash table + key name). + + Also trully dynamic add and remove node (via cmap) is now handled by + same function so totem_config->interfaces is now updated properly. + + Reviewed-by: Fabio M. Di Nitto <fdinitto@redhat.com> + +2015-01-20 Jan Friesse <jfriesse@redhat.com> + + corosync_ring_id_store: Use safer permissions + corosync_ring_id_store should use same (safer) permissions as + corosync_ring_id_create_or_load for (eventually) newly created ringid + file. + + Credit to Sjerek for finding this problem. + + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + +2015-01-15 Jason <huzhijiang@gmail.com> + + totem: Ignore duplicated commit tokens in recovery + In active rrp mode, commit tokens are treated as mcast data messages, + thus, rrp directly delivers them to srp layer by active_mcast_recv(). + This will result in duplicated commit tokens being received by srp from + different heartbeat links. If node is in recovery state and has already + sent out the initial orf token, those duplicated commit tokens will + cause message_handler_memb_commit_token() to send initial orf token + again! This is wrong because it resets the orf token content in + instance->orf_token_retransmit, which breaks the token retransmission + state. + + Furthermore, by sending those initial orf tokens again and again, + it may lead active_token_recv() to drop some subsequent orf tokens. + It is OK for rrp because srp will do token retransmission, + but as said above, srp retransmission state has already been broken, + so finally we meet a "token lost in recovery state" condition caused + by software. If token timeout value is large, then it will takes long + time to create a new ring. + + This can be reproduced by having two noded set to active rrp mode, with + two heartbeat links. Then with one node always on, let the other one do + stop/start again and again. It has a low probability to reproduce. + In theory, I think, the more heartbeat links used, the more easily it + can be reproduced. + + This problem can be resolved by letting + message_handler_memb_commit_token() to ignore duplicated commit tokens + in recovery state if node (the ring representation) has already sent + out the initial orf token. + + Different from prev take, this version do not depends on stored token + data but uses originated_orf_token in totemsrp_instance to remember + if initial orf token has been already originated for current membership. + + Reviewed-by: Steven Dake <sdake@redhat.com> + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + +2015-01-14 Jan Friesse <jfriesse@redhat.com> + + Log auto-recovery of ring only once + Make sure to log auto-recovery of ring only once. Every + MESSAGE_TYPE_RING_TEST_ACTIVATE receive is logged, but with lower + priority and more detailed information. + + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + +2015-01-05 Jan Friesse <jfriesse@redhat.com> + + Set RR priority by default + Experience with larger production clusters showed that setting RR + priority for corosync is viable for prevent random fencing, ... + + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + + automake: Check minimum automake version + Corosync needs automake version at least 1.11. Patch adds minimum + version check. + + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + +2014-12-08 Jason <huzhijiang@gmail.com> + + Reset timer_problem_decrementer on fault + After a heartbeat link's FAULTY and its auto re-enable, + active_instance->timer_problem_decrementer did not reset to zero. So in + the next timer_function_active_token_expired() round, + active_timer_problem_decrementer_start() will not be called. This will + result in that the active_instance->counter_problems of this link can + not be decreased any more. Cause rrp lose the ability to tolerate + network fluctuation. + + This problem can be reproduced by the following sequence: + 1) Set RRP in active mode, configure at least 2 heartbeat links. + 2) Unplug one link till corosync-cfgtool -s shows it is FAULTY. + 3) Re-plug this link then corosync-cfgtool -s shows it is active with + no faults. + 4) Unplug this link again but quicky re-plug it before it becomes + FAULTY. + 5) Finally, you can see corosync-cfgtool -s shows it is in + "Incrementing problem counter" state despite it currently is physically + healthy. + + It can be solved by not forget to reset timer_problem_decrementer to + zero in active_timer_problem_decrementer_cancel(). + + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2014-11-24 Jan Friesse <jfriesse@redhat.com> + + config: Ensure mcast address/port differs for rrp + When using multiple interfaces, it's necessary to use different + multicast address/port pair for each interface to make + rrp work correctly. This is now checked in parser. + + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + + config: Process broadcast option consistently + Broadcast option is global but in config set in interface section. When + more interfaces are defined, only broadcast from last section was used. + + Solution is to use broadcast whenever at least one interface use + broadcast. + + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + + config: Make sure user doesn't mix IPv6 and IPv4 + Checking code was there, sadly not correct, so it was possible to enter + one bindnet addr as IPv4 and second as IPv6. Fix is trivial. + + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + +2014-10-13 Jan Friesse <jfriesse@redhat.com> + + man page: Improve description of token timeout + With introduction of token_coefficient, token timeout defined in + configuration file may be no longer reflect real token timeout, what may + be confusing. + + Enhanced description hopefully fix that. + + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + + Store configuration values used by totem to cmap + Some totem configuration values (like token, consensus, ...) are ether + computed or default value is used. It's hard to find out, what + value is really used. + + Solution is to store values in cmap. + + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + +2014-10-13 Christine Caulfield <ccaulfie@redhat.com> + + manpage: Fix English + While I was looking at the above man page changes I thought I'd review + the rest of it. So here are some more English fixes for the cmap_keys.8 + man page + + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2014-10-08 Jan Friesse <jfriesse@redhat.com> + + init: Don't wait for ipc if corosync doesn't start + Init script now checks return code of executing corosync command. If it + fails, ipc_wait section is skipped, resulting in much faster failure of + init script. + + Reviewed-by: Fabio M. Di Nitto <fdinitto@redhat.com> + +2014-10-01 Jan Friesse <jfriesse@redhat.com> + + Adjust MTU for IPv6 correctly + MTU for IPv6 is 20 bytes larger then IPv4. This fact was not taken into + account so IPv6 packets were larger then MTU resulting in fragmentation. + + Solution is to substract correct IP header size. + + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + +2014-09-06 Fabio M. Di Nitto <fdinitto@redhat.com> + + [crypto] fix crypto block rounding/padding calculation + libnss is "weird" in this respect as some block sizes are hardcoded, + others need to be determined dynamically. + + For AES we need to use the values we know since GetBlockSize would + return errors, for 3des (that hopefully nobody is using) the value + returned by GetBlockSize is 8, but let's use the call into libnss + to avoid possible conflicts with distro patching or older versions. + + Now, given the correct block size, the old calculation simply added + block size to the hdr_size. This is not sufficient. + + We use _PAD encryption methods and we need to take that into account. + + _PAD is calculated given the current input buf len and rounded up + to block size boundary, then block_size is added. + + Ideally we would do that on a per packet base but current transport + infrastructure doesn't allow it yet. + + So round up the hdr_size to double the block_size reported by the + cipher. + + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + +2014-08-26 Jan Friesse <jfriesse@redhat.com> + + totemudpu: Send msgs to all members occasionally + To follow spec it's needed to send messages to all nodes (not only + active members) from time to time to detect merge. + + This is needed in situations when totemsrp merge timer isn't running + (because there is enough messages sent by processors) to detect merge. + + Example scenario: + - 3 nodes, all of them running cpgverify + - One node is isolated (iptables for example) + - Node is un-isolated + + Without this commit, node will not merge as long as the cpgverify is + running. + + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + + totemudpu: Implement member_set_active + Member active is used for sending "multicast" messages only to members + of ring. This reduces network load if some nodes are intentionally down. + Only regular multicast message load is reduced (messages sent by + totemudpu_mcast_noflush_send), because special messages (like hold + cancel, join message, ...) still have to be send to all members to + ensure correct behavior. + + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + + totemrrp: Implement *_membership_changed + All *_membership_changed calls totemnet_member_set_active passing 1 as + active parameter for joined nodes and 0 for left nodes. + + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + + totemnet: Add totemnet_member_set_active + totemnet_member_set_active together with transport specific + member_set_active makes possible for totemnet (and more interestingly + transport) to be informed about membership changes. + + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + + totem: Inform RRP about membership changes + Services are informed about membership changes, but if same information + is needed inside totemrrp or totemnet, it's impossible to gather this + information. + + Patch makes this possible for now only for RRP with empty callbacks. + + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + +2014-08-25 Jan Friesse <jfriesse@redhat.com> + + Makefile: Do not install TODO file + + TODO: Remove TODO file + TODO file has many problems like it's not updated regularly, it's not + updated at all in already distributed tarballs, ... + + All relevant RFEs were filled at github as issues with flag "TODO file + convert" so file can finally be removed from git. + + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + +2014-08-22 Christine Caulfield <ccaulfie@redhat.com> + + corosync-quorumtool: add sort options + Adds a -o<a|i|n> option to corosync-votequorum so that the nodes list + can be sorted by Address, node Id or Name. The default remains IP + address. + + Signed-Off-By: Christine Caulfield <ccaulfie@redhat.com> + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2014-08-18 Christine Caulfield <ccaulfie@redhat.com> + + YKD: Fix loading of YKD quorum module + Although YKD is currently unsupported, untested and decprecated it's + handy for testing things in the quorum module. + + This patch allows YKD to actually load without an error. It does not fix + anything else in the service! + + Also remove vsftype and its reference to YKD being the preferred and + default provider from the corosync.conf man page, + as that hasn't been true for a considerable time. + + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2014-08-15 Christine Caulfield <ccaulfie@redhat.com> + + quorumtool: Sort output by nodeid + corosync-quorumtool prints the node listing by IP address + (as passed back to it from corosync) but this can be + counter-intuitive if the node IDs aren't in the same + order as the IP addresses. This patch sorts the nodes + by node ID so that the output is easier for humans to + parse. + + Reviewed-By: Jan Friesse <jfriesse@redhat.com> + +2014-08-12 Christine Caulfield <ccaulfie@redhat.com> + + votequorum: Add cmap key to reset wait_for_all + It's possible in a two_node cluster (and others but it's more likely + with just two) that a node could be booted up after downtime or failure + and the other node is not available for some reason. In this case it + would not be allowed to proceed because wait_for_all is enforced. + + This patch provides a cmap key to clear this flag in the desperate + situation where that becomes necessary. It should only be used with + extreme caution and will be wrapped up in pcs which should also check + that fencing has been run. + + Signed-Off-By: Christine Caulfield <ccaulfie@redhat.com> + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2014-08-12 Jason HU <huzhijiang@gmail.com> + + Cancel token holding while in retransmition + When there is no other activty on ring but only retransmition, and + token is in hold mode, the retransmition will become slow. More over, + if the retransmition is always fail but token rotation works well, then + it takes quite a lone time + (fail_to_recv_const * token_hold = 2500 * 180ms = 450sec) for the + retransmit requester to meet the "FAILED TO RECEIVE" condition to + re-construct a new ring. + + This problem can be solved by checking if retransmits are present + before going into hold. If a node is the retransmit requester or + the resender, it set my_token_held to 0 to speed up retransmition + and omit further unnecessary sending of token_hold_cancel signal. + + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + +2014-08-05 Jan Friesse <jfriesse@redhat.com> + + votequorum: Make qdev timeout in sync configurable + Configuration option quorum.device.sync_timeout is available for setting + qdevice poll timeout for synchronization phase. Default value is 30 + sec. + + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + + testvotequorum2: Opt for polling with old ringid + Option -F is added to force sending old ringid for given number of + times. Option is useful for testing failure scenario during corosync + synchronization phase. + + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + + votequorum: Block sync until qdevice poll + If qdevice is registered a alive, corosync waits in sync phase until + timeout expires or qdevice votes with correct nodeid parameter. + + This gives qdevice time to decide to vote or not undisturbed and without + time hazard. + + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + + ipc: Process votequorum messages during sync + This is needed for qdevice to be able to process messages during + synchronization phase. + + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + + votequorum: Add ring id to poll call + If votequorum service receives incorrect (not current) ringid, call is + ignored and CS_ERR_MESSAGE_ERROR is returned. + + This and previous commits makes incompatible changes in votequorum + API/ABI, so library version is increased. + + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + + votequorum: Return current ring id in callback + Returning ring id will be used in poll function. + + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + +2014-07-25 Christine Caulfield <ccaulfie@redhat.com> + + totemconfig: Make sure join timeout is less than consensus + The thesis contains this paragraph: + + " The Join timeout is shorter than the Consensus timeout and is used to + increase the probability that Join messages from all currently + working processors are received during a single round of consensus." + + Empirically I can confirm that making join less than consensus can cause + havoc with a cluster so I think we should enforce this. + + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2014-07-24 Christine Caulfield <ccaulfie@redhat.com> + + config: Fix typos + Fix several places where 'then' is used instead of 'than' in error + messages and a comment. + + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2014-07-24 Jan Friesse <jfriesse@redhat.com> + + corosync-keygen: Replace printf/exit call with err + Calling of err makes code shorter, easier to read and eliminates + problems with forgotten newline characters. + + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + +2014-07-22 Jan Friesse <jfriesse@redhat.com> + + totemconfig: refactor nodelist_to_interface func + Move finding of bindaddr in nodelist to generally usable function + totem_config_find_local_addr_in_nodelist and refactor + config_convert_nodelist_to_interface function to use it. + + Reviewed-by: Fabio M. Di Nitto <fdinitto@redhat.com> + + totemconfig: totem_config_get_ip_version + Add totem_config_get_ip_version to get user configured ip version. + Make totem_config_read use this newly introduced function. + + Reviewed-by: Fabio M. Di Nitto <fdinitto@redhat.com> + + totemconfig: Free ifaddrs list + Reviewed-by: Fabio M. Di Nitto <fdinitto@redhat.com> + +2014-07-21 Vladislav Bogdanov <bubble@hoster-ok.com> + + Slightly rework corosync-keygen. + Allow it to create keyfile not in the hardcoded location. + Drop root checks. + Minor cosmetic fixes to the man-page. + + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2014-07-21 Fabio M. Di Nitto <fdinitto@redhat.com> + + be consistent in using CPPFLAGS vs CFLAGS + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + + cleanup after test-driver + update .gitignore and make maintainer-clean target + + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2014-07-16 Vladislav Bogdanov <bubble@hoster-ok.com> + + Implement config file testing mode + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2014-07-15 Vladislav Bogdanov <bubble@hoster-ok.com> + + corosync-cmapctl: Allow -p option to delete keys + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2014-07-09 Jan Friesse <jfriesse@redhat.com> + + Fix compiler warning introduced by previous patch + QB loop signal handler prototype differs from signal(2) prototype. + Solution is to create wrapper functions. + +2014-07-03 zouyu <hopkings2005@gmail.com> + + Handle SIGSEGV and SIGABRT signals + SIGSEGV and SIGABRT signals are now correctly handled (blackbox is + dumped and logsys is finalized). + + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + + fix memory leak produced by 'corosync -v' + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2014-07-01 Kazunori INOUE <kazunori.inoue3@gmail.com> + + systemd: Config example for corosync wd service + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2014-06-27 Jan Friesse <jfriesse@redhat.com> + + votequorum: Do not process events during reload + During reload, local_node_pos is deleted and reinstation is handled in + totemconfig after reload is finished. votequorum handles this events and + tries to reload it's configuration. This led to logging a little scary + messages (even nothing bad is happening, because after local_node_pos + reinstation everything back to normal). + + Solution is to stop processing events during reload. Sadly, simple + tracking of config.reload_in_progress doesn't work because LibQB events + triggering order is undefined so votequorum reload handler can be called + before totemconfig (and before local_node_pos is reinstatied). + + So new config.totemconfig_reload_in_progress key is defined with very + similar semanthic as config.reload_in_progress but set inside + totem_reload_notify function. Votequorum then use this new key. + + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + + Make config.reload_in_progress key read only + It's not very good idea to allow user apps changing internal key + reload_in_progress. + + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + +2014-06-12 Jan Friesse <jfriesse@redhat.com> + + Doc: Enhance INSTALL file a bit + Some information in INSTALL file were pretty outdated. This patch moves + them closer to current release. + + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + + coroparse: More strict numbers parsing + Previous safe_atoi didn't check range of input values so if for example + user used -1 s token timeout, it was converted to UINT32_MAX without + letting user know. + + Another safe_atoi problem was using strtol. This works pretty well on + 64-bit systems, where long integer is usually 64-bits long, sadly on + 32-bit systems, it is usually 32-bit long. And because strtol returns + signed integer, it was not possible to enter 32-bit value with highest + bit set. + + Solution is to use strtoll which is guaranteed to be at least 64-bits + long and check value range. + + Also error message now contains also information about expected value + range. + + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + +2014-06-10 Konstantin <konstantin.ponomarenko@gmail.com> + + Install doc: Correct a typo + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2014-06-09 Lidong Zhong <lzhong@suse.com> + + init: change return value when starting corosync + When corosync is started by systemd, it would be considered + as failed because it returns a non-zero value, even though it + starts sucessfully. + + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2014-06-02 Jan Friesse <jfriesse@redhat.com> + + Move ringid store and load from totem library + Functions for storing and loading ring id was in the totem library. This + causes problem, what to do when it's impossible to load or store ring + id. Easy solution seemed to be assert, but sadly this makes hard for + user to find out what happened (because corosync was just aborted and + logsys didn't flush) + + Solution is to move these functions to main.c, where is much easier to + handle error. This also makes libtotem free of any file system + operations. + + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + + Introduce get_run_dir function + Run dir (LOCALSTATEDIR/lib/corosync) was hardcoded thru whole codebase. + Totemsrp was trying to create and chdir into it, but also + takes into account environment variable COROSYNC_RUN_DIR creating + inconsistency. + + get_run_dir correctly returns COROSYNC_RUN_DIR (when set) or + LOCALSTATEDIR/lib/corosync. This is now used by all functions instead of + hardcoded string. + + All occurrences of mkdir/chdir are removed from totemsrp and chdir is + now called in main function. Mkdir call is completely removed, because + it was not used anyway (check in main.c was called before totemsrp init, + so mkdir was never called) and also make install and/or package system + should take care of creating this directory with correct + permissions/context. + + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + + logsys: Log warning if flightrecorder init fails + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + + logsys: Log error if blackbox cannot be created + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + +2014-05-15 Jan Friesse <jfriesse@redhat.com> + + totemiba: Fix incorrect failed log message + rdma_join_multicast failed ... message parameters was swapped. + + Also information about multicast join is now logged as notice. + +2014-05-14 Yevheniy Demchenko <zheka@uvt.cz> + + totemiba: Add multicast recovery + Totemiba wasn't able to survive SubnetManager handover or + restart. If SM was migrated to another node, corosync logged + "multicast error" and losses connectivity. + + Commit should solve this situation. + + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2014-05-09 hfu <askfuhu@gmail.com> + + Indent: Remove newline before else branch start + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + + Indent: Remove space in negation of expression + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2014-05-09 Kazunori INOUE <kazunori.inoue3@gmail.com> + + upstart: Make job conf file configurable + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2014-05-07 Jan Friesse <jfriesse@redhat.com> + + config: Allow dynamic change of token_coefficient + token_coefficient change in cmap didn't triggered change. So only way + how to change token_coefficient was editing config file and reload. + + Patch let's key totem.token_coefficient to be processed so + token_coefficient can be dynamically changed. + + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + +2014-04-11 Jan Friesse <jfriesse@redhat.com> + + init: Make init script configurable + Init script loads /etc/sysconfig/corosync (or /etc/defaults/corosync) by + default, but it didn't existed by default and also no options was + defined. + + Patch adds COROSYNC_INIT_TIMEOUT (how many seconds to wait for ipc + initialization) with default value 1 minute (instead of previous 10 + seconds, what may be too small value for some productions) and + COROSYNC_OPTIONS (by default empty) containing options directly + passed to corosync executable. + + Specfile template is also modified to install example of init file + configuration. + + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + +2014-03-25 Jan Friesse <jfriesse@redhat.com> + + Add token_coefficient option + Token coefficient is used only when nodelist is specified and contains + at least 3 nodes. If so, real token timeout is then computed as + token + (number_of_nodes - 2) * token_coefficient. This allows cluster + to scale without manually changing token timeout every time new + node is added. This value can be set to 0 resulting in effective + removal of this feature. + + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + + totemconfig: Log errors on key change and reload + When volatile key was changed (cmap set or reload) and checks fails, + nothing was logged. + + Values are now checked and error string is logged on problems. + + Also totem_config is dumped to log (DEBUG level) after every + volatile key change and every reload. + + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + + totemconfig: Key change process dependencies + When key with dependency was changed, dependant keys were not recomputed. + Nice example is consensus timeout. If token timout was changed, + consensus timeout was not recomputed correctly (nether via cmap change + of key nor via cfg reload). + + Solution is almost complete refactor of handling volatile defaults. + + totem_volatile_config_read now handles not only storing cmap key to + totem_config structure, but also checking of existence, comparing with + zero value and properly storing defaults. + + totem_set_volatile_defaults is gone. It's function was splitted into + totem_volatile_config_read and totem_volatile_config_validate functions. + + Reload callback and change of key callback are now mostly same functions + and both calls totem_volatile_config_read. + + Patch also fixes small memory leak. totem.vsftype key is not used for + long time and original totem_volatile_config_read wasn't freeing + allocated memory returned by icmap_get_string. Whole reading of + totem.vsftype is removed. + + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + + Really clear totemconfig nodes on reload + When reload was called nodes were constantly added to totemconfig + nodelist. + + So simple corosync-cfgtool -R resulted very quickly in filling whole + array and segfault. + + Solution is to clear member_count. + + Clearing is also moved directly to put_nodelist_members_to_config to + make sure it's always processed. + + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + + Log: Make reload of logging work + When reload was called multiple times (~20), logging to file stopped + working. + + Main problem was hidden in the fact, that log file was opened multiple + times, because even target_id was shared via subsystem loggers, file + name was not. + + Solution is to ALWAYS set proper log file name into subsystem logger + (copy is stored). This will not only fix problem but also removes small + leak. + + Also if filename didn't changed, function can return sooner. + + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + +2014-03-17 Jan Friesse <jfriesse@redhat.com> + + config: Handle totem_set_volatile_defaults errors + When totem_set_volatile_defaults is called from totem_config_validate + return code is unchecked. + + It's then perfectly possible to set (for example) join timeout to very + small value (1) and consensus value is then set to 0 making corosync + unable to create membership. + + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + +2014-02-26 Jan Friesse <jfriesse@redhat.com> + + votequorum: Properly initialize atb and atb_string + icmap_get_* behavior is to NOT modify passed variable when it doesn't + success. So we must initialize variable before icmap_get_* call. + + Reviewed-by: Fabio M. Di Nitto <fdinitto@redhat.com> + +2014-02-25 Jan Friesse <jfriesse@redhat.com> + + mon: Make monitoring work + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + + mon: Pass correct pointer to inst + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + + mon: Fix comparsion typo + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + + mon: Make mon compilable with libstatgrab ver 0.9 + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + +2014-02-19 Jan Friesse <jfriesse@redhat.com> + + cpg: Make sure left nodes are really removed + When node is paused and other nodes has in meantime exited cpg process, + paused node after resume doesn't update it's membership correctly so on + previously paused node exited cpg process is still visible. + + Solution is to compare join list with cpd and remove all pids which are + not included in join list. + + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + + cpg: Make sure nodid is always logged as hex num + Also number is prefixed by 0x so it's easier to spot that number is + hexadecimal. + + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + + cpg: Refactor mh_req_exec_cpg_procleave + Most of functionality is moved to do_proc_leave function to make it + reusable. + + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + +2014-02-18 Jan Friesse <jfriesse@redhat.com> + + totemsrp: Fix typo with cont gather + Patch f3ffd3da5c71a10e1783a38e50bafc61192854f6 introduced named states + of state-machine, but sadly contains logical problem causing + stats.continuous_gather increasing even when it shouldn't. Problem is + not critical, because continuous_gather is set to 0 on successful + membership creation. + + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + +2014-02-17 Christine Caulfield <ccaulfie@redhat.com> + + votequorum: Add extended options to auto_tie_breaker + This patch adds more flexibility to the auto_tie_breaker feature of + votequorum. With this, not only can the lowest nodeid be used as + a tie breaker, but also the highest, or a node from a nominated list. + + If there is a list of nodes, the first node in the list that was not + part of the previous partition is used. This allows the user to + specify a preferred set of nodes but prevents a split-brain if the + cluster divides evenly with a node in each half. + + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2014-01-23 Masatake YAMATO <yamato@redhat.com> + + Free object allocated at quorum_register_callback + Memory object allocated with malloc at quorum_register_callback + is not freed. The object is linked to internal_trackers_list. + + The object is unlinked at quorum_unregister_callback. However, + it is not freed at the function. + + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2014-01-14 Jan Friesse <jfriesse@redhat.com> + + Properly check result of symlink + Error message is displayed when it's impossible to create symlink to + fdata file. + + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + + Fix cppchecks warning + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + + Close devnull file handler + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + +2014-01-14 Christine Caulfield <ccaulfie@redhat.com> + + votequorum: Add missing man pages + Man pages for votequorum_qdevice_update and votquorum_qdevice_master_wins + were missing from the last commit. + +2014-01-13 Jason <huzhijiang@gmail.com> + + totem: Drop invalid join msg in operational state + According to the totem paper, if a processor + receives a join message in the operational state and if the + receivers identifier is in the join messages fail list, + then join message should be ignored. + + By applying this validation of join messages, we can avoid unnecessary + switching from operational state to gather state(or even lead to rings + can not be merged) like the following to happen. + + 1. Initially, there is only one ring contains three nodes, say + ring(A,B,C). + 2. A and B network partition, "in the same time", C is down. + 3. Node A sends join message with proclist:A,B,C. faillist:NULL. + Node B sends join message with proclist:A,B,C. faillist:NULL. + 4. Both A and B consensus timeout due to network partition. + 5. A and B network remerged. + 6. Node A sends join message with proclist:A,B,C. faillist:B,C. and + create ring(A). + Node B sends join message with proclist:A,B,C. faillist:A,C. and + create ring(B). + 7. Say join message with proclist:A,B,C. faillist:A,C which sent + by node B is received by node A because network remerged. + 8. Node A shifts to gather state and send out a modified join message + with proclist:A,B,C. faillist:B. Such join message will prevent + both A and B from merging. + 9. Node A consensus timeout (caused by waiting node C) and sends join + message with proclist:A,B,C. faillist:B,C again. + + Same thing happens on node B, so A and B will dead loop forever + in step 7, 8 and 9. + + As the paper also said: "If a processor receives a join message in the + operational state and if the sender's identifier is in the receiver's + my_proclist and the join message's ring_seq is less than the receiver's + ring sequence number, then it ignores the join message too." So these + patch applying these validations of join messages altogether. + + Reviewed-by: Steven Dake <sdake@redhat.com> + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2014-01-13 Jan Friesse <jfriesse@redhat.com> + + systemd unit: Make sure network is really up + Change network.target to network-online.target to make sure network is + really up and running when starting corosync. + + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + +2014-01-13 Christine Caulfield <ccaulfie@redhat.com> + + votequorum: Improve/add documentation for quorum device API + Improve the man pages for the votequorum qdevice API and include + them in the build. Also improve the testvotequorum2 test program. + + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2014-01-07 Christine Caulfield <ccaulfie@redhat.com> + + votequorum: Add persistent expected_votes tracking. + This patch adds the option to store expected_votes to + persistent storage. This is needed to allow_downscale + to operate properly. + +2013-11-26 Jan Friesse <jfriesse@redhat.com> + + cfgtool: return error on reload failure + If reload fails, return code is set to value >0 to indicate error. + + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + +2013-11-08 Christine Caulfield <ccaulfie@redhat.com> + + man pages: Note that votequorum's allow_downscale is unsupported + Reviewed-by: Fabio M. Di Nitto <fdinitto@redhat.com> + +2013-11-04 Jan Friesse <jfriesse@redhat.com> + + logsys: Make logging of totem work again + Because of change in libqb (9abb686) logging of TOTEM subsystem stopped + working. + + Instead of rely on previous behavior (implicit substring match), all + totem files are now explicitly given. + + Also QB subsystem now uses comma separated filelist instead of previous + function calling. + + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + +2013-10-24 Masatake YAMATO <yamato@redhat.com> + + totemsrp: Show English message when memb_state_gather_enter is called + The reason why memb_state_gather_enter is invoked was printed + in integer code. This patch introduces human readable English + messages for the code. + + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2013-09-20 Yevheniy Demchenko <zheka@uvt.cz> + + totemiba: Check if configured MTU is allowed by HW + Solution use aproximation of totem structures. This needs to be + rewritten in proper way. Also MTU checking should be implemented for IP + transports. + + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + + totemiba: Fix parameters position for poll_add + Parameters in functions like mcast_cq_send_event_fn, ... were defined in + incorrect order. Also their names were weird. + + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + + totemiba: Del channel fd from poll before destroy + Corosync freezes after several peer node connects/disconnects. The + freeze happens in recv_token_cq_recv_event_fn in ibv_get_cq_event call. + The problems is in fact, that after each peer node connect, + recv_token_accept_destroy is called, which tries to call + poll_dispatch_delete _after_ freeing of completion_channel. As + completion_channel contains fd, handlers are not disconnected from + poller properly. This leads to complete inconsistency in subsequent + calls to handlers. + + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + + totemiba: Properly allocate RDMA buffers + 1. In UD mode receivnig side of RDMA application should have enough + space in buffer to hold data and GRH. Also, sge.length on the receiving + size should be set to max_msg_size + sizeof (struct ibv_grh). Current + corosync doesn't take grh in the account and does not work if mtu is set + to the real mtu of IB port (it works if netmtu is set to < 2048-40). + 2. ibv_wc.byte_len is the actual lentgh of the received packet, i.e. + msg_len + GRH. GRH length should be substracted in further proceeding. + If not, it might cause problems when messages get retransmitted, as + their apparent size will constantly grow. + 3. Current corosync will not work with rdma and mtus > 2048. Most modern + IB HW supports 4096 mtu. + + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2013-09-12 Christine Caulfield <ccaulfie@redhat.com> + + Reload: document config.reload_in_progress in man page + + Reload: Add atomic reload to log config + When a reload is in progress, wait until it has all finished + before re-reading all of the logging parameters + + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + + Reload: Add atomic reload to totemconfig + When a reload is in progress, wait until the whole thing has + finished before setting parameters + + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + + Reload: Add reload code to cfg + Add the code to do the actual corosync.conf reload to cfg, along with + a corosync-cfgtool -R command to trigger it + + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + + Reload: Make coroparse use a designated icmap hash table + Pass an icmap hashtable into coroparse so we can load it into + a temporary one during reload + + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2013-09-10 Jan Friesse <jfriesse@redhat.com> + + icmap: Add func to test equality of two key values + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + +2013-09-10 Christine Caulfield <ccaulfie@redhat.com> + + [PATCH] Replace freopen with open/dup2 when daemonizing + This patch replaces the existing freopen method of + forcing stdin/out/err to /dev/null with the more + usual system of open/dup2. + + While I don't like posting patches I don't fully understand, + this patch seems to fix a problem where stdout/err get + assigned to a socket causing double logging output + on systemd. + + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2013-09-03 Christine Caulfield <ccaulfie@redhat.com> + + Add log message to exit signal handler + I've seen a few instances where corosync has shut down for + apparently 'no reason'. In fact most of the time the shutdown + has been caused by an external source (often an init script) + but it's not been obvious what has happened and people + implicate the deamon + + This patch simply adds a log message to the signal handler + when it is called so that the cause of the shutdown is obvious. + + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2013-08-29 Jan Friesse <jfriesse@redhat.com> + + icmap: Add map copy function + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + + icmap: Add function to return item data pointer + icmap_get_r is now implemented using this function. Function is not very + safe tho defined as static. + + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + + icmap: Fix value len checking for strings + Implementation should allow pass only parts of string (shorten string) + and must prohibit reading of uninitialized memory. + + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + + icmap: Add function to return global icmap + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + +2013-08-27 Jan Friesse <jfriesse@redhat.com> + + icmap: Allow multiple icmap instances + Patch adds reentrant version of most of functions (with exception of RO + flags support and tracking) to allow multiple icmap instances existence + inside corosync. + + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + +2013-08-19 Michael Chapman <mike@very.puzzling.org> + + Fix scheduler pause-detection timeout + qb_loop_timer_add expects the timeout to be in nanoseconds, but we were + passing the value in milliseconds. Scale the timeout appropriately. + + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2013-07-10 Jan Friesse <jfriesse@redhat.com> + + Remove dir pragma for xml2conf.xsl in specfile + Reviewed-by: Fabio M. Di Nitto <fdinitto@redhat.com> + +2013-07-09 Jan Friesse <jfriesse@redhat.com> + + cts: Update DC_IDLE pattern + +2013-07-08 Kazunori INOUE <inouekazu@intellilink.co.jp> + + Use restart policy in the corosync-notifyd unit + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2013-07-04 David Vossel <dvossel@redhat.com> + + ipc_glue: proper ref counting during service connection iteration + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + + ipc_glue: Remove connection unref with no matching reference. + We don't reference the connection object on creation, so there + is on reason to dereference it on disconnect. + + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + + ipc_glue: Fixes connection ref count leak + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2013-07-01 Kazunori INOUE <inouekazu@intellilink.co.jp> + + systemd: fix typo in unit file + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + + notifyd: fix handle dispatch functions results + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2013-06-27 Christine Caulfield <ccaulfie@redhat.com> + + The corosync message "A processor joined or left the membership" is vague and unhelpful. People have to look for the following quorum message and try to deduce which nodes have joined or left from that and past membership messages, even though the routine printing the message already has this information to hand. + This patch fixes that message so that it prints the nodeids of the nodes + that have joined/left the cluster. + + Signed-Off-By: Christine Caulfield <ccaulfie@redhat.com> + Reviewed-By: Jan Friesse <jfriesse@redhat.com> + +2013-06-21 Jan Friesse <jfriesse@redhat.com> + + Log: Output parse errors to syslog + When corosync was started in daemon mode and there was parse error, no + way existed how to find out what happened (this is usual situation with + systemd enabled systems). Solution seems to be output to syslog by + default. + + Also redundant line with setting logsys is removed because it's no + longer needed, because FORK and THREADED mode options has no longer + effect. FORK is handled by libqb by default and THREADED mode is forced + by calling logsys_thread_start. + + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + + totemconfig: Prevent leak of cluster_name str + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + + service: Fix memleak in service_unlink_and_exit + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + +2013-06-20 Eric Raymond <esr@thyrsus.com> + + Fix patch for corosync.conf.5 + he markup around an example is impossible to lift to XML or HTML + cleanly. Simplifying it fixes the problem. + + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2013-06-18 Jan Friesse <jfriesse@redhat.com> + + cpg: Set umask in memory_map function + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + + ipc_glue: Check service name len + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + + ipc_glue: Introduce constant for service name len + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + + cfg: Check interface status and name length + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + + cfg: Check number of interfaces + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + + cfg: Introduce CFG_MAX constants + Instead of magic numbers, use constant. + + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + + totemrrp: Make status string shorter + Status string should be same lenght as needed for cfg + ringstatusget function. + + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + + totem: Don't leak instance variable on crypto fail + Reviewed-by: Fabio M. Di Nitto <fdinitto@redhat.com> + + totemudpu: Handle fd leak in totemudpu + Reviewed-by: Fabio M. Di Nitto <fdinitto@redhat.com> + + totemconfig: Check length of rrp_mode string + Reviewed-by: Fabio M. Di Nitto <fdinitto@redhat.com> + + coroparse: Ensure that config items fits into cmap + Reviewed-by: Fabio M. Di Nitto <fdinitto@redhat.com> + + cpg: Check cpg zc buffer path name length + Reviewed-by: Fabio M. Di Nitto <fdinitto@redhat.com> + +2013-06-17 Jan Friesse <jfriesse@redhat.com> + + votequorum: Prevent leak in qdevice_is_configured + Also LEAVE from function is now properly logged. + + Reviewed-by: Fabio M. Di Nitto <fdinitto@redhat.com> + +2013-06-13 Jan Friesse <jfriesse@redhat.com> + + ipc_cfg: Make coverity happy + Reviewed-by: Fabio M. Di Nitto <fdinitto@redhat.com> + + Initialize error variable in ykd_init + Reviewed-by: Fabio M. Di Nitto <fdinitto@redhat.com> + + Initialize node_found in nodelist_to_interface fun + Reviewed-by: Fabio M. Di Nitto <fdinitto@redhat.com> + + Initialize item in cmap_mcast_send + Reviewed-by: Fabio M. Di Nitto <fdinitto@redhat.com> + + cmapctl: Remove unnecessary access check + Reviewed-by: Fabio M. Di Nitto <fdinitto@redhat.com> + + votequrorum: Assert sender nodeid is known + Reviewed-by: Fabio M. Di Nitto <fdinitto@redhat.com> + + quorumtool: Properly check nodeid cli param + Return value of strtol can be negative, but result was assigned to + unsigned integer. To make check correct, result is first assigned to + signed variable, checked, and then assigned to unsigned variable. + + Reviewed-by: Fabio M. Di Nitto <fdinitto@redhat.com> + + Handle errors when getting SC_PAGESIZE + Reviewed-by: Fabio M. Di Nitto <fdinitto@redhat.com> + + Check result of logsys_subsys_create + Reviewed-by: Fabio M. Di Nitto <fdinitto@redhat.com> + + Check logsys_format_set result in logsys setup + Reviewed-by: Fabio M. Di Nitto <fdinitto@redhat.com> + + Use proper totem_ip_address size in memset + Reviewed-by: Fabio M. Di Nitto <fdinitto@redhat.com> + + Free icmap strings in logconfig + Reviewed-by: Fabio M. Di Nitto <fdinitto@redhat.com> + + Properly break MAIN_CP_CB_DATA_STATE_QDEVICE state + Reviewed-by: Fabio M. Di Nitto <fdinitto@redhat.com> + + Do not dereference format_buffer when it's NULL + Reviewed-by: Fabio M. Di Nitto <fdinitto@redhat.com> + + Check icmap str get for clustername + Even this check is really not needed, it's nice to have it and on fault + ensure that cluster_name is really NULL. + + Reviewed-by: Fabio M. Di Nitto <fdinitto@redhat.com> + + Handle dispatch functions results + On error, exit corosync-notifyd properly. + + Reviewed-by: Fabio M. Di Nitto <fdinitto@redhat.com> + + Properly check result of stat func in coroparse + Reviewed-by: Fabio M. Di Nitto <fdinitto@redhat.com> + + testcpg: Check length of input group name + Reviewed-by: Fabio M. Di Nitto <fdinitto@redhat.com> + + common ta: Close client sockets + Reviewed-by: Fabio M. Di Nitto <fdinitto@redhat.com> + + common ta: Close listener socket + Reviewed-by: Fabio M. Di Nitto <fdinitto@redhat.com> + + test sam: Free temp str allocated by cmap + Reviewed-by: Fabio M. Di Nitto <fdinitto@redhat.com> + + sam test agent: Assert results of send func + Reviewed-by: Fabio M. Di Nitto <fdinitto@redhat.com> + + votequorum test agent: Assert results of send func + Reviewed-by: Fabio M. Di Nitto <fdinitto@redhat.com> + + cpg test agent: Test len of name for cpg_join + Reviewed-by: Fabio M. Di Nitto <fdinitto@redhat.com> + + cpg test agent: Cfg shutdown flag is not bitfield + Reviewed-by: Fabio M. Di Nitto <fdinitto@redhat.com> + + cpg test agent: Assert results of send function + Reviewed-by: Fabio M. Di Nitto <fdinitto@redhat.com> + + cpg test agent: Fix typo in assert + Assert should compare rc, instead of setting it. + + Reviewed-by: Fabio M. Di Nitto <fdinitto@redhat.com> + + Rename make target coverity + Makefile target "coverity" is renamed to coverity-aggressive, and target + coverity is defined as a little less aggressive. + + Reviewed-by: Fabio M. Di Nitto <fdinitto@redhat.com> + +2013-05-24 Michael van der Westhuizen <r1mikey@gmail.com> + + Allow corotypes.h to be included from C++ code. + +2013-05-21 Jan Friesse <jfriesse@redhat.com> + + Remove unnecessary mmap in cpg + Code for zero-copy in cpg does following mmaps: + - Mmap anonymous, private memory to some address (-> malloc) + - Mmap shared memory of fd to address returned by first mmap + (effectively shadows first mapping) + + This is not necessary and only one mapping is needed. + + Reviewed-by: Steven Dake <sdake@redhat.com> + Reviewed-by: Fabio M. Di Nitto <fdinitto@redhat.com> + +2013-04-16 Jan Friesse <jfriesse@redhat.com> + + Install sysconfig/corosync-notifyd in specfile + Reviewed-by: Fabio M. Di Nitto <fdinitto@redhat.com> + + Improve corosync-notifyd example + Example now contains default option -d, so corosync-notifyd init script + don't fall. Also description is improved a little bit. + + Reviewed-by: Fabio M. Di Nitto <fdinitto@redhat.com> + +2013-04-12 Masatake YAMATO <yamato@redhat.com> + + Fix a typo in README.recovery + Fix a typo. + + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2013-04-10 Kazunori INOUE <inouekazu@intellilink.co.jp> + + Add Upstart job configuration file + Reviewed-by: Fabio M. Di Nitto <fdinitto@redhat.com> + +2013-04-08 Jan Friesse <jfriesse@redhat.com> + + Detect big scheduling pauses + Add poll timer scheduler to be called 3 times per token timeout. + If poll timer was not called for more then 0.8 * token timeout, it means + corosync process was not scheduled and ether token_timeout should be + increased or load should be reduced (useful for VM, where host is + overcommitted so VM is not scheduled as expected). + + Reviewed-by: Fabio M. Di Nitto <fdinitto@redhat.com> + +2013-04-03 Andrei Belov <defanator@gmail.com> + + Added checks for "--as-needed" and "--version-script" linker flags. + This makes possible to build Corosync from sources on SunOS 5.11, + Mac OS X 10.8.3 and probably other systems with non-GNU linker. + + Reviewed-by: Fabio M. Di Nitto <fdinitto@redhat.com> + +2013-04-02 Jan Friesse <jfriesse@redhat.com> + + Support for numerical uid/gid + Reviewed-by: Fabio M. Di Nitto <fdinitto@redhat.com> + +2013-04-02 Yuichi SEINO <seino.cluster2@gmail.com> + + build: pass enable options to "make rpm" from configure + Reviewed-by: Fabio M. Di Nitto <fdinitto@redhat.com> + +2013-03-28 Andrei Belov <defanator@gmail.com> + + Improved POSIX-compliant handling of getpwnam_r() and getgrnam_r(). + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2013-03-27 Jan Friesse <jfriesse@redhat.com> + + Make cts work with pacemaker 1.1.9 + This is counterpart of adcc21a30c70a40861736bc9d902c2ef2d4b42c4 in + pacemaker. + +2013-03-21 Jan Friesse <jfriesse@redhat.com> + + totempg: Make iov_delv local variable + Reviewed-by: Fabio M. Di Nitto <fdinitto@redhat.com> + + cfgtool: Retry shutdown on CS_ERR_TRY_AGAIN + It may be nice to deliver macro cs_repeat as default in some include + file. + + Reviewed-by: Fabio M. Di Nitto <fdinitto@redhat.com> + +2013-03-20 Jan Friesse <jfriesse@redhat.com> + + cts: Output nodeid consistently as unsigned int + Reviewed-by: Fabio M. Di Nitto <fdinitto@redhat.com> + +2013-03-19 Xia Li <xli@suse.com> + + Convert the nodeid byte order to be aligned with network order + When using corosync with clear_node_high_bit setting to yes, + the highest bit is cleared. When all the cluster nodes are in + one subnet, we probably configure the IP addresses as follows: + + node1: 147.2.207.64 + node2: 147.2.207.192 + + If the byte order of the nodeid is little endian, wiping off the + highest bit will make the two nodes have the same nodeid! + + This patch fixes this by converting the nodeid to network order. + + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2013-03-08 Jeremy Fitzhardinge <jeremy@goop.org> + + Handle ERANGE from getpwnam_r / getgrnam_r + These functions return ERANGE if the supplied buffer is too small to + fit a line. Try doubling the buffer a few times until it works. + +2013-02-26 Michael Chapman <mike@very.puzzling.org> + + build: make --disable-testagents work + The --disable-testagents option sets enable_testagents to "no". This + variable should always be explicitly tested against "yes", not just + that it is non-empty. + + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2013-01-31 Jan Friesse <jfriesse@redhat.com> + + Handle unexpected closing brace in config file + If configuration file contains closing brace before opening brace + at top level, configuration parsing is stopped and file is not + completely parsed. Solution is to detect extra closing brace and display + error. + + Reviewed-by: Fabio M. Di Nitto <fdinitto@redhat.com> + + Handle colon in configuration file + If colon was entered as part of value on end of value, it is deleted. + This makes impossible to enter (legal) IPv6 address ending with :: (like + fed0::). + + Also when line contains both brace and colon, it is parsed twice (first + as key = value and second as start of section). This is handled by + continue in if section. + + Reviewed-by: Fabio M. Di Nitto <fdinitto@redhat.com> + +2013-01-31 Fabio M. Di Nitto <fdinitto@redhat.com> + + votequorum: port to sync API (take 2) + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2013-01-14 Fabio M. Di Nitto <fdinitto@redhat.com> + + crypto config: update man pages and examples + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + + totemconfig: enforce hmac config when crypto is enabled + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2013-01-14 Kazunori INOUE <inouekazu@intellilink.co.jp> + + log: move Corosync started log messages + "Corosync Cluster Engine ... started" message is shown after + logsys is full configured. + + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2013-01-14 Fabio M. Di Nitto <fdinitto@redhat.com> + + crypto: drop < 2.3 protocols and onwire compat + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + + totemcrypto: fix hmac key initialization + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2012-12-12 Jan Friesse <jfriesse@redhat.com> + + Move qb_loop creation after daemonization + Creating qb_loop before daemonization is not problem for poll or epoll + type loops, but it's problem for kqueue, because kqueue is not shared + in child with parent after fork. + + Reviewed-by: Fabio M. Di Nitto <fdinitto@redhat.com> + +2012-12-06 Jan Friesse <jfriesse@redhat.com> + + cmap: Handle NULL params in few more functions + Reviewed-by: Fabio M. Di Nitto <fdinitto@redhat.com> + +2012-12-03 Jan Friesse <jfriesse@redhat.com> + + Add option to specify ip version + Default is ipv4. + + Reviewed-by: Fabio M. Di Nitto <fdinitto@redhat.com> + +2012-11-22 Jan Friesse <jfriesse@redhat.com> + + Add waiting_trans_ack also to fragmentation layer + Patch for support waiting_trans_ack may fail if there is synchronization + happening between delivery of fragmented message. In such situation, + fragmentation layer is waiting for message with correct number, but it + will never arrive. + + Solution is to handle (callback) change of waiting_trans_ack and use + different queue. + + Reviewed-by: Fabio M. Di Nitto <fdinitto@redhat.com> + + Handle segfault in backlog_get + If instance->memb_state is not OPERATION or RECOVERY, we was passing NULL + to cs_queue_used call. + + Reviewed-by: Fabio M. Di Nitto <fdinitto@redhat.com> + +2012-11-22 Steven Dake <sdake@redhat.com> + + Fix problem with sync operations under very rare circumstances + This patch creates a special message queue for synchronization messages. + This prevents a situation in which messages are queued in the + new_message_queue but have not yet been originated from corrupting the + synchronization process. + + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + Reviewed-by: Fabio M. Di Nitto <fdinitto@redhat.com> + +2012-11-22 Jan Friesse <jfriesse@redhat.com> + + Fix handling of NULL parameters in cmap + Reviewed-by: Fabio M. Di Nitto <fdinitto@redhat.com> + +2012-11-22 Fabio M. Di Nitto <fdinitto@redhat.com> + + totemcrypto: implement crypto packet format 2.2 and crypto_compat: config opt + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + + Update .gitignore files + Untracked files: + (use "git add <file>..." to include in what will be committed) + + compile + init/corosync + init/corosync-notifyd + test/ploadstart + + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2012-11-21 Evgeny Barskiy <barskiy@rts.ru> + + corosync to start in infiniband + redundant ring active/passive mode + Corosync now works with infiniband transport in any redundant ring mode + + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2012-11-20 Fabio M. Di Nitto <fdinitto@redhat.com> + + votequorum: fix handling of expected_votes/votes changes from cmapctl + and allow natural selection to take place.... + + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + + quorum-tool: use option to generate machine parsable output + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2012-11-08 Jan Friesse <jfriesse@redhat.com> + + Add support for selecting IPC type + Reviewed-by: Fabio M. Di Nitto <fdinitto@redhat.com> + + Check successful initialization of IPC + Reviewed-by: Fabio M. Di Nitto <fdinitto@redhat.com> + +2012-11-07 Jan Friesse <jfriesse@redhat.com> + + Enahnce manpages a little bit + Reviewed-by: Fabio M. Di Nitto <fdinitto@redhat.com> + +2012-11-07 Angus Salkeld <asalkeld@redhat.com> + + Try reduce the number of sprintf's + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + + Override the link_all_deplibs=no in ubuntu + but allow the user to disable this. + + Reviewed-by: Fabio M. Di Nitto <fdinitto@redhat.com> + +2012-11-06 Jan Friesse <jfriesse@gmail.com> + + Merge pull request #2 from dfcluster/master + Update corosync man page + +2012-11-05 Jan Friesse <jfriesse@redhat.com> + + If failed_to_recv is set, consensus can be empty + If failed_to_recv is set (node detect itself not able to receive + message), we can end up with assert, because my_failed_list and + my_member_list are same list. This is happening because we are not + following specification and we allow to mark node itself as failed. + Because if failed_to_recv is set and we reached consensus across nodes, + single node membership is created (ignoring both fail list and + member_list), we can skip assert. + + Reviewed-by: Fabio M. Di Nitto <fdinitto@redhat.com> + +2012-11-05 Fabio M. Di Nitto <fdinitto@redhat.com> + + quorumtool: add local nodeid to global quorum info section + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + + quorumtool: add (local) next to the nodename when displaying node data + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + + quorumtool: change default command from -h to -s + default run will show status instead of help text + + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2012-10-30 dfcluster <df.cluster@gmail.com> + + Update man/corosync.conf.5 + +2012-10-29 Jacek Konieczny <jajcus@jajcus.net> + + link libtotem_pg to libqb + The libtotem_pg library uses symbols from libqb, so it should be + explicitely linked with it. This doesn't cause problems for corosync + binary itself, as it is linked to both libraries, but can cause + problems if anything else links to libtotem_pg.so and automated + checkers can show this as a library problem. + + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + + Fix dbus configuration install + The corosync-signals.conf DBus configuration file was not + installed even if DBus support was enabled because of a configure + test error. + + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2012-10-17 Jan Friesse <jfriesse@redhat.com> + + Correctly check if service was unloaded + my_processing_idx is pointer to received service list, instead of global + service number. If we check state of service we should use service_id + instead of my_processing_idx. + + Reviewed-by: Fabio M. Di Nitto <fdinitto@redhat.com> + + Define AES_*_KEY_LENGTH if not defined + Reviewed-by: Fabio M. Di Nitto <fdinitto@redhat.com> + +2012-10-16 Andreas Gruninger <Andreas.Grueninger@lgl.bwl.de> + + Missing space in man/Makefile.am + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2012-10-15 Fabio M. Di Nitto <fdinitto@redhat.com> + + totemcrypto: add support for different encryption methods + (backport from nsscrypto kronosnet code) + + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2012-10-11 Jan Friesse <jfriesse@redhat.com> + + Change specfile URL and Source + Reviewed-by: Fabio M. Di Nitto <fdinitto@redhat.com> + + Document config_version option + Reviewed-by: Fabio M. Di Nitto <fdinitto@redhat.com> + +2012-10-10 Jan Friesse <jfriesse@redhat.com> + + Use systemd-rpm macros in specfile + Reviewed-by: Fabio M. Di Nitto <fdinitto@redhat.com> + +2012-10-09 Jan Friesse <jfriesse@redhat.com> + + Enhance spec file + Weird construct buildtrunk is gone. Instead of that, we use bcond + feature. Also buildtrunk is renamed to runautogen, because SVN era is + gone. + + Reviewed-by: Fabio M. Di Nitto <fdinitto@redhat.com> + +2012-10-08 Jan Friesse <jfriesse@redhat.com> + + Make totemiba compile again + + Return back "Totem is unable to form..." message + This patch returns back SUBJ functionality. It rely on fact, that + sendmsg will return error, and if such error is returned for long time, + it's probably because of firewall. + + Reviewed-by: Fabio M. Di Nitto <fdinitto@redhat.com> + + Move "Totem is unable to form..." message to main + Reviewed-by: Fabio M. Di Nitto <fdinitto@redhat.com> + + Use unix socket for local multicast loop + Instead of rely on multicast loop functionality of kernel, we now use + unix socket created by socketpair to deliver multicast messages to + local node. This handles problems with improperly configured local + firewall. So if output/input to/from ethernet interface is blocked, node + is still able to create single node membership. + + Dark side of the patch is fact, that membership is always created, so + "Totem is unable to form a cluster..." will never appear (same applies + to continuous_gather key). + + Reviewed-by: Fabio M. Di Nitto <fdinitto@redhat.com> + +2012-10-04 Fabio M. Di Nitto <fdinitto@redhat.com> + + man page: fix quorum references + +2012-10-03 Jan Friesse <jfriesse@redhat.com> + + Store config_version of other nodes + Config version of other nodes is stored in + runtime.totem.pg.mrp.srp.members.NODEID.config_version key. Also when + local config_version is changed, all nodes are informed. + + Reviewed-by: Fabio M. Di Nitto <fdinitto@redhat.com> + +2012-10-02 Jan Friesse <jfriesse@redhat.com> + + Support for check of config version on start + Config version is requested from other nodes. If our config version is + not 0 and differes from highest config version of other nodes, corosync + quits. + + Reviewed-by: Fabio M. Di Nitto <fdinitto@redhat.com> + + Make cmap_mcast_send return correct error code + Reviewed-by: Fabio M. Di Nitto <fdinitto@redhat.com> + + Make service_build contain correct number of msgs + Reviewed-by: Fabio M. Di Nitto <fdinitto@redhat.com> + + Align items in cmap_mcast_send + Aligning function (kernel style magic) MAR_ALIGN_UP is used for + aligning of items in req_exec_cmap_mcast message. + + Reviewed-by: Fabio M. Di Nitto <fdinitto@redhat.com> + + Support for flt and dbl in mcast_endian_convert + Reviewed-by: Fabio M. Di Nitto <fdinitto@redhat.com> + + Add support for swab float and double + This uses general swabbin function which is able to swab every byte in + array. + + Reviewed-by: Fabio M. Di Nitto <fdinitto@redhat.com> + + Add support for sending cmap values to wire + Function is little more complex, but it is designed to be used in future + without big changes. + + Reviewed-by: Fabio M. Di Nitto <fdinitto@redhat.com> + + Parse config_version as 64-bit uint + Reviewed-by: Fabio M. Di Nitto <fdinitto@redhat.com> + +2012-09-27 Jan Friesse <jfriesse@redhat.com> + + Don't access invalid mem in totemconfig interfaces + When ringnumber in config file was set to value bigger or equal to + INTERFACE_MAX, we are using this big value as index to totemconfig + interfaces array, resulting to access to invalid memory and segfault. + + Instead of that, ringnumber is now checked and proper error message is + printed if value is too big. + + Reviewed-by: Fabio M. Di Nitto <fdinitto@redhat.com> + +2012-09-19 Jan Friesse <jfriesse@redhat.com> + + Move some totem and cpg messages to trace level + Messages which are flow messages, rather then lifecycle are now logged + in trace level. + + Reviewed-by: Fabio M. Di Nitto <fdinitto@redhat.com> + + Add support for debug level trace in config file + Reviewed-by: Fabio M. Di Nitto <fdinitto@redhat.com> + +2012-09-12 Fabio M. Di Nitto <fdinitto@redhat.com> + + icmap: fix mapping return codes + Reviewed-by: Angus Salkeld <asalkeld@redhat.com> + +2012-09-11 Fabio M. Di Nitto <fdinitto@redhat.com> + + build: fix indirect linking vs rpath by linking --as-needed + libtotem_pg links against libnss/nspr and correctly sets RPATH + corosync links against libtotem_pg, but libtool (via .la) enforces + an extra layer of linking against libnss/nspr without setting RPATH. + + corosync final binary can't resolve the second linking and fails + to load. + + This issue is visible only on NetBSD that enforces a much stricter + use of rpath (vs other OS/distros). Using --as-needed avoids that + and it's generally safe to use on other OS'es. + + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + +2012-09-10 Fabio M. Di Nitto <fdinitto@redhat.com> + + build: make secure build optional + apparently some versions of gcc accepts the pie/relro bits + but fails to produce a working binary (freebsd9) + + Reviewed-by: Angus Salkeld <asalkeld@redhat.com> + + build: fix regression with handling fPIC and DPIC + Reviewed-by: Angus Salkeld <asalkeld@redhat.com> + +2012-09-07 Fabio M. Di Nitto <fdinitto@redhat.com> + + build: add support for relro and bindnow + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + + build: autodetect if compiler support -fPIE and -pie for linking + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + + build: clean AM_CFLAGS and AM_CPPFLAGS usage around + also set commont include dirs. + + fPIC and DPIC are automatically detected and added + as required by libtool. We don't need to carry it around. + + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + + totemconfig: drop unnecessary includes + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2012-09-06 Jan Friesse <jfriesse@redhat.com> + + Remove newline in logsys_config_file_set_unlocked + Also remove commented leftover. + + Reviewed-by: Fabio M. Di Nitto <fdinitto@redhat.com> + + Make threaded log work + Previous two log releated patches tried to solve few problems with + threaded libqb, but introduced regressions when running in daemon mode. + + This patch takes bigger hammer and hopefully solves all problems. + + Reviewed-by: Fabio M. Di Nitto <fdinitto@redhat.com> + +2012-09-05 Jan Friesse <jfriesse@redhat.com> + + Ensure qb_log thread is started + Reviewed-by: Fabio M. Di Nitto <fdinitto@redhat.com> + +2012-09-03 Jan Friesse <jfriesse@redhat.com> + + Ensure no garbage left in msghdr for sendmsg call + Reviewed-by: Steven Dake <sdake@redhat.com> + + Use uint8_t in setsockopt when needed + Reviewed-by: Steven Dake <sdake@redhat.com> + + OpenBSD getifaddrs returns netmask without sa_family + So we relax netmask check and set to same family as ipaddr + if needed + + Reviewed-by: Steven Dake <sdake@redhat.com> + + Add header files when needed + Reviewed-by: Steven Dake <sdake@redhat.com> + + Make use of EBADMSG conditional + Reviewed-by: Steven Dake <sdake@redhat.com> + +2012-08-31 Angus Salkeld <asalkeld@redhat.com> + + Fix cpg_membership_get() + The wrong size was getting set in exec/cpg.c + + Reviewed-by: Fabio M. Di Nitto <fdinitto@redhat.com> + +2012-08-30 Fabio M. Di Nitto <fdinitto@redhat.com> + + build: drop OS detection + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + + build: bring SOLARIS up to the same standard as other OSes + drop all SOLARIS specific ifdefs and replace them with feature checks + + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + + build: drop TS_CLASS definition, used nowhere + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + + build: drop COROSYNC_BSD out of configure + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + + totemip: clean up headers a lot more + getifaddrs is always available if there is freeifaddr. + + all BSD and openindiana have it defined in ifaddr.h. + + drop a bunch of obsoleted headers. + + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + + build: drop MAP_ANONYMOUS check from configure + define it only in case it's not there + + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + + build: drop COROSYNC_DARWIN definition + not referenced anywhere in the code + + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + + build: drop completely linux detection + from now on there are no unsupported OS'es... + + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + + build: make libstatgrab the facto default for monitoring service + drop duplicate code and remove the last COROSYNC_LINUX ifdefs + around + + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + + totemip: add missing include + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + + build: use MADV_NOSYNC only when it's defined + so far only FreeBSD defines it. + + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + + build: make exec/totemip os detection free + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + + build: drop _SEM_SEMUN_UNDEFINED + not referenced anywhere in the code + + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2012-08-30 Jan Friesse <jfriesse@redhat.com> + + Log: Use threaded mode for syslog and file log + Syslog and file log can block, so it's good idea to use libqb threaded + mode to prevent it. + + Reviewed-by: Fabio M. Di Nitto <fdinitto@redhat.com> + + Use native IPC mechanism + Instead of hardcoded SHM, we should use NATIVE, so libqb is able to find + out what is best/availiable mechanism. + + Reviewed-by: Fabio M. Di Nitto <fdinitto@redhat.com> + + Add la, lo and .libs files/directory to gitignore + Reviewed-by: Fabio M. Di Nitto <fdinitto@redhat.com> + +2012-08-30 Fabio M. Di Nitto <fdinitto@redhat.com> + + build: fix library version export in ELF header + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2012-08-29 Fabio M. Di Nitto <fdinitto@redhat.com> + + build: fix spec file creation + hopefully once and for all... + + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + + spec: cleanup spec file to be slightly smarter + move all the conditionals in 2 variables to make it easier to read + and maintain and fix install of dbus-signal file + + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + + build: fix do_snmp conditionals + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2012-08-28 Fabio M. Di Nitto <fdinitto@redhat.com> + + build: fix make rpm + remove .la files from binary rpm + + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + + build: cleanup configure.ac for non-linux OS'es + libstatgrab ships with pkg-config file. Use it. + + watchdog is implemented only on linux. Error out if necessary. + + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + + build: drop PATH_MAX definition from dark ages + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + + build: drop redefine of NAME_MAX since nothing references it anylonger + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + + build: drop last reference to OS_CPPFLAGS and use AC EXTENSIONS instead + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + + build: fix build on openindiana 151a + openindiana toolchain is rather messy. This is the first cut only + + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + + build: remove bashism in cc support check + this is required for all systems that don't use bash for /bin/sh + + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + + build: drop SOLARIS_OPTS and DARWIN_OPTS + SOLARIS was unused + + DARWIN needs verification + + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + + build: minor cleanup and final removal of OS_LDFLAGS + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + + build: rework snmp library detection and setting of CFLAGS + this allows to drop more OS_* specific bits + + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + + build: drop more dlopen leftovers from dinosaur era... + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + + build: make monitoring optional in corosync exec + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + + build: update .gitignore files + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + + build: fix make distcheck + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + + build: make path to bash configurable at build time + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + + build: order library install to make sure libsam can relink against libcmap + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + + build: fix usage of sed and drop build-aux/genman + "sed -i" is a GNU specific extention. + + Replace with more portable version and drop completely genman + in favour of a make rule. + + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + + test: fix testcpg build on FreeBSD9 + HOST_NAME_MAX is intentionally NOT defined on BSD. + + Users of HOST_NAME_MAX should be using sysconf or use very + conservative values. + + limits.h still defines _POSIX_HOST_NAME_MAX. use that instead. + + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + + build: respect watchdog conditional when building corosync exec + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + + common_lib: make it build on FreeBSD 9 and Mac OS X + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + + build: use libtool for linking + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + + build: cleanup configure.ac + sort different sections in more logical way and add check for sed + plus a few missing headers/functions + + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2012-08-21 Tim Beale <tim.beale@alliedtelesis.co.nz> + + Remove redundant default-config code + We were checking 'hold_timeout == 0' in 3 different places when setting up + the default totem config. + + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2012-08-21 Tim Beale <tlbeale@gmail.com> + + Remove unused structure + Nowhere in the corosync codebase references this structure. + + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + + man: corosync.conf seqno_unchanged_const description incorrect + seqno_unchanged_const is used to determine when the rep should hold the + token. The merge detection timeout is started after any idle rotation of + the token. + + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2012-08-16 Jan Friesse <jfriesse@redhat.com> + + Make logging of WD and MON service correct + MON and WD services are using fsm.h, which calls log function. Such + messages were incorrectly logged as SERV (or random service) which made + debugging hard. + + Solution is to add callback parameter to fsm functions and do actual + logging there. + + Handling of failure states is also done in calback now. + + Reviewed-by: Fabio M. Di Nitto <fdinitto@redhat.com> + + Fix dbus part of corosync-notifyd + Function dbus_connection_read_write which causes block for 0.5 sec is + replaced by correct dispatching of input and flushing of output buffer. + + Reviewed-by: Fabio M. Di Nitto <fdinitto@redhat.com> + +2012-08-14 Jan Friesse <jfriesse@redhat.com> + + example conf: Remove Duplicate "debug" statement + Reviewed-by: Fabio M. Di Nitto <fdinitto@redhat.com> + +2012-08-14 Fabio M. Di Nitto <fdinitto@redhat.com> + + build: fix libsam dependencies when using make -j + tested on linux (can't verify solaris) + + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2012-08-13 Jan Pokorny <jpokorny@redhat.com> + + Example config files: fix a typo + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2012-08-09 Jan Friesse <jfriesse@redhat.com> + + IPC: Call lib function only when it's possible + send_ok was incorrectly tested as boolean, even it's errno type + variable. + + Reviewed-by: Fabio M. Di Nitto <fdinitto@redhat.com> + + Close sockets after deleting from poll + This will remove (non critical) debug message from QB about polling on + closed FD. + + Reviewed-by: Fabio M. Di Nitto <fdinitto@redhat.com> + + cpg: Check input param name_t length + IPC is using buffer of CS_MAX_NAME_LENGTH for name. If user calls + function with longer string, such string can be passed to service + incomplete. + + Solution is to not allow string larger then CS_MAX_NAME_LENGTH + and return error. + + Same applies to cpg service. + + Reviewed-by: Fabio M. Di Nitto <fdinitto@redhat.com> + + Handle sync and service unload correctly + When sync started and service is unloaded in meantime, it can happen that + sync will call sync_* functions on unloaded service. + + Reviewed-by: Fabio M. Di Nitto <fdinitto@redhat.com> + + service: remove leftovers from mt corosync + Multithreaded corosync used to use many ugly workarounds. One of them is + shutdown process, where we had to solve problem with two locks. This was + solved by scheduling jobs between service exit_fn call and actual + service unload. Sadly this can cause to receive message from other node + in that meantime causing corosync to segfault on exit. + + Because corosync is now single threaded, we don't need such hacks any + longer. + + Reviewed-by: Fabio M. Di Nitto <fdinitto@redhat.com> + + cmap: Check input param name_t length + IPC is using buffer of CS_MAX_NAME_LENGTH for name. If user calls + function with longer string, such string can be passed to service + incomplete. + + Solution is to not allow string larger then CS_MAX_NAME_LENGTH (what is + same as ICMAP_KEYNAME_MAXLEN) and return error. + + Reviewed-by: Fabio M. Di Nitto <fdinitto@redhat.com> + +2012-08-09 Fabio M. Di Nitto <fdinitto@redhat.com> + + quorumtool: fix display when nodenames or reverse lookup is missing + when requesting nodename in ring0_addr, and reverse dns lookup + is not available, quorumtool output becomes inconsistent. + + quorum { + provider: corosync_votequorum + } + + nodelist { + node { + ring0_addr: fedora-master-node1 + nodeid: 1 + } + node { + ring0_addr: fedora-master-node2 + nodeid: 2 + } + } + + [fabbione@daikengo corosync]$ nslookup fedora-master-node1 + .. + Address: 192.168.2.193 + + [fabbione@daikengo corosync]$ nslookup 192.168.2.193 + .. + ** server can't find 193.2.168.192.in-addr.arpa.: NXDOMAIN + + [root@fedora-master-node1 tools]# corosync-quorumtool -s + ... + + Membership information + ---------------------- + Nodeid Votes Qdevice Name + 1 1 NR fedora-master-node1.int.fabbione.net + 2 1 NR 192.168.2.194 + + (similar on the other node) + + With this patch, when nodelist is available, we simply return ring0_addr + name for a node, fixing the output to be: + + Membership information + ---------------------- + Nodeid Votes Qdevice Name + 1 1 NR fedora-master-node1 + 2 1 NR fedora-master-node2 + + that also removes possible inconsistencies between nodename, FQDN + and so on, by using what user requested in corosync.conf + + In case ring0_addr is not available or numeric output is requested, + behavior remains as before. + + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2012-08-08 Fabio M. Di Nitto <fdinitto@redhat.com> + + votequorum: change init/clean up to deal with exit races + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2012-08-07 Fabio M. Di Nitto <fdinitto@redhat.com> + + quorumtool: make output more meaningful + there is really no point to have a per node view of (vote)quorum + since all the info are always there. + + drop the -n option for status/display nodes and improve + the output to provide a full cluster view at any given time. + + Old format: + + [root@fedora-master-node2 ~]# corosync-quorumtool -s + Quorum information + ------------------ + Date: Mon Aug 6 10:22:27 2012 + Quorum provider: corosync_votequorum + Nodes: 2 + Ring ID: 8 + Quorate: Yes + + Votequorum information + ---------------------- + Node ID: 3254954176 + Node state: Member + Node votes: 1 + Qdevice votes: 1 + Expected votes: 3 + Highest expected: 3 + Total votes: 3 + Quorum: 2 + Flags: Quorate Qdevice + + Membership information + ---------------------- + Nodeid Votes Name + 3238176960 1 fedora-master-node1.int.fabbione.net + 3254954176 1 fedora-master-node2.int.fabbione.net + 0 1 QDEVICE (Alive/Voting/NoMasterWins) + + New format: + + [root@fedora-master-node1 tools]# ./corosync-quorumtool -s + Quorum information + ------------------ + Date: Mon Aug 6 15:50:03 2012 + Quorum provider: corosync_votequorum + Nodes: 2 + Ring ID: 48 + Quorate: Yes + + Votequorum information + ---------------------- + Expected votes: 3 + Highest expected: 3 + Total votes: 3 + Quorum: 2 + Flags: Quorate Qdevice + + Membership information + ---------------------- + Nodeid Votes Qdevice Name + 3238176960 1 A,V,MW fedora-master-node1.int.fabbione.net + 3254954176 1 NR fedora-master-node2.int.fabbione.net + 0 1 QDEVICE + + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + + votequorum: make the last QDEVICE define name consistent with everything else + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + + votequorum: bump soname + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + + votequorum: display qdevice votes + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + + votequorum: add missing return call + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + + votequorum: make master_wins check stricter + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + + votequorum: add ENTER/LEAVE for consistency + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + + votequorum: fix library checks on qdevice name and readd qdevice_update + for some odd reasons qdevice_update was just gone.. totally... + + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + + votequorum: delegate qdevice_master_wins setting to qdevice + votequorum has no business to device if master_wins setting is correct or not. + only the qdevice can decide and should set the value for votequorum. + + Logic is: + + - user requests master_wins from config + - corosync starts + - qdevice starts + - qdevice reads cmap values / register with votequorum + - qdevice decides if the node can support master_wins or not and tells votequorum + - at this point votequorum can check if an unquorate node is part of the master_wins + partition + + it is the qdevice responsibility to keep that value up to date in votequorum and the + value can be changed at runtime. + + this commit also exchange per node master_wins information to lay down the infrastructure + to verify discrepancies in node config for master_wins (coming next on this channel). + + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + + votequorum: drop votequorum_qdevice_getinfo and collapse data into getinfo + it's really pointless to have basically a duplicated API call + to transfer one value and one name. + + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + + votequorum: external defines should all be prefixed with VOTEQUORUM_ + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + + votequorum: drop _FLAG_ from defines + those are all info flags.. it's redudant and inconsistent + + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + + votequorum: fix define name to match reality + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + + qdevice: implement master_wins partition + in previous incarnation of qdisk + cman, master_wins was restricted + to 2 node only. + + In this new version it is possible to use master_wins for any cluster + size. + + Let's assume a 4 node cluster. Each node votes 1, qdevice votes 3. + + node 1 becomes qdevice master + node 2/3/4 no + + In case of a split (let's assume 2/2): + + partition 1: {4, 1} + partition 2: {1, 1} + + node 2 in partition 1 would normally be unquorate, leaving effectively + only node 1 active. + + master_wins allows node 2 to recognize to be part of a quorate partition + (since node1 is broadcasting that qdevice is voting) and retain + quorum. + + node1 has never lost quorate status since qdevice is voting there. + + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + + votequorum: fix flag check for qdevice votes propagation + and cleanup similar code to make it more readable + + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + + votequorum: remove last instance of state and rename it to cast_vote + also align naming of vote to cast_vote for info calls + + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + + votequorum: several major bug fixes and code cleanup + - add a protection check to avoid spurious messages on membership + change + - greately simplify processing of nodeinfo, since the only + data that we send for qdevice over nodeinfo is the number of votes + - fix a flag check to trigger quorum calculation that would + leave a cluster unquorate under certain conditions + + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + + votequorum: move to the new flag structure + simplify different code path as checks are simpler, separate + ALIVE and CAST_VOTE + + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + + votequorum: simplify getinfo data and protect against call against quorum node + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + + votequorum: use REGISTERED flag consistently + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + + votequorum: simply internal qdevice_getinfo function + as data are moving around we can drop lots of special cases + + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + + votequorum: add qdevice CAST_VOTE status/flag + this is a preparation commit for the next changes. right now it is + no more than an alias to ALIVE. + + CAST_VOTE is required to support master/slave feature from qdevice. + + Effectively a quorum device can be: + + Not registered / registered (connected to API but nothing else is happening) + + if registered: + + Not alive / alive (quorum device is petting the API via poll and timer is running) + + if alive: + + Not voting (slave) / voting (master) + + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + + votequorum: rename NODE_FLAGS_QDEVICE_STATE to NODE_FLAGS_QDEVICE_ALIVE + STATE is confusing and overloaded term in votequorum as it's used for nodes + and other bits. + + make the name unique and ALIVE means that the qdevice is heartbeating + to votequorum. + + improve display of the status in tools and tests. + + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + + votequorum: rename NODE_FLAGS_QDEVICE to NODE_FLAGS_QDEVICE_REGISTERED + make the flag name explicit + + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + + votequorum: re-enable qdevice api + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + + quorum devices: add support to build system + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2012-08-04 Steven Dake <sdake@redhat.com> + + Add groff as a BuildRequires to spec file + According to Fedora packaging guidelines, groff is not on the list + of package exceptions for BuildRequires. A recent change in the Fedora + build system has triggered breakage in building rpm packages and it + is likely this package won't build for Fedora 18. + + Reference: + http://fedoraproject.org/wiki/Packaging:Guidelines#Exceptions_2 + + Reviewed-by: Fabio Di Nitto <fdinitto@redhat.com> + +2012-08-02 Jan Friesse <jfriesse@redhat.com> + + Don't call sync_* funcs for unloaded services + When service is unloaded, sync shouldn't call sync_init|process|activate + and abort functions. It happens very rare, but in process of unloading + all services, totem can recreate membership and bad things can happen + (service is unloaded, so there may be access to already freed memory, + ...) + + Solution is to fetch services sync handlers in every time when we are + building service list instead of using precreated one. + + Reviewed-by: Steven Dake <sdake@redhat.com> + + Introduce SERVICES_COUNT_MAX macro + Sync/service was using maximal number of services in ehter numberic form + (magic constant) or inconsistently, this means using + SERVICE_HANDLER_MAXIMUM_COUNT which means maximal number of handlers. + + New macro solves this. + + Reviewed-by: Steven Dake <sdake@redhat.com> + +2012-07-30 Jan Friesse <jfriesse@redhat.com> + + cmap_keys: Document few more runtime statistics + Reviewed-by: Steven Dake <sdake@redhat.com> + + cts: Delete shm blacbox after corosync kill + This makes SHM Audit pass in test CpgCfgChgOnExecCrash. + + Reviewed-by: Fabio M. Di Nitto <fdinitto@redhat.com> + + cpg: Be more verbose for procjoin message + Reviewed-by: Steven Dake <sdake@redhat.com> + +2012-07-12 Jan Friesse <jfriesse@redhat.com> + + cts: Change DC_IDLE pattern + Reviewed-by: Fabio M. Di Nitto <fdinitto@redhat.com> + + cts: Make shm_leak_audit run + Reviewed-by: Fabio M. Di Nitto <fdinitto@redhat.com> + + Correctly free state string in wd + Reviewed-by: Fabio M. Di Nitto <fdinitto@redhat.com> + + cts: Change local_start[ing|ed] pattern in CTS + Previous pattern is no longer send to syslog. Use first pattern which + is. + + Reviewed-by: Fabio M. Di Nitto <fdinitto@redhat.com> + + Support for crypto_ and nodelist in lenses + Reviewed-by: Fabio M. Di Nitto <fdinitto@redhat.com> + +2012-07-11 Jan Friesse <jfriesse@redhat.com> + + Revert "Free state variable allocated in wd_resource_state_is_ok" + This reverts commit 01c63ca17ca5b5a780cff0dd96d7d432b3e980a3. + +2012-06-14 Jan Friesse <jfriesse@redhat.com> + + cpg: Enhance downlist selection algorithm + Let's say we have 2 nodes: + - node 2 is paused + - node 1 create membership (one node) + - node 2 is unpaused + + Result is that node 1 downlist is selected, so it means that from node 2 + point of view, node 1 was never down. + + Patch solves situation by adding additional check for largest previous + membership. + + So current tests are: + 1) largest (previous #nodes - #nodes know to have left) + 2) (then) largest previous membership + 3) (and last as a tie-breaker) node with smallest nodeid + + Reviewed-by: Steven Dake <sdake@redhat.com> + + cpg: Print cpg name to debug informations + In downlist and joinlist debug output group was printed in nonsense + format of integer to pointer to array. + + Now it's printed by full name. + + Reviewed-by: Steven Dake <sdake@redhat.com> + + cpg: Process join list after downlists + let's say following situation will happen: + - we have 3 nodes + - on wire messages looks like D1,J1,D2,J2,D3,J3 (D is downlist, J is + joinlist) + - let's say, D1 and D3 contains node 2 + - it means that J2 is applied, but right after that, D1 (or D3) is + applied what means, node 2 is again considered down + + It's solved by collecting joinlists and apply them after downlist, so + order is: + - apply best matching downlist + - apply all joinlists + + Reviewed-by: Steven Dake <sdake@redhat.com> + + cpg: Never choose downlist with localnode + Test scenario is follows: + - node 1, node 2 + - node 1 is paused + - node 2 sees node 1 dead + - node 1 unpaused + - node 1 and 2 both choose same dowlist message which includes node 2 -> + node 2 is efectivelly disconnected + + Patch includes additional test if left_node is localnode. If so, such + downlist is ignored. + + Reviewed-by: Steven Dake <sdake@redhat.com> + +2012-06-11 Jerome FLESCH <jerome.flesch@netasq.com> + + When flushing, discard only memb_join messages + Patch solves problem when 1 ring out of 2 went up/down quite often. + + The simplest setup to reproduce bug is following: + - 2 VMs, connected by 2 network interfaces + - OS: Linux + - On one of the VMs, a test program sending some CPG messages (see the + script "test_corosync.sh" joined to this mail for example) + + Here are the Corosync logs we get when we do this setup: + + Jun 06 16:23:40 corosync [TOTEM ] A processor joined or left the + membership and a new membership was formed. + Jun 06 16:23:40 corosync [CPG ] chosen downlist: sender r(0) + ip(192.168.56.104) r(1) ip(192.168.57.104) ; members(old:1 left:0) + Jun 06 16:23:40 corosync [MAIN ] Completed service synchronization, + ready to provide service. + Jun 06 16:24:37 corosync [TOTEM ] Marking ringid 1 interface + 192.168.57.105 FAULTY + Jun 06 16:24:38 corosync [TOTEM ] Automatically recovered ring 1 + Jun 06 16:25:33 corosync [TOTEM ] Marking ringid 1 interface + 192.168.57.105 FAULTY + Jun 06 16:25:34 corosync [TOTEM ] Automatically recovered ring 1 + Jun 06 16:26:35 corosync [TOTEM ] Marking ringid 1 interface + 192.168.57.105 FAULTY + Jun 06 16:26:36 corosync [TOTEM ] Automatically recovered ring 1 + (...) + + The second ring goes down about every 2 minutes and automatically back + up right after. + + We spent some times looking for the commit that introduced this bug, and + it appears it's due the following one: + Corosync 1.3.3 -> 1.3.4: e27a58d93d0d3795beb550f87b660c9c04f11386 + Corosync 1.4.1 -> 1.4.2: be608c050247e5f9c8266b8a0f9803cc0a3dc881 + Commit message: Ignore memb_join messages during flush operations + + I had a look at this commit, and it seems to me it's dropping too many + packets: + Because of this commit, while totemrrp_recv_flush() is called, Corosync + drops memb_join packets, but also ORF tokens. In the end, it seems that + sometimes, we drop so many of them that Corosync marks the ring as + faulty. + + To fix that, only memb_join messages are dropped now. + + Reviewed-by: Steven Dake <sdake@redhat.com> + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2012-06-05 Jan Friesse <jfriesse@redhat.com> + + Store fdata with timestamp and pid in name + This should allow easier handling of various blackbox dumps. Original + fdata name is now symlink to latest created dump. + + Reviewed-by: Fabio M. Di Nitto <fdinitto@redhat.com> + + Remove corosync-fplay + Libqb now ships with qb-blackbox command doing same job as + corosync-fplay. It doesn't make sense to maintain two versions of same + utility so corosync-fplay can go. corosync-blackbox command now calls + directly qb-blackbox. + + Reviewed-by: Steven Dake <sdake@redhat.com> + +2012-06-01 Kazunori INOUE <inouekazu@intellilink.co.jp> + + notifyd: handle addition of a members key to CMAP + When new key (totem.pg.mrp.srp.members) was added to CMAP, + we would like to receive the trap of this time. + + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2012-06-01 Fabio M. Di Nitto <fdinitto@redhat.com> + + testcpg: fix build warning + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2012-05-31 Jan Friesse <jfriesse@redhat.com> + + totemudpu: Bind sending sockets to bindto address + Reviewed-by: Steven Dake <sdake@redhat.com> + +2012-05-29 Jan Friesse <jfriesse@redhat.com> + + snmp MIB: Remove unnecessary comma + Thank Hideo Yamauch for pointing this bug. + +2012-05-29 Kazunori INOUE <inouekazu@intellilink.co.jp> + + notifyd snmp: fix a function name + This fixes the bug to which snmp trap of rrp_faulty_event is not sent. + + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2012-05-29 Fabio M. Di Nitto <fdinitto@redhat.com> + + rename mainconfig to logconfig + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + + mainconfig: allow mainconfig logic to be used both internally and externally + corosync logging configuration logic is rather complex and in order + to make it simpler to reuse (at least within corosync/ tree) + we need to be able to use both icmap and cmap. + + the patch might seem controversial, but it reduces heaps of code around + from qdevices (coming next). + + It might be useful to consider moving this to a common shared library + but there aren't enough users yet and a shared lib would force + corosync to link with cmap (that we do not want at all costs) + + Reviewed-by: Steven Dake <sdake@redhat.com> + +2012-05-29 Angus Salkeld <asalkeld@redhat.com> + + LOG: make sure the log target is enabled. + Reviewed-by: Fabio M. Di Nitto <fdinitto@redhat.com> + + LOG: handle closing unused logfiles better + This fixes a bug where having a second log file will close + the previous one. + + Reviewed-by: Fabio M. Di Nitto <fdinitto@redhat.com> + + LOG: be more explict about the qb file names + else we can get messages been put in the wrong subsys. + + Reviewed-by: Fabio M. Di Nitto <fdinitto@redhat.com> + + LOG: drop the number of logging subsystems from 64 to 32 + Currently 14 are used, 64 seems like a waste of memory. + + Reviewed-by: Fabio M. Di Nitto <fdinitto@redhat.com> + +2012-05-24 Barney Desmond <barney.desmond@anchor.net.au> + + Correct the description of bindnetaddr config parameter in manpage + bindnetaddr has been wrongly described in the past, and did not + document that fact that it will also accept exact address matches. + + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2012-05-24 Jan Friesse <jfriesse@redhat.com> + + totemip: Support bind to exact address + Logic for binding now works in following way: + - Try to find exact match + - If not exact match is found, use first found network address + + This allows set concrete IP even if network settings contains two IPs on + same network. + + Reviewed-by: Steven Dake <sdake@redhat.com> + + totemip: insert items in correct order + list_add_tail is used instead of list_add so ip addresses are inserted + in same order as returned by getifaddrs. + + Reviewed-by: Steven Dake <sdake@redhat.com> + +2012-05-21 Fabio M. Di Nitto <fdinitto@redhat.com> + + init: major cleanup + - rename generic.in and notifyd.in to corosync.in and corosync-notifyd.in + (makes build simpler) + - fix sysvinit corosync.in sleep time to include a check for when IPC + are ready and drop cman bits (there is no cman with corosync 2.0) + - corosync-notifyd.service should always start after corosync.service + - corosync.service should always start after network + - corosync.service uses init script wrapper + - install/ship sysvinit as wrappers for systemd in /usr/share/corosync + when necessary + - change the build system to deal with all of the above + + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2012-05-17 Jan Friesse <jfriesse@redhat.com> + + Include ringid in processor joined log message + This should help correlate syslog entires with their blackbox + counterparts. + + Reviewed-by: Andrew Beekhof <andrew@beekhof.net> + +2012-05-15 Jan Friesse <jfriesse@redhat.com> + + Update TODO file + Reviewed-by: Fabio M. Di Nitto <fdinitto@redhat.com> + Reviewed-by: Steven Dake <sdake@redhat.com> + +2012-04-26 Dan Clark <2clarkd@gmail.com> + + Improve testcpg to handle change of node identity + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2012-04-24 Fabio M. Di Nitto <fdinitto@redhat.com> + + icmap: don't leak memory when changing ro/rw status on a key + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + + icmap: fix a valgrind errors (pass 1) + clean up a lot of allocated blocks at exit. + those changes has no runtime effects, but it makes valgrind + output a bit more useful by dropping over 700 errors/warnings to skip + over every single run. + + there are still a few icmap related valgrind errors but those need + some more complex and timeconsuming investigation. + + pre patch: + + ==21844== HEAP SUMMARY: + ==21844== in use at exit: 1,229,321 bytes in 1,516 blocks + ==21844== total heap usage: 7,191 allocs, 5,675 frees, 3,819,853 bytes allocated + + ==21844== LEAK SUMMARY: + ==21844== definitely lost: 3,617 bytes in 11 blocks + ==21844== indirectly lost: 21,960 bytes in 11 blocks + ==21844== possibly lost: 1,080,101 bytes in 131 blocks + ==21844== still reachable: 123,643 bytes in 1,363 blocks + ==21844== suppressed: 0 bytes in 0 blocks + + ==21844== ERROR SUMMARY: 136 errors from 136 contexts (suppressed: 0 from 0) + + post patch: + + ==25793== HEAP SUMMARY: + ==25793== in use at exit: 1,185,870 bytes in 808 blocks + ==25793== total heap usage: 9,427 allocs, 8,619 frees, 4,156,841 bytes allocated + + ==25793== LEAK SUMMARY: + ==25793== definitely lost: 3,697 bytes in 12 blocks + ==25793== indirectly lost: 22,248 bytes in 13 blocks + ==25793== possibly lost: 1,079,655 bytes in 113 blocks + ==25793== still reachable: 80,270 bytes in 670 blocks + ==25793== suppressed: 0 bytes in 0 blocks + + ==25793== ERROR SUMMARY: 119 errors from 119 contexts (suppressed: 0 from 0) + + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2012-04-20 Fabio M. Di Nitto <fdinitto@redhat.com> + + crypto init: release *_slot resource after init + Those are only used at init phase and we can free some memory for the system. + + Reviewed-by: Angus Salkeld <asalkeld@redhat.com> + +2012-04-16 Fabio M. Di Nitto <fdinitto@redhat.com> + + ipcs: allow connections only after all services are ready + this fixes a rather annoying race condition at startup where a client + connects to corosync "too fast" before the service is ready to operate + and client gets some random data during initialization phase. + + With this fix, we allow connections to ipc only after the main engine + is operational and configured (and after the first totem transition). + + Reviewed-by: Angus Salkeld <asalkeld@redhat.com> + +2012-04-10 Jan Friesse <jfriesse@redhat.com> + + Always allocate totemrrp stats array + This prevents segfault when rrp mode is set with only one ring. + + Reviewed-by: Fabio M. Di Nitto <fdinitto@redhat.com> + + Properly parse uidgid files + Full path to key is now tested rather then key name only. + + Reviewed-by: Fabio M. Di Nitto <fdinitto@redhat.com> + +2012-04-10 Fabio M. Di Nitto <fdinitto@redhat.com> + + build: improve systemd service file handling + this solves the issue of having to special case before and after usrmove + + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2012-04-06 Jan Friesse <jfriesse@redhat.com> + + Remove info pages see also from cmapctl man + Corosync doesn't have documentation in info format, so information is + corosync-cmapctl was not true. + + Reviewed-by: Steven Dake <sdake@redhat.com> + + Add man page with CMAP keys created by corosync + Reviewed-by: Steven Dake <sdake@redhat.com> + +2012-04-05 Angus Salkeld <asalkeld@redhat.com> + + Check before making a reference to __start___verbose + +2012-04-03 Fabio M. Di Nitto <fdinitto@redhat.com> + + conf: add quorum section to example config + document only the provider option since all the others + (votes/expected_votes/etc) are provider specific. + + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2012-04-03 Angus Salkeld <asalkeld@redhat.com> + + Only call qb_ipcc_disconnect when the instance is fully dereferenced. + Sometimes calling xyz_finilize() within a dispatch would + cause a crash because the qb_ipcc_disconnect actually + disconnects immediatly and frees it't memory. whereas + the corosync structure is reference counted. So this + makes use of the reference counting to only call + qb_ipcc_disconnect when it is fully dereferenced. + + Reviewed-by: Fabio M. Di Nitto <fdinitto@redhat.com> + +2012-03-27 Jan Friesse <jfriesse@redhat.com> + + Convert udpu example to use nodelist + Reviewed-by: Fabio M. Di Nitto <fdinitto@redhat.com> + +2012-03-27 Fabio M. Di Nitto <fdinitto@redhat.com> + + totemcrypt: fix build warning (unused variable) + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + + totemcrypto: major code cleanup (no functional or onwire changes) + - cleanup include list + - reorder code and functions (crypto then hash) + - split crypt/decrypt/hash functions + - some micro optimizations by dropping a few memcpy + - make the code more readable (better var names and buffers mapping) + - improve exit paths on error (return codes and free) + - store crypto header size instead of recalculating it per packet + + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2012-03-26 Jan Friesse <jfriesse@redhat.com> + + Make ifaces_get work with dynamic no_rings + Commit which added number of addresses to srp_address structure didn't + count with totemsrp_ifaces_get where whole structure was copied instead + of addresses only. This is now fixed. + + Also to make API totempg forward compatible, size of interfaces array + must be passed to ifaces_get like functions to prevent memory overwrite. + + Reviewed-by: Fabio M. Di Nitto <fdinitto@redhat.com> + +2012-03-22 Jan Friesse <jfriesse@redhat.com> + + Add no_addrs field in srp_addr structure + This should allow us future change to dynamic number of rings without + breaking wire compatibility. + + Reviewed-by: Steven Dake <sdake@redhat.com> + +2012-03-16 Jan Friesse <jfriesse@redhat.com> + + Reflect config changes for crypto in examples + Reviewed-by: Fabio M. Di Nitto <fdinitto@redhat.com> + + Mark few more icmap keys as read only + Also most of the key settings are now centralized in one function, so + it's easier to audit. + + Reviewed-by: Fabio M. Di Nitto <fdinitto@redhat.com> + +2012-03-15 Jan Friesse <jfriesse@redhat.com> + + Make common_lib version independand on totem_pg + Reviewed-by: Fabio M. Di Nitto <fdinitto@redhat.com> + + crypto: Remove sha224 and add md5 hash + SHA224 is not supported on RHEL6 and also it's kind of weird. Instead of + that, md5 can now be configured. + + Reviewed-by: Fabio M. Di Nitto <fdinitto@redhat.com> + + Update crypto_set API + Also few leftovers from cfg is removed and version of totempg is + increased to 5 to reflect all changes we made + + Reviewed-by: Fabio M. Di Nitto <fdinitto@redhat.com> + +2012-03-15 Fabio M. Di Nitto <fdinitto@redhat.com> + + crypto: allocate padding in crypto_header + while it might seem a waste of space by using 2 extra bytes in + the crypto_config_header, it actually gives us the option + to grow "unknown at this time" features without hopefully + breaking onwire compat + + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + + crypto: add new hashing methods and fix config defaults + add support for sha224/256/384/512 + + change config defaults to match coroparse and totemconfig + + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2012-03-15 Jan Friesse <jfriesse@redhat.com> + + Document crypto_hash and crypto_cipher options + Reviewed-by: Fabio M. Di Nitto <fdinitto@redhat.com> + +2012-03-14 Fabio M. Di Nitto <fdinitto@redhat.com> + + crypto: change network packets and add dynamic crypto header/data + The new network packet will look: + + struct crypto_config_header * that provides info on crypto/hashing + hash_block[size based on hashing function] (if hash is selected) + salt[SALT_SIZE] (if crypto is selected) + ...data... + + and we kill the concept of crypto_security_header completely since + values are now dynamic for hash_block_size. + + the reason why hash_block needs to be there, is because we do + hash salt in case both hashing and crypto are selected. + + the crypto_config_header is totally transparent to totem + and to any underlaying crypto functions. + + as we go cleaning, also use HASH_BLOCK_SIZE to generate hash_block. + the input buffer and output buffer size are dependent on the algo + used to hash. + + we can now determine the real header size and adjust net_mtu properly + at startup. This will allow in future to use any algorithm since + size is dynamic. + + some part of the code still needs some polishing to make it more + readable (specially the mapping of pointers into the packet + is still a bit obscure). + + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + + totem: don't send garbage onwire if we fail to crypt + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + + crypto: add crypto config to network data + this add 2 bytes at the end of the each packet to propagate + config info. + + in case there is a config mismatch packet must be rejected. + + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + + crypto: drop secauth and make crypto none work again + keep totem.secauth config key for compatibility + + if the key is NOT set, crypto will default to aes256/sha1 + if the key is set to "off", crypto is disabled. + this reflects pretty much old behavior + + keywords totem.crypto_cipher and totem.crypto_hash can + override secauth individually. + + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2012-03-13 Jan Friesse <jfriesse@redhat.com> + + Parse and use hash and crypto from config file + Reviewed-by: Fabio M. Di Nitto <fdinitto@redhat.com> + + Rename totemcrypto + Reviewed-by: Fabio M. Di Nitto <fdinitto@redhat.com> + +2012-03-13 Fabio M. Di Nitto <fdinitto@redhat.com> + + crypto: mask the crypto operations from totem packet size management + totem doesn't need to understand what crypto does. + + totem needs to be able to tell crypto: "those are data, play with them" + and crypto needs to return: "here are your scrambled data and the new size" + + similar to decrypt/verify. + + this way we add enough dynamic within crypto to change header size and all + at any given time (for different hash algorithm for example) without + affecting on wire compat. + + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2012-03-13 Jan Friesse <jfriesse@redhat.com> + + onecrypt: move encryption code to crypto.c + This will remove duplicity of code. + + Reviewed-by: Fabio M. Di Nitto <fdinitto@redhat.com> + + cfg: remove crypto_set + Reviewed-by: Fabio M. Di Nitto <fdinitto@redhat.com> + + corosync-cfgtool: Remove set of cryptography + Reviewed-by: Fabio M. Di Nitto <fdinitto@redhat.com> + + Remove libtomcrypt + Tomcrypt in corosync is for long time not updated. Because we have + support for libnss, libtomcrypt can be removed. + + Also few leftovers (AES is 256 bits, not 128, ...) are removed. + + Reviewed-by: Steven Dake <sdake@redhat.com> + +2012-03-12 Fabio M. Di Nitto <fdinitto@redhat.com> + + drop evs service + there are several reasons for this: + + 1) evs is only partially implemented with no plans to complete it + + typedef enum { + EVS_TYPE_UNORDERED, /* not implemented */ + EVS_TYPE_FIFO, /* same as agreed */ + EVS_TYPE_AGREED, + EVS_TYPE_SAFE /* not implemented */ + } evs_guarantee_t; + + 2) evs has no users in any upstream distribution and no search + engine can find any other upstream using it. + + 3) the only reason (I was told) to carry around evs was that evs + receives the full ring_id struct from totem. This is only + partially correct because while the structures are prepared + to carry around those data, they are never transmitted from + corosync engine down the IPC line to the user. + CPG ring_id contains the exact same information and it's + actually less buggy (due to prototying of the info). + + worst case scenario where a user really absolutely need libevs, + it can be easily reimplemented as libcpg wrapper and avoid + lots of code duplication. + + Reviewed-by: Steven Dake <sdake@redhat.com> + + build: drop another leftover from the past + Reviewed-by: Steven Dake <sdake@redhat.com> + + build: drop obsoleted SOCKETDIR option + yet another leftover from the past that can go away + + Reviewed-by: Steven Dake <sdake@redhat.com> + + build: drop last LCRSO references + Reviewed-by: Steven Dake <sdake@redhat.com> + + pload: make it a test service and not a public one + pload is a performance benchmark that measures the onwire + speed of corosync. + + problem is that once pload has been executed, the cluster + is basically dead. + + turn pload into a test tool, by removing corosync-pload tool + and user library. + + cleanup pload code to make it more readable and drop lots + of unnecessary stuff. + + add test/ploadstart tool that can configure and start pload + via cmap calls. + + Reviewed-by: Steven Dake <sdake@redhat.com> + +2012-03-10 Fabio M. Di Nitto <fdinitto@redhat.com> + + totem: drop crypt_accept: concept/option + this was another old onwire compat mode that is not useful anylonger. + + we can safely move the new model by default. + + According to Honza (real hardware 1 node testing) there are no + performance impact. + + My tests (8 nodes VM cluster), there is up to 10/12% performance + improvements up to 1M packet size where old and new models are equal. + + As a side note, nss still shows to be a performance loss on both + real and virtual hw (without any kind of nss hw acceleration). + + Reviewed-by: Steven Dake <sdake@redhat.com> + +2012-03-09 Angus Salkeld <asalkeld@redhat.com> + + Fix typo in stats key name. + Reviewed-by: Fabio M. Di Nitto <fdinitto@redhat.com> + + Remove unused function logsys_priority_name_get() + Reviewed-by: Fabio M. Di Nitto <fdinitto@redhat.com> + + Add pid, hostname and process name to the logfile + Note this is only for file targets not stderr or syslog. + + https://bugzilla.redhat.com/show_bug.cgi?id=789925 + + Reviewed-by: Fabio M. Di Nitto <fdinitto@redhat.com> + +2012-03-09 Fabio M. Di Nitto <fdinitto@redhat.com> + + drop last references to compatibility: whitetank + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + Reviewed-by: Angus Salkeld <asalkeld@redhat.com> + + utils: cleanup main daemon exit codes + some of them are not in use anymore and can be dropped. + + Reviewed-by: Steven Dake <sdake@redhat.com> + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + + sync: kill evil and syncv1 in one shot + this change breaks onwire compatibility. + + cpg is the only user of sync_* interface and it's the only + service that will require extra testing. + + Reviewed-by: Steven Dake <sdake@redhat.com> + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2012-03-06 Jan Friesse <jfriesse@redhat.com> + + man: Add cmap pages to index.html + Reviewed-by: Steven Dake <sdake@redhat.com> + + man: Add description of cpg_iteration_* functions + Reviewed-by: Steven Dake <sdake@redhat.com> + + man: Fix cmap_iter_finalize typo + Reviewed-by: Steven Dake <sdake@redhat.com> + +2012-03-05 Angus Salkeld <asalkeld@redhat.com> + + Treat ENOMSG as TRY_AGAIN. + ENOMSG is returned by the ringbuffer when you attempt to read + a message and there is nothing there to read. + + Reviewed-by: Steven Dake <sdake@redhat.com> + + Add common IPC errors. + Reviewed-by: Steven Dake <sdake@redhat.com> + +2012-03-05 Fabio M. Di Nitto <fdinitto@redhat.com> + + quorumtool: improve display of status data + always display membership data from the local node + + display when a node is unknown to the local node instead of an error + from IPC. + + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + + votequorum: move last malloc/alloca buf to static + this should guarantee that votequorum won't fail under high memory + pressure. Price is 3500 bytes extra preallocated at startup. + + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + + votequorum: fix node allocation memory leak + stop using malloc for each new node, because we cannot free the memory + easily. Move to a static allocated buffer that can contain + PROCESSOR_MAX + qdevice cluster_node instead. + + We can never have more than PROCESSOR_MAX nodes anyway and the memory + footprint is small enough compared to memory leaks (those can + effectively happen only in very dynamic clusters with tons of different + nodes joining/leaveing with different nodeids). + + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + +2012-03-02 Fabio M. Di Nitto <fdinitto@redhat.com> + + votequorum: rename leave_remove to allow_downscale + pointed out that leave_remove can be easily confused with the old + cman leave_remove behavior. The two are substantially different + and we need to avoid confusion both for users and our support team. + + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + + votequorum: fix handling of config updates + cmap changes are local to the node only and should not be broadcasted + as configuration changes. + + if any change has happened to us, we will inform other nodes via + send_nodeinfo. + + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + + votequorum: free our data and lists on exit + this is mostly to avoid valgrind errors on exit and make the output + more readable. + + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + + votequorum: disallow special features vs qdevice + simply taking the safest path here since integration of qdevice is not + fully complete + + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + + votequorum: fix node check based on reconfig parameter + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + + votequorum: make a common function to calculate votes and cluster members + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + + votequorum: incorporate static config into dynamic + no functional changes or extra features yet + + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + + votequorum: move all configuration in votequorum_readconfig + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + + votequorum: start moving from static to fully dynamic config + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + + votequorum: disallow wait_for_all and qdevice operations + The problem here is that user expectations, when using both modes + at the same time, have not been set yet. There are 2/3 options + that need investigation. + + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + + votequorum: improve debugging output + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + +2012-03-02 Jan Friesse <jfriesse@redhat.com> + + Always set interface_up in totemip_iface_check + Reviewed-by: Steven Dake <sdake@redhat.com> + +2012-02-29 Fabio M. Di Nitto <fdinitto@redhat.com> + + votequorum: fix node->flags type when receiving nodeinfo messages + old_flags was set to uint16_t but it needs to be uint32_t. + + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + + votequorum: fix segfault in wfa status update + this is a regression introduced by cb5fd775 + + when reading static config us->flags does not exists yet and therefor + setting it will cause a segfault. + + Move the settings after cluster_node *us is created, with the long + term plan to simply kill the whole _static readconfig bits + in favour of dynamic (runtime changeable) bits. + + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2012-02-28 Fabio M. Di Nitto <fdinitto@redhat.com> + + quorumtool: improve Membership information output + align nodeid, votes and name to make it all more readable + + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + + quorumtool: make output more human friendly and retain machine parsable bits + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + + quorumtools: fix typo in man page + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + + quorumtools: drop unused option parsing + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + + quorumtool: fix version display info + we don't need that on every run + + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + +2012-02-27 Fabio M. Di Nitto <fdinitto@redhat.com> + + quorumtool: swap node state and node votes output + there is no point to show the votes if the node is dead + + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + + votequorum: fix votequorum_getinfo man page and align struct name + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + + quorumtool: update man page and help text + improve error output since this is more than a debugging tool now + + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + + votequorum: major rework to fix qdevice API and integration with core + qdevice is a very special node in the cluster and it adds a certain + amount of complexity and special cases across the code. + + most of the qdevice data are shared across the cluster (name/votes) + but effectively each node has a different view of the qdevice + (registered/unregistered/voting/etc.) + + with this change, we align the qdevice view across the node, + exchanging more data between nodes and we fix how qdevice behaves + and it is configured. + + The only side effect is that the amount of data transmitted on wire + is slightly higher. + + The qdevice API is still disabled by default. This means that + the amount of real changes in current code are a lot smaller + than it appears by this patch. + + TODO: documentation/man pages needs to be updated once + this change is in (and behavior finalized). + + User visible changes: + + - configuration (coroparse, exec/votequorum): + the quorum device section is now standalone within the quorum. + + quorum { + provider: corosync_votequorum + device { + model: (name) + timeout: (millisec) + votes: + } + } + + the keyword "model:" is mandatory to enable qdevice in configuration + and should express the name of the script/daemon that will provide + the qdevice. Looking into the future, an init script or systemd + service will look for that name in /path/to/be/decided/name + and start/stop qdevice. + + timeout: defines the maximum interval the qdevice implementation + has available between poll (see votequorum_qdevice_poll.3) before + the device is considered dead and votes discarded + + votes: is now a configuration parameter and not an API call. + quorum devices don't care what they need to vote. + votes is autocalculated when a nodelist is available and all + nodes in the list vote 1. Otherwise this parameter is mandatory. + + - configuration (exec/votequorum): + startup and runtime configuration changes have been improved. + errors at startup are considered fatal. errors at runtime + have different exit paths. + + startup: + + * quorum.two_node and qdevice are incompatible. + * quorum.expected_votes requires quorum.device.votes. + * quorum.expected_votes - quorum.device.votes cannot be lower + than 2. + * qdevice and last_man_standing are mutually exclusive. + * qdevice and auto_tie_breaker are mutually exclusive. + + runtime config changes: + + * quorum.two_node and qdevice are incompatible: + if quorum device is alive, two_node is disabled. + if quorum device is not alive and node count is 2, two_node is + enabled, and quorum device cannot be registered + + * if either last_man_standing or auto_tie_breaker were enabled + at startup, and at runtime quorum device is configured, + quorum device registration will be blocked. + + * if quorum.expected_votes is configured but not quorum.device.votes, + quorum device registration will be blocked. + + * if quorum.device.votes is not configured and we cannot + automatically calculate it, quorum device registration will be blocked. + + * An error in configuring quorum.expected_votes and quorum.device.votes + will block quorum device registration. + + blocking quorum device registation, also means dropping the votes. + + quorum.device.votes (either set or automatically calculated) is now + used to determine current expected_votes in the cluster. + + - logging (exec/votequorum): + + all errors from configuration are treated as WARNING/CRITICAL. + + lots of extra DEBUG output is added (see internal changes too). + + - corosync-quorumtool (tools/corosync-quorumtool): + + * added option to forcefully kick out a quorum device from the local + node. This is for emergency recovery only and it is only + available when qdevice API is built-in. + + * Improved status output, specifically add node state and qdevice + information + + [root@fedora-master-node2 coro]# corosync-quorumtool -s + Version: 1.99.4.12-9c7d-dirty + Quorum type: corosync_votequorum + Nodes: 2 + Ring ID: 132 + Quorate: Yes + Node votes: 1 + Node state: Member + Expected votes: 3 + Highest expected: 3 + Total votes: 3 + Quorum: 2 + Flags: Quorate Qdevice + Nodeid Votes Name + 1 1 fedora-master-node1.int.fabbione.net + 2 1 fedora-master-node2.int.fabbione.net + 0 1 QDEVICE (Voting) + + * allow to print status for any node in the cluster known to + local node. + + [root@fedora-master-node1 coro]# corosync-quorumtool -s + Version: 1.99.4.12-9c7d-dirty + Quorum type: corosync_votequorum + Nodes: 2 + Ring ID: 144 + Quorate: Yes + Node votes: 1 + Node state: Member + Expected votes: 3 + Highest expected: 3 + Total votes: 2 + Quorum: 2 + Flags: Quorate + Nodeid Votes Name + 1 1 fedora-master-node1.int.fabbione.net + 2 1 fedora-master-node2.int.fabbione.net + + [root@fedora-master-node1 coro]# corosync-quorumtool -s -n 2 + Version: 1.99.4.12-9c7d-dirty + Quorum type: corosync_votequorum + Nodes: 2 + Ring ID: 144 + Quorate: Yes + Node votes: 1 + Node state: Member + Expected votes: 3 + Highest expected: 3 + Total votes: 3 + Quorum: 2 + Flags: Quorate Qdevice + Nodeid Votes Name + 1 1 fedora-master-node1.int.fabbione.net + 2 1 fedora-master-node2.int.fabbione.net + 0 1 QDEVICE (Voting) + + Internal changes: + + - change qdevice timer to not run all time, but only when necessary. + - change votequorum_nodeinfo on wire data to use flags instead of uint8_t + and add QDEVICE status. + - allocate nodeid 0 to qdevice since it's the only real + nodeid that be reserved. + - change send_nodeinfo to allow to send nodeinfo for any node + so that we can share qdevice info across the cluster + (and this might be useful in future if we need to sync + internal cluster view). + - add votequorum api call to update qdevice name + - add runtime data if quorum device has been forcefully disabled + by config error + - add qdevice votes to expected_votes calculation (this + is probably the biggest difference vs cman) + - change votequorum_read_nodelist_configuration so that + we can autocalculate votes for qdevice (we need the nodecount + vs votes). + - add all checks for startup/runtime config (see above). + - do not make qdevice part of the membership_list received from + totem. None of our users care about it and it is not a real node. + - change onwire message handlers to deal with "data for this node from any node" + case and undersand nodeid 0 for qdevice info + - always allocate qdevice at startup. this simplifies code a lot. + - dispatch qdevice nodeinfo on membership changes. + - inform libvotequorum users when a qdevice is registered + - improve substantially qdevice api and add a simple + barrier based on qdevice name. + - add qdevice API barrier at cluster level. This feature allow + only one qdevice name to be active in the cluster at any time. + - qdevice getinfo can now report status for qdevice on any node. + - change slightly the way the qdevice API is built-in/out: + only the libvotequorum calls are #ifdef'out now. Doing so in + the core is too complex and would make the code unreadable + with the risk of missing a bit or two effectively introducing + an on-wire incompatibility if we will ever turn the API on. + - probably added some bugs on the way... + + TODO: update qdevice_* API once the above is settled and test + qdevice integration with other features. + + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + Reviewed-by: Steven Dake <sdake@redhat.com> (only second part) + +2012-02-22 Fabio M. Di Nitto <fdinitto@redhat.com> + + build: fix fallout from swithing to common shared lib + when building corosync on a clean system or for the very first + time, corosync_common needs to be visible both via -L for link + and for the LD_PATH, otherwise the linker cannot resolve + normal library dependencies. + + This issue does NOT affect corosync users, but it's confined + to internal corosync only. + + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2012-02-21 Jan Friesse <jfriesse@redhat.com> + + Document SAM_RECOVERY_POLICY_CMAP + Also all irelevant references for SAM_RECOVERY_POLICY_CONFDB are + corrected. + + Reviewed-by: Steven Dake <sdake@redhat.com> + + Tweak nodeid warning + Nodeid warning now appears only when both totem.nodeid and nodelist + nodeid exists. When nodelist nodeid is not defined, totem.nodeid is + used. + + Reviewed-by: Steven Dake <sdake@redhat.com> + + spec: Add optional xmlconf + Reviewed-by: Fabio M. Di Nitto <fdinitto@redhat.com> + + iba: Use configured node id + Corosync was ignoring nodeid for iba transport and always used + autogenerated one. + + Original patch by: Jason Dillaman <jdillama@redhat.com> + Reviewed-by: Fabio M. Di Nitto <fdinitto@redhat.com> + +2012-02-21 Angus Salkeld <asalkeld@redhat.com> + + Convert the common lib into a shared lib. + Reviewed-by: Fabio M. Di Nitto <fdinitto@redhat.com> + +2012-02-16 Jan Friesse <jfriesse@redhat.com> + + Allow autoconfiguration of interface section + Thanks to totemip_getifaddrs infrastructure it's now possible to use + nodelist informations to autoconfigure interface bindnetaddr. Together + with cluster_name, interface section can be completely omitted. + + Reviewed-by: Steven Dake <sdake@redhat.com> + + totemconfig: ensure suffix for ringX_addr + Patch makes sure, that ringX_addr key has really _addr suffix. + Previously, it was possible to enter ringXanything and it was + interpreted as ringX_addr. + + Reviewed-by: Steven Dake <sdake@redhat.com> + + cmap: Handle NULL in [i]cmap_set_string value + Reviewed-by: Steven Dake <sdake@redhat.com> + + Create solaris specific getifaddrs + This not only makes possible to use generic totemip_iface_check, but + also fixes some problems with previous implementation (fixed mask, not + very well supported ipv6, ...) + + Tested on OpenIndiana 151a + + Reviewed-by: Steven Dake <sdake@redhat.com> + + Add totemip_iface_check based on totemip_getifaddrs + Also Linux and BSD/Darwin specific bits are no longer needed, so they + are gone. + + Reviewed-by: Steven Dake <sdake@redhat.com> + + Add generic implementation of getifaddrs + Reviewed-by: Steven Dake <sdake@redhat.com> + +2012-02-14 Fabio M. Di Nitto <fdinitto@redhat.com> + + build: fix make dist to include xml man pages + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2012-02-14 Angus Salkeld <asalkeld@redhat.com> + + Change the IPC TIMEOUT to block. + This is to make sure that we properly wait for responses + from corosync. I have made a fix to libqb to properly + handle the case when corosync exits/crashes between + a send and receive. + + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + + CPG: fix membership_get() + 1) remove BUSY loop from membership get + Note only cpg_join and cpg_leave ever set the + BUSY error code. + 2) set the size correctly + 3) copy the name in correctly + + Reviewed-by: Steven Dake <sdake@redhat.com> + + TEST: remove unused code. + Reviewed-by: Steven Dake <sdake@redhat.com> + + Move hdb_error_to_cs to corotypes.h + Reviewed-by: Steven Dake <sdake@redhat.com> + + TEST: add logging to testcpg and testevs + Reviewed-by: Steven Dake <sdake@redhat.com> + + TEST: Use pacemaker repeat macro + This is to simulate the way pacemaker uses the cpg api. + With this you can run testcpg directly after corosync + starts and it should initialise ok. + + Reviewed-by: Steven Dake <sdake@redhat.com> + +2012-02-14 Steven Dake <sdake@redhat.com> + + Remove a reference to openais that is present in corosync.conf.5 + Reviewed-by: Angus Salkeld <asalkeld@redhat.com> + + Update corosync_overview.8 man page + Move forward 5 years on our main man page ;) + + Reviewed-by: Angus Salkeld <asalkeld@redhat.com> + + Remove empty testquorum.c file + Reviewed-by: Angus Salkeld <asalkeld@redhat.com> + + Update copyright header dates in exec directory + Reviewed-by: Angus Salkeld <asalkeld@redhat.com> + + Update copyright dates on include/totem files + Reviewed-by: Fabio Di Nitto <fdinitto@redhat.com> + + Remove jhash.h since it is not used + We would use libqb for hashing now if we needed hashing. + cpg no longer uses jhash.h. + + Reviewed-by: Fabio Di Nitto <fdinitto@redhat.com> + + Updated copyright dates in include directory + Reviewed-by: Fabio Di Nitto <fdinitto@redhat.com> + + Update copyright dates in tools directory + Reviewed-by: Fabio Di Nitto <fdinitto@redhat.com> + + Update copyright dates in util directory + Reviewed-by: Fabio Di Nitto <fdinitto@redhat.com> + + Remove unused or unimplemented CFG apis + Remove: + cfg_statetrack + cfg_statetrackstop + cfg_administrativestateste + cfg_administrativestateget + cfg_serviceload + cfg_serviceunload + + Rev SO to 5.0.0 + + Reviewed-by: Angus Salkeld <asalkeld@redhat.com> + +2012-02-13 Fabio M. Di Nitto <fdinitto@redhat.com> + + votequorum: cleanup all man pages + sort and reference man pages in typical usage order + + update some structures/defines + + clean formatting to be consistent + + don't ship qdevice API man pages for now + + Reviewed-by: Angus Salkeld <asalkeld@redhat.com> + +2012-02-10 Fabio M. Di Nitto <fdinitto@redhat.com> + + quorum: cleanup all man pages + sort and reference man pages in typical usage order + + update some structures/defines + + clean formatting to be consistent + + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + +2012-02-09 Fabio M. Di Nitto <fdinitto@redhat.com> + + cpg: drop dead code + not used/referenced anywhere + + Reviewed-by: Steven Dake <sdake@redhat.com> + + coverity: increase aggressiveness of the test and fix build + Reviewed-by: Steven Dake <sdake@redhat.com> + + votequorum: fix variable init + Reviewed-by: Steven Dake <sdake@redhat.com> + + quorumtool: fix some var init and checks + Reviewed-by: Steven Dake <sdake@redhat.com> + + votequorum: fix possible memory corruption + nodeid = 0 is a valide nodeid and node associated with it should + not be freed + + Reviewed-by: Steven Dake <sdake@redhat.com> + + quorum: don't leak memory on error + Reviewed-by: Steven Dake <sdake@redhat.com> + + testvotequorum: fix test loop to break if votequorum goes away + Reviewed-by: Steven Dake <sdake@redhat.com> + + quorumtool: fix return code + Reviewed-by: Steven Dake <sdake@redhat.com> + + testquorum: check for quorum_dispatch return code + Reviewed-by: Steven Dake <sdake@redhat.com> + + quorumtools: check for quorum_dispatch return code + Reviewed-by: Steven Dake <sdake@redhat.com> + + specfile: ship new man pages + Reviewed-by: Steven Dake <sdake@redhat.com> + + man: add *quorum_track* devel man pages + Reviewed-by: Steven Dake <sdake@redhat.com> + + quorum: drop dead code + spotted while writing man pages. There are no users for this struct + + Reviewed-by: Steven Dake <sdake@redhat.com> + + man: add quorum_overview.8 man page + Reviewed-by: Steven Dake <sdake@redhat.com> + + man: hook quorum and votequorum devel man pages with genman script + Reviewed-by: Steven Dake <sdake@redhat.com> + + man: rename all devel man pages to .3.in + tidy up man/Makefile.am a bit in the process + + Reviewed-by: Steven Dake <sdake@redhat.com> + + man: add build infrastructure to generate devel man pages + this is useful to include ipc_common errors into all man pages + + Reviewed-by: Steven Dake <sdake@redhat.com> + +2012-02-09 Angus Salkeld <asalkeld@redhat.com> + + move cs_strerror() to common_lib + Reviewed-by: Steven Dake <sdake@redhat.com> + + Treat ENOBUFS as TRY_AGAIN + Reviewed-by: Steven Dake <sdake@redhat.com> + + move hdb_error_to_cs to common_lib + Note the previous inconsistent implementation. + + Reviewed-by: Steven Dake <sdake@redhat.com> + + Add a common library that can be shared between libs and corosync + We have always had this problem and worked around it by coping code + or using inline functions. Both not good IMO. + + Reviewed-by: Steven Dake <sdake@redhat.com> + +2012-02-08 Steven Dake <sdake@redhat.com> + + Remove cs_config.h from global header install + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + + Remove include/engine/quorum and integrate it into exec/engine.h + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + + Remove swab.h from global headers + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + + Remove list.h from global header install + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + + Remove mar_gen.h from global header install since it is not needed + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2012-02-08 Jan Friesse <jfriesse@redhat.com> + + Add CS_DISPATCH_ONE_NONBLOCKING dispatch type + Add missing option for dispatch, which fills gap in combination of + block/nonblock and one/all dispatch types. New type doesn't mask + CS_ERR_TRY_AGAIN, and it means "no message was processed". + + Reviewed-by: Steven Dake <sdake@redhat.com> + +2012-02-08 Fabio M. Di Nitto <fdinitto@redhat.com> + + corotype: drop deprecated CPG_ defines + the only user of those obsoleted defines is dlm master (already ported) + to use CS_ and cmirror (that needs full porting to new corosync either way). + + Reviewed-by: Steven Dake <sdake@redhat.com> + + corotypes: drop deprecated QUORUM_ defines + neither corosync or any of the dependencies use it. + + Reviewed-by: Steven Dake <sdake@redhat.com> + + corotypes: drop deprecated EVS_ defines + none of our current dependencies use it. + + Reviewed-by: Steven Dake <sdake@redhat.com> + +2012-02-07 Steven Dake <sdake@redhat.com> + + Free state variable allocated in wd_resource_state_is_ok + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + + Remove leaked resource error from wd_resource_state_is_ok + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + + Remove use after free and free of uninit value in mainconfig error path + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + + Remove use after free in corosync_main_config_set in error path + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + + Remove dead code in sam test agent + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2012-02-07 Fabio M. Di Nitto <fdinitto@redhat.com> + + votequorum: fix quorum_ringid setting before any delivery occours + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + +2012-02-07 Angus Salkeld <asalkeld@redhat.com> + + Make sure ipc functions return CS_ERR_TRY_AGAIN and not CS_ERR_TIMEOUT + This is because most applications that use corosync do not test + for TIMEOUT but only for TRY_AGAIN. + + Reviewed-and-Tested-by: Fabio M. Di Nitto <fdinitto@redhat.com> + + Remove deprecated function qb_util_set_log_function() + Use the standard qb_log api. + + Reviewed-by: Steven Dake <sdake@redhat.com> + + LOG: add libqb as a "subsys" + So we can see libqb internal logs + + Reviewed-by: Steven Dake <sdake@redhat.com> + +2012-02-06 Jan Friesse <jfriesse@redhat.com> + + cmap: Check RO flag in adjust int function + Reviewed-by: Steven Dake <sdake@redhat.com> + + CMAP man pages + Reviewed-by: Steven Dake <sdake@redhat.com> + +2012-02-06 Jiaju Zhang <jjzhang@suse.de> + + CPG: Send CPG_REASON_PROCDOWN when really needed + This patch fixes the issue that in some cases where cpg_finalize() + was called just after cpg_leave() was called, CPG_REASON_PROCDOWN + might also be sent while CPG_REASON_LEAVE had already been sent. + This behavior is not aligned with what the man page has described: + "CPG_REASON_PROCDOWN - the process left a group without calling + cpg_leave()." + And it will confuse CPG's clients in that one process left results + in two different reasons being sent. + + The root cause of this issue is cpg_leave() will return after + adding the LEAVE message to the sending queue, but the cpg's group + name has not been cleared yet. Just at that time, cpg_finalize() + is being called, then it determines if there is the calling of + cpg_leave() happened only by the checking of cpg's group name, so + this method is not sufficient. + + Reviewed-by: Steven Dake <sdake@redhat.com> + +2012-02-03 Fabio M. Di Nitto <fdinitto@redhat.com> + + quorumtool: fix return codes for show_status and monitor + correct return codes should be: + 1 if node is quorate + 0 if node is not quorate + -1 if there is any error gather info on the node + + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + + quorumtools: fix nodes display on status + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + + votequorum: fix expected votes manual override from quorumtools + votequorum internal quorum/expected_vote check was slightly too + conservative and was not done correctly when leave_remove feature + is enabled. + + this fix allows admins to effectively override expected_votes + and drive ev_barrier as expected. + + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + +2012-02-03 Jan Friesse <jfriesse@redhat.com> + + Better checks of integer values in coroparse + Instead of atoi, strtol is used. This allows detection of typical + problems like empty value of key and incorrectly entered numbers. + + Reviewed-by: Fabio M. Di Nitto <fdinitto@redhat.com> + Reviewed-by: Steven Dake <sdake@redhat.com> + +2012-02-02 Fabio M. Di Nitto <fdinitto@redhat.com> + + votequorum: add runtime internal data to icmap runtime.votequorum.* + specifically ev_barrier, two_node, lowest_node_id and wait_for_all_status + are values that change internally at runtime and keeping track + of those can make debugging rather easy, specially when LOG_DEBUG is not + set. + + Also track our node id. + + Reviewed-By: Christine Caulfield <ccaulfie@redhat.com> + +2012-02-02 Jan Friesse <jfriesse@redhat.com> + + Wait for corosync-notifyd exit in init script + Without wait for real exit of corosync-notifyd it can happen, that new + corosync-notifyd is killed. To prevent such condition, stop now wait for + process to die, before exit of stop function. + + Reviewed-by: Steven Dake <sdake@redhat.com> + + Show correct error when open of logfile failed + Reviewed-by: Steven Dake <sdake@redhat.com> + + Store error str if can't open logfile + Reviewed-by: Steven Dake <sdake@redhat.com> + +2012-02-02 Angus Salkeld <asalkeld@redhat.com> + + IPC: reference count the connection whilst flushing the outq + Reviewed-by: Steven Dake <sdake@redhat.com> + +2012-02-01 Fabio M. Di Nitto <fdinitto@redhat.com> + + build: fix make dist and make rpm + do some cleanup around to include all files that need to be shipped + and honor conditional builds properly + + Reviewed-by: Angus Salkeld <asalkeld@redhat.com> + +2012-01-31 Angus Salkeld <asalkeld@redhat.com> + + IPC: allow for failures in the connection_created callback + Reviewed-by: Fabio M. Di Nitto <fdinitto@redhat.com> + +2012-01-31 Fabio M. Di Nitto <fdinitto@redhat.com> + + votequorum: add leave_remove option + this also cleanup NODESTATE for good. JOINING was never used + + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + + votequorum: honor onwire node flags change + internal flags were not propagated correctly in the node status + + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + + quorum: fix load/unload priority for quorum services + all main services are loaded at priority 1. + vfs_quorum and votequorum did not specify a priority and + automatically defaulting to 0, that has a special meaning + of being loaded last and unloaded last. + + this is not correct behavior and limits what votequorum + can do at shutdown, for example notify other nodes that + it is leaving (something that cannot be gathered by + totem membership change callback). + + fix vsf_quorum to load at priority 1 as the other + default services and bump votequorum to 2 (needs to + unload before everything else currently known). + + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + + service: fix service unload regression introduced by lcrso dropping + service exec_exit_fn was not honored because the loop was looking + into the wrong icmap key + + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + + votequorum: fix possible string overflow (-1) in qdevice_register + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + + votequorum: drop unnecessary flags + code inspection shows that those internal flags are never used + + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2012-01-31 Angus Salkeld <asalkeld@redhat.com> + + CTS: cleanup the cpg test agent + improve the diagnostic log messages + + Reviewed-by: Fabio M. Di Nitto <fdinitto@redhat.com> + + CTS: make the systemd logic more reliable + rely on positive logic as there can be multiple + failure reasons. + +2012-01-30 Steven Dake <sdake@redhat.com> + + Honor exec_init_fn call + exec_init_fn now either returns NULL (success) or a string which indicates + the error that occured during service engine initialization. If an error + occurs, corosync will exit. This patch adds ykd and makes other suggestions + from Fabio Di Nitto. + + Reviewed-by: Fabio Di Nitto <fdinitto@redhat.com> + + Return an exit code of 1 if an interface is faulty in corosync-cfgtool + Reviewed-by: Fabio Di Nitto <fdinitto@redhat.com> + +2012-01-30 Angus Salkeld <asalkeld@redhat.com> + + cmap: add iterator finalize + Reviewed-by: Fabio M. Di Nitto <fdinitto@redhat.com> + + cmap: add -D option to getopt + Reviewed-by: Fabio M. Di Nitto <fdinitto@redhat.com> + +2012-01-27 Fabio M. Di Nitto <fdinitto@redhat.com> + + votequorum: rename qdisk to qdevice + a quorum device is not necessarely a disk and this also aligns + various names to be generic + + Reviewed-By: Christine Caulfield <ccaulfie@redhat.com> + + quorum: drop quorum.quorate config option + it's unused / unnecessary + + Reviewed-By: Christine Caulfield <ccaulfie@redhat.com> + +2012-01-27 Angus Salkeld <asalkeld@redhat.com> + + CTS: add test VoteQuorumWaitForAll + Reviewed-by: Fabio M. Di Nitto <fdinitto@redhat.com> + + CTS: remove test service config + Reviewed-by: Fabio M. Di Nitto <fdinitto@redhat.com> + + augeas: update the lense (rm amf & add update quorum options) + Reviewed-by: Fabio M. Di Nitto <fdinitto@redhat.com> + + CTS: be consistent with the cpg group name + Reviewed-by: Fabio M. Di Nitto <fdinitto@redhat.com> + + CTS: make the status command more accurate + Reviewed-by: Fabio M. Di Nitto <fdinitto@redhat.com> + + CTS: remove SamTestQuorum as there is not test_quorum anymore + Reviewed-by: Fabio M. Di Nitto <fdinitto@redhat.com> + + CTS: ignore blackbox shm + (only whilst running as it is still visable) + + Reviewed-by: Fabio M. Di Nitto <fdinitto@redhat.com> + + CTS: delete resourses recursively + Reviewed-by: Fabio M. Di Nitto <fdinitto@redhat.com> + + CTS: init votequorum by default + Reviewed-by: Fabio M. Di Nitto <fdinitto@redhat.com> + + CTS: account for change in sam resource path. + This was: + process_name:pid + now: + pid + + Reviewed-by: Steven Dake <sdake@redhat.com> + + CTS: handle socket exceptions better + Reviewed-by: Steven Dake <sdake@redhat.com> + + CTS: fix shell script variable name + Reviewed-by: Steven Dake <sdake@redhat.com> + +2012-01-26 Fabio M. Di Nitto <fdinitto@redhat.com> + + update TODO list + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + + votequorum: fix expected_votes propagation + it is not correct to randomly accept expected_votes from any node in + the cluster. We can only allow expected_votes from quorate nodes. + + A quorate cluster is "always" right and have the correct expected_votes. + + One of the different bug triggers: + + quorum { + expected_votes: 8 + auto_tie_breaker: 1 + last_man_standing: 1 + } + + start all 8 nodes. + clean shut down 2 nodes. + wait for lms to kick in. + kill 3 nodes with highest nodeid + (we want to retain a quorate partition of 3 nodes) + start one node again -> cluster will be unquorate + + This happens because the node rebooting/rejoining with + non current cluster status will propagate an expected_votes of 8, + while in reality the cluster is down to expected_votes: 3. + + 4 nodes are still < 5 (quorum for 8 nodes/votes). + + In order to avoid this condition, we need to exchange expected_votes + information among nodes but we cannot randomly trust everybody. + + 1) Allow expected_votes to be changed cluster-wide only if the + information is coming from a quorate node. + 2) Fix node->expected_votes based on quorate status + 3) allow a joining node to decrease quorum and expected_votes + if the node is not yet quorate, but it's joining a quorate + cluster + + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + + votequorum: fix auto_tie_breaker design and simplify code a lot + auto_tie_breaker requires to know the lowest node id in the currently + quorate partition and not of the whole cluster. + + this allow us to determine the lowest node id as soon as we are quorate + and remove the complexity to read it from WFA or nodelist. Add + the same time it adds the flexibility for dynamic nodeids in a cluster. + + drop requirement on WFA if nodelist is not specified + + update man page + + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + + votequorum: drop NODESTATE_LEAVING + this is another leftover from cman compatibility layer + + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + +2012-01-25 Fabio M. Di Nitto <fdinitto@redhat.com> + + update TODO list + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + + votequorum: add documentation and man pages + fix a few typos on the way and separate config / library bits + + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + + votequorum: change quorum.expected_votes override behavior + as agreed on the mailing list, quorum.expected_votes should override + automatically calculated expected_votes from nodelist. + + Also simplify the code to handle expected_votes. "silly defaults" is now + unnecessary because votequorum does config sanity checks upfront. + + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + + votequorum: two_node should enable wait_for_all by default + This avoids fencing races at startup of a cluster. + + It is still possible to override WFA by explicitly setting + wait_for_all: 0 + + Reviewed-by: Angus Salkeld <asalkeld@redhat.com> + +2012-01-25 Angus Salkeld <asalkeld@redhat.com> + + CTS: make basic tests config-generic + Reviewed-by: Steven Dake <sdake@redhat.com> + + CTS: fix starting/stopping of test_agents + Reviewed-by: Steven Dake <sdake@redhat.com> + + CTS: tidy up the shutdown of cpg_test_agent + it is not neccessary to close the fd and remove it + from the mainloop + + Reviewed-by: Steven Dake <sdake@redhat.com> + + CTS: temp comment out quorum tests + Reviewed-by: Steven Dake <sdake@redhat.com> + + CTS: fix quourm command + Reviewed-by: Steven Dake <sdake@redhat.com> + + CTS: fix up the formt strings + Reviewed-by: Steven Dake <sdake@redhat.com> + + Add debug log messages to corosync for join/leave + This is needed by cts. + + Reviewed-by: Steven Dake <sdake@redhat.com> + + LOG: make sure that debug works to syslog + Reviewed-by: Steven Dake <sdake@redhat.com> + +2012-01-24 Jan Friesse <jfriesse@redhat.com> + + totemiba: Remove unused wthread.h include + Reviewed-by: Angus Salkeld <asalkeld@redhat.com> + + Make xmlconf in SPEC conditional + Reviewed-by: Angus Salkeld <asalkeld@redhat.com> + +2012-01-23 Angus Salkeld <asalkeld@redhat.com> + + Change the last references from objctl to cmapctl + Reviewed-by: Fabio M. Di Nitto <fdinitto@redhat.com> + +2012-01-23 Fabio M. Di Nitto <fdinitto@redhat.com> + + Update TODO list + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + + votequorum: add support for nodelist config bits + expected votes is now calculated automatically and quorum.expected_votes + can be used to override nodelist calculation. The highest of the two + value is used for runtime. + + quorum_votes can be specified either in the node list or in quorum.votes. + The node list has priority over global. + + propagate votequorum initalization errors (due to config inconsistencies) + back to vsf_quorum. + + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2012-01-23 Angus Salkeld <asalkeld@redhat.com> + + Remove all unneccessary "\n" from log messages + These look ugly, are inconsistently done and just have + to be removed later in libqb before calling syslog. + + Reviewed-by: Steven Dake <sdake@redhat.com> + + Shorten some really long lines in main.c + Reviewed-by: Steven Dake <sdake@redhat.com> + + cmap: add a delete with prefix (needed by cts) + Reviewed-by: Steven Dake <sdake@redhat.com> + + cmap: change -t and -T around (capital == with prefix) + I want to add a prefic delete option and then these will + not be consistent. + + Reviewed-by: Steven Dake <sdake@redhat.com> + + cmap: tweek the usage text + 1) It wasn't obvious to me what -b did + 2) -a has been removed + + Reviewed-by: Steven Dake <sdake@redhat.com> + + cmap: add a load option for cts "-p" + Reviewed-by: Steven Dake <sdake@redhat.com> + + CTS: convert the test agents to use qb logging + Reviewed-by: Steven Dake <sdake@redhat.com> + + CTS: fix the corosync start/stop settings + Reviewed-by: Steven Dake <sdake@redhat.com> + + CTS: set the syslog restart commands up correctly + Reviewed-by: Steven Dake <sdake@redhat.com> + +2012-01-20 Jan Friesse <jfriesse@redhat.com> + + Add nodelist informations to manual page + Reviewed-by: Steven Dake <sdake@redhat.com> + + Make local_node ring0 address read-only + Reviewed-by: Steven Dake <sdake@redhat.com> + + Support for dynamic nodelist udpu member change + Reviewed-by: Steven Dake <sdake@redhat.com> + + Use nodeid provided in nodelist + Reviewed-by: Steven Dake <sdake@redhat.com> + + Support udpu members in nodelist + Reviewed-by: Steven Dake <sdake@redhat.com> + + Add local_node_pos icmap key + Key contains local node position in nodelist + + Reviewed-by: Steven Dake <sdake@redhat.com> + + Parse nodelist in coroparse + Reviewed-by: Steven Dake <sdake@redhat.com> + +2012-01-19 Jan Friesse <jfriesse@redhat.com> + + mon: Remove leftover print of debug output to err + Reviewed-by: Angus Salkeld <asalkeld@redhat.com> + + Set default multicast port if not specified + Reviewed-by: Steven Dake <sdake@redhat.com> + +2012-01-19 Fabio M. Di Nitto <fdinitto@redhat.com> + + votequorum: drop protocol versioning in favour of extra space on the wire + protocol needs to stay compatible across a corosync MAJOR release. + Implementing internal protocol version compat is at best suicidal. + + Add extra space to the net struct and we can use flags to determine + feature sets. + + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + +2012-01-19 Angus Salkeld <asalkeld@redhat.com> + + autobuild: make sure systemd is enabled on f15+ + Reriewed-by: Steven Dake <sdake@redhat.com> + + autobuild: ssh into node as root + Reviewed-by: Steven Dake <sdake@redhat.com + + Fix spec file when passed "--with-testagents" + Reviewed-by: Steven Dake <sdake@redhat.com> + + CTS: remove the test service agent + Reviewed-by: Steven Dake <sdake@redhat.com> + +2012-01-18 Fabio M. Di Nitto <fdinitto@redhat.com> + + votequorum: ifdef qdiskd API out + as agreed, the API has not been tested yet. Adding later is better than + removing it. + + Reviewed-by: Steven Dake <sdake@redhat.com> + + votequorum: be slightly more efficent and consistent + reduce req_exec_quorum_nodeinfo from 40 to 16 bytes (onwire) + + add 4 bytes to req_exec_quorum_reconfigure to be consisent + with feature/version checking (onwire data) + + make all nodeid definition "unsigned int" instead of some random mix. + + reduce size of different vars + + remove lots of unnecessary swab due to reducing size of data + + drop join_time from cluster_node, it's never used + + fix printing of nodeids from random mix to uint for consistency + + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + +2012-01-18 Jan Friesse <jfriesse@redhat.com> + + Update TODO with recent mcast addr changes + Reviewed-by: Steven Dake <sdake@redhat.com> + + Store auto generated mcast addr and port to icmap + Reviewed-by: Steven Dake <sdake@redhat.com> + + Add cluster_name option + Option is used for automatic generating of multicast address. If both + cluster_name and mcastaddr options are specified, mcastaddr takes + precedence. + + Reviewed-by: Steven Dake <sdake@redhat.com> + +2012-01-17 Fabio M. Di Nitto <fdinitto@redhat.com> + + quorum: fix votequorum service initialization + the problem is that votequorum was listed as part of default + services. + + At service_link_and_init, votequorum library and exec were being + made available, even when votequorum was not in used at all, creating + all kind of problems. + + By changing the service_link_and_init to be clever, we restore the + original and wanted behavior to link the service only when required. + + This also fixed N*votequorum API calls segfaults, init segfaults + and a few dozen other small issues... + + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + + quorumtool: fix node display regression in monitoring option + make display_nodes code common with show_nodes + + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + + votequorum: fix include to match definition name (cosmetic) + Reviewed-by: Angus Salkeld <asalked@redhat.com> + + quorum: integrate votequorum and ykd correctly + the problem is mostly in votequorum here, where votequorum_exec is + initialized with or without votequorum being configured as quorum + provider. + + re-establish init order (regression from dropping lcrso) and make + sure we init correctly only the module configured. + + ykd changes are for consistency only at this point in time. + + Reviewed-by: Angus Salkeld <asalked@redhat.com> + + build: fix distcheck regression introduced from ykd binding + Reviewed-by: Angus Salkeld <asalked@redhat.com> + + votequorum: fix standalone build + Reviewed-by: Angus Salkeld <asalked@redhat.com> + + main: drop unrequired vars + Reviewed-by: Angus Salkeld <asalked@redhat.com> + + quorum: link ykd back into quorum and fix build warning + Reviewed-by: Angus Salkeld <asalked@redhat.com> + + votequorum: check for parameters and return proper error + Reviewed-by: Angus Salkeld <asalked@redhat.com> + + vsf_quorum: fix potential memory leak + Reviewed-by: Angus Salkeld <asalked@redhat.com> + + coroparse: fix include path after drop lcrso merge + Reviewed-by: Angus Salkeld <asalked@redhat.com> + + update .gitignore + Reviewed-by: Angus Salkeld <asalked@redhat.com> + +2012-01-17 Steven Dake <sdake@redhat.com> + + Silent a warning from coverity about handle being used without assign + Reviewed-by: Angus Salkeld <asalked@redhat.com> + + Silent a warning from coverity about icmap_track being used without assign + Reviewed-by: Angus Salkeld <asalked@redhat.com> + + Silent a warning from coverity about icmap_track being used without assign + Reviewed-by: Angus Salkeld <asalked@redhat.com> + + Silent a warning from coverity about icmap_track being used without assign + Reviewed-by: Angus Salkeld <asalked@redhat.com> + + Silent a coverity warning about a variable being uninit when it actually is + Reviewed-by: Angus Salkeld <asalked@redhat.com> + + Silent a coverity warning about handle being unset (when it really is) + Reviewed-by: Angus Salkeld <asalked@redhat.com> + + Silent a warning from coverity about icmap_track being used without assign + Reviewed-by: Angus Salkeld <asalked@redhat.com> + + Silent a warning from coverity about icmap_track being used without assign + Reviewed-by: Angus Salkeld <asalked@redhat.com> + + Silent a warning from coverity about icmap_track being used without assign + Reviewed-by: Angus Salkeld <asalked@redhat.com> + + Silent a warning from coverity about icmap_track being used without assign + Reviewed-by: Angus Salkeld <asalked@redhat.com> + + Silent a warning from coverity about icmap_track being used without assign + Reviewed-by: Angus Salkeld <asalked@redhat.com> + + Silent a warning from coverity about icmap_track being used without assign + Reviewed-by: Angus Salkeld <asalked@redhat.com> + + Add break where one was missing + Reviewed-by: Angus Salkeld <asalked@redhat.com> + + Remove unchecked coverity error + Reviewed-by: Angus Salkeld <asalked@redhat.com> + +2012-01-16 Steven Dake <sdake@redhat.com> + + Fix missing rebase problem that causes make rpm to fail + Reviewed-by: Fabio Di Nitto <fdinitto@redhat.com> + + Add missing votequorum.h file from previous commit + Reviewed-by: Fabio Di Nitto <fdinitto@redhat.com> + + Remove main_get_config_modules since it is no longer needed + Reviewed-by: Fabio Di Nitto <fdinitto@redhat.com> + + Finish up quorum integration + Reviewed-by: Fabio Di Nitto <fdinitto@redhat.com> + Reviewed-by: Steven Dake <sdake@redhat.com> + + Remove some lcr ifdef'ed code in service.c + Reviewed-by: Fabio Di Nitto <fdinitto@redhat.com> + + Remove services directory from loc command + Reviewed-by: Fabio Di Nitto <fdinitto@redhat.com> + + Get rid of external config loader in include/engine/config.h + Reviewed-by: Fabio Di Nitto <fdinitto@redhat.com> + + Remove service.d directory since plugins are gone + Reviewed-by: Fabio Di Nitto <fdinitto@redhat.com> + + Remove lcr directory, files, and references since it is no longer needed + Reviewed-by: Fabio Di Nitto <fdinitto@redhat.com> + + Initial removal of plugins + Quorum is broken in this patch. + service.h needs to be cleaned up significantly + + Reviewed-by: Fabio Di Nitto <fdinitto@redhat.com> + + Move cs_error into global header so that third party applications can use it + Reviewed-by: Andrew Beekhof <abeekhof@redhat.com> + +2012-01-16 Fabio M. Di Nitto <fdinitto@redhat.com> + + votequorum: fix name and version + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + + votequorum: drop unused define + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + + votequorum: rearrange code + this commit has no functional changes or bugfixes. + + Simply reorganize the code in more logical way and change function + names to be more consistent. + + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + + votequorum/quorum-tools: drop unnecessary includes + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + + votequorum: network data should be packed + Reviewed-by: Christine Caulfield <ccaulfie@redhat.com> + +2012-01-13 Jan Friesse <jfriesse@redhat.com> + + Use fast inc for service statistics + Reviewed-by: Steven Dake <sdake@redhat.com> + + icmap: Add fast version of inc and dec operation + Biggest difference between fast and standard inc/dec operation is in + fast that fast doesn't do malloc/memcpy, but also it means that tracking + events doesn't have old value set. + + Reviewed-by: Steven Dake <sdake@redhat.com> + +2012-01-13 Fabio M. Di Nitto <fdinitto@redhat.com> + + Fix spec file to reflect documentation changes + Reviewed-by: Reviewed-by: Jan Friesse <jfriesse@redhat.com> + + man: improve index.html a bit + add tools/daemon section and developers section + + also add links to other API docs + + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + + man: sort interfaces alphabetically + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + + man: cosmetic index.html changes + makes it slightly more consistent and readable + + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + + man: drop confdb from man pages + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + + update TODO list + Reviewed-by: Steven Dake <sdake@redhat.com> + + quorum: extend initialize man page + add QUORUM_FREE/QUORUM_SET and fix a typo + + Reviewed-by: Steven Dake <sdake@redhat.com> + + quorum: libquorum API documentation (quorum_getquorate) + Reviewed-by: Steven Dake <sdake@redhat.com> + + quorum: libquorum API documentation (quorum_context_set) + Reviewed-by: Steven Dake <sdake@redhat.com> + + quorum: libquorum API documentation (quorum_context_get) + Reviewed-by: Steven Dake <sdake@redhat.com> + + quorum: libquorum API documentation (quorum_dispatch) + Reviewed-by: Steven Dake <sdake@redhat.com> + + quorum: libquorum API documentation (quorum_fd_get) + Reviewed-by: Steven Dake <sdake@redhat.com> + + quorum: libquorum API documentation (quorum_finalize) + Reviewed-by: Steven Dake <sdake@redhat.com> + + quorum: libquorum API documentation (quorum_initialize) + Reviewed-by: Steven Dake <sdake@redhat.com> + + votequorum: update man pages + Reviewed-by: Steven Dake <sdake@redhat.com> + + votequorum: lower quorum change logging + vfs_quorum already does logging at INFO level + + Reviewed-by: Steven Dake <sdake@redhat.com> + + update TODO list + Reviewed-by: Steven Dake <sdake@redhat.com> + + votequorum: drop votequorum_leave + this was a compatibility function for cman_tool only. + + Reviewed-by: Steven Dake <sdake@redhat.com> + + votequorum: add missing new line + Reviewed-by: Steven Dake <sdake@redhat.com> + + votequorum: display flags for all features + Reviewed-by: Steven Dake <sdake@redhat.com> + + quorumtool: improve monitoring output some more + this avoid printing some static data more than once + + Reviewed-by: Steven Dake <sdake@redhat.com> + + votequorum: drop HASSTATE/SETSTATE + this is a leftover from killing DISALLOWED + + Reviewed-by: Steven Dake <sdake@redhat.com> + + quorumtool: make data display more generic + this improves the monitoring option a ton + + Reviewed-by: Steven Dake <sdake@redhat.com> + + quorumtool: drop redundant init calls to votequorum + this is taken care of in initall + + Reviewed-by: Steven Dake <sdake@redhat.com> + + quorumtools: update copyright header + Reviewed-by: Steven Dake <sdake@redhat.com> + + cmapctl: initialize more variables + and kill the last gcc warnings + + Reviewed-by: Steven Dake <sdake@redhat.com> + + cmapctl: initialize bit_value and check if it's set + more gcc warnings... + + Reviewed-by: Steven Dake <sdake@redhat.com> + + mainconfig: check error return codes from logsys_format_set + and avoid yet another gcc warning + + Reviewed-by: Steven Dake <sdake@redhat.com> + + main: drop unrequired call to totem_get_stats + and shut up another gcc warning + + Reviewed-by: Steven Dake <sdake@redhat.com> + + icmap: make sure variable is initialized + shut up gcc warning + + Reviewed-by: Steven Dake <sdake@redhat.com> + +2012-01-12 Steven Dake <sdake@redhat.com> + + unshare exec/icmap.so + Reviewed-by: Fabio Di Nitto <fdinitto@redhat.com> + + Change all ais references to corosync + Reviewed-by: Fabio Di Nitto <fdinitto@redhat.com> + +2012-01-11 Jan Friesse <jfriesse@redhat.com> + + cmapctl: Print all keys by default + Also remove option -a, because there is no need to hide + internal_configuration. + + Reviewed-by: Steven Dake <sdake@redhat.com> + + Update TODO with notifid changes + Reviewed-by: Steven Dake <sdake@redhat.com> + + Store rrp faulty status of ring in cmap + New key with faulty status of ring is created in cmap as name + runtime.totem.pg.mrp.rrp.$ring_number.faulty + + Reviewed-by: Steven Dake <sdake@redhat.com> + +2012-01-10 Fabio M. Di Nitto <fdinitto@redhat.com> + + quorum: more TODO items + Reviewed-by: Steven Dake <sdake@redhat.com> + + quorum: update TODO + Reviewed-by: Steven Dake <sdake@redhat.com> + + votequorum: fix votes/quorum recalculation in auto_tie_breaker + this is necessary when switching from 2 nodes to 1 one in auto_tie_breaker + + Reviewed-by: Steven Dake <sdake@redhat.com> + + votequorum: improve wait_for_all reset handling when merging parititions + this change allow a node to rejoin a cluster that has already seen + wait_for_all and reset the flag if the partition that the node is joining + is quorate. + + Also propagate current wait_for_all_status and quorate info via nodeinfo. + + Reviewed-by: Steven Dake <sdake@redhat.com> + + votequorum: fix another regressions introduced by 05b4e99a6e (dispatch notifications only once) + left_member_entries is never set when totem config change is regular. + + Reviewed-by: Steven Dake <sdake@redhat.com> + + votequorum: fix regression introduced by 05b4e99a6e (dispatch notifications only once) + Effectively there are 2 kind of quorum notifications that cannot be merged into 1. + + config_change: when the quorum membership changes, triggered by totem/membership changes + (node join/leave) + + quorum_status_changes: same membership node becomes quorate or not. + + A quorum status change does not necessarely match a membership change, hence it needs + to be dispatched separately. + + An example is a cluster that is not quorate, user changes the amount of votes in a node to + regain quorum. No membership changes happen at this point, but votequorum will + effectively broadcast the votes: XX change and recalculate quorum. + In turn we need to notify quorum users. + + Reviewed-by: Steven Dake <sdake@redhat.com> + + votequorum: switch two_node from flag to int + TWO_NODE was the last flag using quorum_flags. + + Reviewed-by: Steven Dake <sdake@redhat.com> + + votequorum: drop kill_reason leftovers (part of disallowed) + Reviewed-by: Steven Dake <sdake@redhat.com> + + votequorum: missed one comment to cleanup ;) + Reviewed-by: Steven Dake <sdake@redhat.com> + + votequorum: clean up coding style + first pass to bring votequorum at corosync codying style. + + fix whitespaces, add missing {}, fix comments, be consistent with + ENTER/LEAVE usage, be consistent with some functions variable names + and some more cosmetic changes + + Reviewed-by: Steven Dake <sdake@redhat.com> + + votequorum: update copyright/authors + Reviewed-by: Steven Dake <sdake@redhat.com> + + votequorum: dispatch notifications only once + Reviewed-by: Steven Dake <sdake@redhat.com> + + votequorum: add last_man_standing support (default: off) + this flag (0|1) can be configured via quorum.last_man_standing and when + enabled, it allows expected_votes to be dynamically recalculated. + + Assuming an 8 nodes cluster, every node votes 1 (mandatory requirement for + this feature). + + In the first event, 3 nodes are lost. + + The remaining partition of 5 is barely quorate. + + After a configurable timeout (quorum.last_man_standing_window, default 10sec) + the quorate partition is allow to recalculate expected_votes based on + the remaining nodes. + + This operation will bring expected_votes to 5 and quorum to 3. + + Repeating the above loop, in the next event, 2 more nodes are allowed to + die. etc. etc. + + Reviewed-by: Steven Dake <sdake@redhat.com> + + votequorum: drop concept of DISALLOWED + this is a very old leftover from the RHEL5 timeframe, not used in RHEL6. + + Also change votequorum soname since this change implies an ABI change. + + Reviewed-by: Steven Dake <sdake@redhat.com> + + quorum: bump soname for libquorum to reflect API change + Reviewed-by: Steven Dake <sdake@redhat.com> + + votequorum: fix quorum_flags values + Reviewed-by: Steven Dake <sdake@redhat.com> + + votequorum: transmit wait_for_all info in node info message + this is necessary to reset the wait_for_all data when a node is joining a cluster + that has already seen all nodes once. + + Reviewed-by: Steven Dake <sdake@redhat.com> + + votequorum: add auto_tie_breaker support (default: off) + this flag (0|1) can be configured via quorum.auto_tie_breaker and when + enabled, support for perfect even split is on. + + In case of a 50% of votes loss in one single transition, the partition + with the node that has the lowest node id will remain quorate. + + Reviewed-by: Steven Dake <sdake@redhat.com> + + votequorum: add wait_for_all support (default: off) + this flag (0|1) can be configured via quorum.wait_for_all and changes + behavior when granting quorum for the first time. + + Normal behavior (default / 0) grants quorum as soon as enough nodes + are available in a cluster. + + Setting this value to 1 will grant quorum only after all cluster + memembers are part of the cluster at the same time. + + Reviewed-by: Steven Dake <sdake@redhat.com> + + votequorum: always dispatch quorum notifications + Resolves: rhbz#768144 + + Reviewed-by: Steven Dake <sdake@redhat.com> + + quorum: change API to return quorum type at initialization time + corosync internal theory of operation is that without a quorum provider + the cluster is always quorate. This is fine for membership free clusters + but it does pose a problem for applications that need membership and + "real" quorum. + + this change add quorum_type to quorum_initialize call to return QUORUM_FREE + or QUORUM_SET. Applications can then make their own decisions to error out + or continue operating. + + The only other way to know if a quorum provider is enabled/configured is + to poke at confdb/objdb, but adds an unnecessary burden to applications + that really don't need to use an entire library for a boolean value. + + Reviewed-by: Steven Dake <sdake@redhat.com> + +2012-01-09 Angus Salkeld <asalkeld@redhat.com> + + IPC: don't block forever on a recv msg as corosync might be gone. + This at least will not make the client hang forever. + + Reviewed-by: Steven Dake <sdake@redhat.com> + +2012-01-09 Jan Friesse <jfriesse@redhat.com> + + Add rrp faulty event to notifyd + Reviewed-by: Steven Dake <sdake@redhat.com> + + Add usage text to cmapctl + Reviewed-by: Steven Dake <sdake@redhat.com> + + Ability to display binary data type in cmapctl + Reviewed-by: Steven Dake <sdake@redhat.com> + + Ability to store binary key + Reviewed-by: Steven Dake <sdake@redhat.com> + +2012-01-09 Angus Salkeld <asalkeld@redhat.com> + + Fix last corosync/engine/coroapi.h + Reviewed-by: Steven Dake <sdake@redhat.com> + +2012-01-08 Steven Dake <sdake@redhat.com> + + Add Requires: libxslt if BUILD_XMLCONF is defined + Reviewed-by: Angus Salkled <asalkeld@redhat.com> + + Improve make rpm to work properly + Reviewed-by: Fabio Di Nitto <fdinitto@redhat.com> + + Move coroapi out of external headers + Reviewed-by: Angus Salkled <asalkeld@redhat.com> + +2012-01-07 Steven Dake <sdake@redhat.com> + + Move logsys.c into corosync binary instead of a shared object + Our preferred shared logging system is exported via the libqb library. As + a result, the corosync project no longer needs to export logsys.so and the + code can be directly included in the binary. The header file can also be + removed. + + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + + Allow make rpm to complete with recent changes in cmap and xmlproc + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + + Fix make dist relating to xmlconf conditional + Reviewed-by: Fabio Di Nitto <fdinitto@redhat.com> + +2012-01-06 Angus Salkeld <asalkeld@redhat.com> + + Fix some iterator based mem leaks + Reviewed-by: Steven Dake <sdake@redhat.com> + +2012-01-06 Steven Dake <sdake@redhat.com> + + Remove libqb issues reference 1 since that isn't really a problem + +2012-01-03 Fabio M. Di Nitto <fdinitto@redhat.com> + + ipc: make less noise + switch from LOG_INFO to LOG_DEBUG for some basic operations + + Reviewed-by: Steven Dake <sdake@redhat.com> + +2011-12-20 Jan Friesse <jfriesse@redhat.com> + + Add topic-xmlschema to TODO + Also topic-xmlconfig is removed. + + Reviewed-by: Steven Dake <sdake@redhat.com> + + Man pages for corosync-xml + Reviewed-by: Steven Dake <sdake@redhat.com> + + Convert xml config file + Included are following parts: + - XSLT template with actual conversion + - simple wrapper on top of xsltproc called corosync-xmlproc + - example XML file + + Reviewed-by: Steven Dake <sdake@redhat.com> + + Remove deprecated options from corosync.conf page + Reviewed-by: Steven Dake <sdake@redhat.com> + + Remove deprecated options from conf examples + Reviewed-by: Steven Dake <sdake@redhat.com> + + Align --with-snmp in help output + Reviewed-by: Steven Dake <sdake@redhat.com> + +2011-12-15 Jan Friesse <jfriesse@redhat.com> + + Updated TODO to reflect cmap inclusion + + Remove objdb and confdb + Reviewed-by: Steven Dake <sdake@redhat.com> + + Move wd service to use icmap + Reviewed-by: Steven Dake <sdake@redhat.com> + + Move mon service to use icmap + Reviewed-by: Steven Dake <sdake@redhat.com> + + Move SAM to use CMAP service + Reviewed-by: Steven Dake <sdake@redhat.com> + + Move quorumtool to use cmap service + Reviewed-by: Steven Dake <sdake@redhat.com> + + Move notifyd to use cmap service + Reviewed-by: Steven Dake <sdake@redhat.com> + + Add cmapctl tool + corosync-cmapctl is direct replacement for corosync-objctl + + Reviewed-by: Steven Dake <sdake@redhat.com> + + Move cfg service to use icmap + Reviewed-by: Steven Dake <sdake@redhat.com> + + Move votequorum to use icmap + Reviewed-by: Steven Dake <sdake@redhat.com> + + Move testquorum to icmap + Reviewed-by: Steven Dake <sdake@redhat.com> + + Move corosync core to use icmap + Reviewed-by: Steven Dake <sdake@redhat.com> + + Add user library to use cmap service + Reviewed-by: Steven Dake <sdake@redhat.com> + + Add cmap service + Cmap service is application developer interface to icmap and it is + direct replacement for confdb. + + Reviewed-by: Steven Dake <sdake@redhat.com> + + Add icmap + Icmap is replacement for objdb, based on libqb map (trie). + + Reviewed-by: Steven Dake <sdake@redhat.com> + +2011-12-15 Angus Salkeld <asalkeld@redhat.com> + + TODO: remove "message/queue size" todo's + + Check for the correct message size in totempg_groups_joined_reserve() + Currently: + - send_reserve() adds to the reserve + - msg_count_send_ok() tests ((avail - totempg_reserved) > msg_count) + + So essentially we are checking to see if 2 * msg_count can fit in + the q. + + So instead I am using byte_count_send_ok (size) to see if the + message will fit then calling send_reserve() + + Reviewed-by: Steven Dake <sdake@redhat.com> + + Fix cpgbench (large message sizes) + To allow async cpg messages of 1M we need to: + 1) increase the totem queue size 4 times + 2) align the critical level to one large message free + + There are a number of reasons for doing this: + + We can't let cpg_mcast_joined() fail because the user will not see it + and will assume is has succeded. + + The reason we are getting good performance is by providing a negative + feedback loop from the totem q to the IPC/poll system. This relies + on 4 q states low/med/high/crit. With messages of size 1M you + now have a q of size one and now go from level low to crit instantly + then back to low as messages are put on and taken off. I don't think + this is the best behaviour. By having a q size of 4 allows the system + to utilize the q better and give us time to respond to changes in + the q level. + + To effectively achieve flow control with a q of size 1 would require + all the clients to request the space on the q like is done in + totempg_groups_joined_reserve() but probably in shared memory + This would take quite a bit of re-work. + + LOG: get the logging to work from loaded quorum modules + Reviewed-by: Steven Dake <sdake@redhat.com> + + Tweek the increment in cpgbench so the message size gets to 1M + Reviewed-by: Steven Dake <sdake@redhat.com> + +2011-12-14 Angus Salkeld <asalkeld@redhat.com> + + Be more flexible (correct) with flowcontrol. + Many functions do not require flowcontrol and are two-way + so they can get failures from corosync. + Only cpg_mcast_joined() _really_ needs the current level + of flowcontrol. + + Reviewed-by: Steven Dake <sdake@redhat.com> + +2011-12-13 Fabio M. Di Nitto <fdinitto@redhat.com> + + quorum-tools: add quorum monitoring option + Reviewed-by: Steven Dake <sdake@redhat.com> + + quorum-tool: reduce amount of init/finalize + Reviewed-by: Steven Dake <sdake@redhat.com> + + quorum-tools: change internal get_quorum_type + don't leak memory, better error reporting and improve + status output when there is no quorum configured + + also fix some coding style based on review input + + Reviewed-by: Steven Dake <sdake@redhat.com> + + quorum-tool: add return codes to show status + -1 indicates an error communicating with corosync/quorum/votequorum service + 0 node is not quorate + 1 node is quorate + + also add more error reporting and a couple of missing calls to finalize + + Reviewed-by: Steven Dake <sdake@redhat.com> + + quorum-tool: update copyright date + Reviewed-by: Steven Dake <sdake@redhat.com> + + quorum-tools: fix options/help text + Reviewed-by: Steven Dake <sdake@redhat.com> + +2011-12-13 Angus Salkeld <asalkeld@redhat.com> + + LOG: Fix a crash in the shutdown. + Reviewed-by: Steven Dake <sdake@redhat.com> + +2011-12-06 Steven Dake <sdake@redhat.com> + + Change mailing list in configure.ac to discuss@lists.corosync.org + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + + Add silent rules to corosync make to more easily find warnings + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2011-12-01 Jan Friesse <jfriesse@redhat.com> + + hdb* functions already returns -error value + So it's wrong to define hdb_error_to_cs and pass -error value, because + this creates --error = error = CS_OK. + + Reviewed-by: Steven Dake <sdake@redhat.com> + +2011-11-30 Yunkai Zhang <qiushu.zyk@taobao.com> + + Correct nodeid in memb_state_commit_token_send function + Reviewed-by: Steven Dake <sdake@redhat.com> + +2011-11-29 Steven Dake <sdake@redhat.com> + + From: Yunkai Zhang: Today, I have observed one of the reason that corosync running into FAILED TO RECEIVE state. + There was five nodes(A,B,C,D,E) in my testing, and I limited the UDP + transmission rate of C nodes by iptables command: + iptables -A INPUT -i eth0 -p udp -m limit --limit 10000/s + --limit-burst 1 -j ACCEPT + iptables -A INPUT -i eth0 -p udp -j DROP + + After one hour later, C node had been missing some MCAST messages, + it's state described as following: + ==state of C node== + my_aru:0x805 + my_high_seq_received:0xC2C + my_aru_count:7 + + =>receved MCAST message with seq:806 from B nodes + =>enter *message_handler_mcast* + =>add this message to regular_sort_queue + ... + =>enter *update_aru* function + => range = (my_high_seq_received - my_aru) + = (0xC2C - 0x805) + = 1063 + => if range>1024, do nothing and and return directly. + ==END== + + According this logic, after (my_high_req_received-my_aru)>1024, my_aru + will not be updated though corosync can receive MCAST messages + retransmitted by other nodes. + + But at that timte, my_aru_count was only 7. So the corosync at C node + would keep in this status until my_aru_count increased to + fail_to_recv_const(the default value is 2500). This was a long time + for corosync, but we wasted it. + + To solve this issue, maybe we can enlarge the range condition in + update_aru function? Or we just ingnore the checking of range value, + it seems no harmfull, because we have been using fail_to_recv_const to + control the things. + + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2011-11-28 Yunkai Zhang <qiushu.zyk@taobao.com> + + Correct nodeid of token when we retransmit it + Although incorrect nodeid will not affect program's logic, but it will + make us confused when we add some logs to record the transmission path of + token in debug mode. + + Reviewed-by: Steven Dake <sdake@redhat.com> + +2011-11-26 Yunkai Zhang <qiushu.zyk@taobao.com> + + Fixed bug when corosync receive JoinMSG in OPERATIONAL state + Accordig the totem protocal, nodes should enter GATHER state when it + receive JoinMSG in OPERATIONAL state. If we discard it in OPERATIONAL + state, the nodes sending this JoinMSG could not receive the response + untill other nodes reach token lost timeout. + + This bug will cause nodes having entered GATHER state spend more time to + rejoin the ring, and then it will make nodes reach token expired timeout + more easily. + + Reviewed-by: Steven Dake <sdake@redhat.com> + +2011-11-26 Steven Dake <sdake@redhat.com> + + Remove unchecked return error in test code + + Remove unused variable from latest cpg work that merged all config changes Signed-off-by: Steven Dake <sdake@redhat.com> + + Remove unchecked return problem in test code + + Remove unchecked return warning + + Remove use of NULL in test agent + + Remove unchecked return error + + Correct typing in memory_map function in lib/cpg.c + +2011-11-14 Angus Salkeld <asalkeld@redhat.com> + + Fix last warnings so we can build with --enable-fatal-warnings + Reviewed-by: Steven Dake <sdake@redhat.com> + +2011-11-10 Angus Salkeld <asalkeld@redhat.com> + + TOTEM: better clean up on exit + Reviewed-by: Steven Dake <sdake@redhat.com> + + OBJDB: free up resources on exit + Reviewed-by: Steven Dake <sdake@redhat.com> + + LOG: cleanup logging resources at exit + Reviewed-by: Steven Dake <sdake@redhat.com> + + Clean up the poll loop resourses on exit + Reviewed-by: Steven Dake <sdake@redhat.com> + + Add calls to missing object_find_destroy() to fix mem leaks + Reviewed-by: Steven Dake <sdake@redhat.com> + + Free mem allocated by getaddrinfo + Reviewed-by: Steven Dake <sdake@redhat.com> + +2011-10-31 Yunkai Zhang <qiushu.zyk@taobao.com> + + Send one confchg event per CPG group to CPG client + We found that sheepdog will receive more than one confchg msg when + network partition occur. For example, suppose the cluster has 4 + nodes: N1, N2, N3, N4, and they form a single-ring initially. After a + while, network partition occur, the single-ring divide into two + sub-ring: ring(N1, N2, N3) and ring(N4). The sheepdog in the ring(N4) + will receive the following confchg messages in turn: + Memb: N2,N3,N4 Left:N1 Joined:null + memb: N3,N4 Left:N2 Joined:null + memb: N4 Left:N3 Joined:null + + This patch will fixed this bug, and the client will only receive one + confchg event in this case: + memb: N4 Left:N1,N2,N3 Joined:null + + Reviewed-by: Angus Salkeld <asalkeld@redhat.com> + +2011-10-28 Anton Jouline <anton.jouline@cbsinteractive.com> + + Adding support for dynamic membership with UDPU transport + Add a new object called totem.interface.dynamic to allow creation/deletion + of new child objects using the corosync-objctl utility: + + to add new member: + linux# corosync-objctl -c totem.interface.dynamic.10-211-55-12 + + to delete an existing member: + linux# corosync-objctl -d totem.interface.dynamic.10-211-55-12 + + Corosync will dynamically add these members to the configuration and start + communicating with those nodes. + + Reviewed-by: Steven Dake <sdake@redhat.com> + +2011-10-25 Jan Friesse <jfriesse@redhat.com> + + Remove unused buf and len variables in log_printf + Reviewed-by: Steven Dake <sdake@redhat.com> + +2011-10-24 Jan Friesse <jfriesse@redhat.com> + + api: Change some of totempg definitons + Recent changes in patch "Get rid of hdb usage in totempg.h interface" + caused incompatibility between corosync API and totempg. + + Reviewed-by: Steven Dake <sdake@redhat.com> + + totemmrp: Allow compilation without warnings + Reviewed-by: Steven Dake <sdake@redhat.com> + + Allow compilation of totempg without warnings + Reviewed-by: Steven Dake <sdake@redhat.com> + + logsys.h: Properly define LEAVE macro + Reviewed-by: Angus Salkeld <asalkeld@redhat.com> + +2011-10-22 Angus Salkeld <asalkeld@redhat.com> + + Set the size of the blackbox to the size on flatiron + Reviewed-by: Steven Dake <sdake@redhat.com> + + CTS: remove dead code in sam_test_agent + Reviewed-by: Steven Dake <sdake@redhat.com> + + don't log an error if exiting with 0 + Reviewed-by: Steven Dake <sdake@redhat.com> + + LOG: update the log defines + Reviewed-by: Steven Dake <sdake@redhat.com> + +2011-10-21 Steven Dake <sdake@redhat.com> + + add wait-for-license to cov-analyze + Reviewed-by: Angus Salkeld <asalkeld@redhat.com> + + res could return an undefined value if there was no error in totempg_groups_initialize + Reviewed-by: Angus Salkeld <asalkeld@redhat.com> + + Remove default from cpg_model_initialize - atm there is only one model + Reviewed-by: Angus Salkeld <asalkeld@redhat.com> + + Remove dead code in evs service + Reviewed-by: Angus Salkeld <asalkeld@redhat.com> + + Remove dead code in votequorum + Reviewed-by: Angus Salkeld <asalkeld@redhat.com> + +2011-10-21 Angus Salkeld <asalkeld@redhat.com> + + TEST: make cpgbench go to 1M + Reviewed-by: Steven Dake <sdake@redhat.com> + + Remove references to README.devmap + Reviewed-by: Steven Dake <sdake@redhat.com> + +2011-10-21 Steven Dake <sdake@redhat.com> + + Remove dead code in cfg.c + +2011-10-21 Angus Salkeld <asalkeld@redhat.com> + + Remove old README.devmap + Reviewed-by: Steven Dake <sdake@redhat.com> + + MAN: remove unused man pages + Reviewed-by: Steven Dake <sdake@redhat.com> + + LOG: use libqb facility conversion functions + Reviewed-by: Steven Dake <sdake@redhat.com> + + LOG: get logging to file working correctly + Reviewed-by: Steven Dake <sdake@redhat.com> + + LOG: Fix debugging + Reviewed-by: Steven Dake <sdake@redhat.com> + +2011-10-20 Steven Dake <sdake@redhat.com> + + Updated TODO with feedback from community defining our Needle 2.0/2.1 goals + Revieweed-by: Jan Friesse <jfriesse@redhat.com> + + Add --concurrency to coverity make target + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2011-10-10 Masatake YAMATO <yamato@redhat.com> + + Remove cloned lines in main of main.c + +2011-09-22 Steven Dake <sdake@redhat.com> + + Deliver all messages from my_high_seq_recieved to the last gap + This patch passes two test cases: + + ------- + Test #1 + ------- + Two node cluster - run cpgbench on each node + + modify totemsrp with following defines: + Two test cases: + + ------- + Test #2 + ------- + 5 node cluster + + start 5 nodes randomly at about same time, start 5 nodes randomly at about + same time, wait 10 seconds and attempt to send a message. If message blocks + on "TRY_AGAIN" likely a message loss has occured. Wait a few minutes without + cyclng the nodes and see if the TRY_AGAIN state becomes unblocked. + + If it doesn't the test case has failed + + Reviewed-by: Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2011-09-08 Jan Friesse <jfriesse@redhat.com> + + totemconfig: change minimum RRP threshold + RRP threshold can be lower value then 5. + + Reviewed-by: Fabio M. Di Nitto <fdinitto@redhat.com> + +2011-09-05 Steven Dake <sdake@redhat.com> + + Allow conditional rpmbuilds of NSS feature + NSS is currently non-conditional. Allow nss to be build conditonally. + + Reviewed-by: Angus Salkeld <asalked@redhat.com> + +2011-09-02 Steven Dake <sdake@redhat.com> + + Ignore memb_join messages during flush operations + a memb_join operation that occurs during flushing can result in an + entry into the GATHER state from the RECOVERY state. This results in the + regular sort queue being used instead of the recovery sort queue, resulting + in segfault. + + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2011-09-01 Jan Friesse <jfriesse@redhat.com> + + rrp: Higher threshold in passive mode for mcast + There were too much false positives with passive mode rrp when high + number of messages were received. + + Patch adds new configurable variable rrp_problem_count_mcast_threshold + which is by default 10 times rrp_problem_count_threshold and this is + used as threshold for multicast packets in passive mode. Variable is + unused in active mode. + + Reviewed by: Steven Dake <sdake@redhat.com> + + rrp: Handle endless loop if all ifaces are faulty + If all interfaces were faulty, passive_mcast_flush_send and related + functions ended in endless loop. This is now handled and if there is no + live interface, message is dropped. + + Reviewed by: Steven Dake <sdake@redhat.com> + +2011-08-24 Steven Dake <sdake@redhat.com> + + Get rid of hdb usage in totempg.h interface + hdb has some expense and is not necessary in the totempg.so runtime. This + patch removes the dependence on hdb and instead uses a direct pointer. + + Reviewed-by: Angus Salkeld <asalkeld@redhat.com> + + Remove hdb.h header includes from unnecessary files + The files in this patch do not use the hdb.h header. + + Reviewed-by: Angus Salkeld <asalkeld@redhat.com> + +2011-08-23 Steven Dake <sdake@redhat.com> + + Use qb_hdb instead of mutex based hdb code + Rid ourselves of the mutex usage still in the code base + + Reviewed-by: Angus Salkeld <asalkeld@redhat.com> + + Add totempg_threaded_mode_enable() api + This API allows totem to operate as a multithreaded library. Performance is + better without threads but some library users may only have multithreaded + systems. In the corosync case where we have removed threads, this reduces + cpu utilization by ~10% by removing about 50% of the mutex lock and unlock calls + that occur during typical operation. Since the latest corosync is nearly + thread free, there is no need for mutex operations. + + Reviewed-by: Angus Salkeld <asalkeld@redhat.com> + + Move cs_queue.h from include directory to exec directory + This file is only used by totemsrp.c. Move out of general include + directory. + + Reviewed-by: Angus Salkeld <asalkeld@redhat.com> + + use va version of external log function + This removes a sprintf operation in the totem and ipc logging operations + + Reviewed-by: Angus Salkeld <asalkeld@redhat.com> + +2011-08-18 Tim Beale <tim.beale@alliedtelesis.co.nz> + + A CPG client can sometimes lockup if the local node is in the downlist + In a 10-node cluster where all nodes are booting up and starting corosync + at the same time, sometimes during this process corosync detects a node as + leaving and rejoining the cluster. + + Occasionally the downlist that gets picked contains the local node. When the + local node sends leave events for the downlist (including itself), it sets + its cpd state to CPD_STATE_UNJOINED and clears the cpd->group_name. This + means it no longer sends CPG events to the CPG client. + + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2011-08-17 Tim Beale <tim.beale@alliedtelesis.co.nz> + + Display ring-ID consistently in debug + Ring ID was being displayed both as hex and decimal in places. Update so + it's displayed consistently (I chose hex) to make debugging easier. + + Reviewed-by: Angus Salkeld <asalkeld@redhat.com> + + Add code comment mapping for message handler defines + As a corosync-newbie it can be hard to bridge the gap between where a + particular message is sent and where the receive handler processes it, + and vice versa. + + Reviewed-by: Angus Salkeld <asalkeld@redhat.com> + +2011-08-15 Steven Dake <sdake@redhat.com> + + Remove -lcoroipcc from tools/Makefile.am notifyd + Reviewed-by: Angus Salkeld <asalkeld@redhat.com> + + properly define rec_token_cq_send_event_fn + Reviewed-by: Angus Salkeld <asalkeld@redhat.com> + + Define totemiba_log_printf properly + Reviewed-by: Angus Salkeld <asalkeld@redhat.com> + + Fix problem in totemiba where incorrect define is used (and also not defined) + Reviewed-by: Angus Salkeld <asalkeld@redhat.com> + +2011-08-09 Jan Friesse <jfriesse@redhat.com> + + Allow compile master on RHEL 6 + corosync_timer_handle_t is know conditionally defined to prevent double + definition causing compile fault on RHEL 6 systems. + + Reviewed-by: Angus Salkeld <asalkeld@redhat.com> + +2011-08-09 Angus Salkeld <asalkeld@redhat.com> + + Make realtime scheduling optional not the default. + Reviewed-by: Steven Dake <sdake@redhat.com> + + Update TODOs + Reviewed-by: Steven Dake <sdake@redhat.com> + + libqb: logging & trace + Reviewed-by: Steven Dake <sdake@redhat.com> + + libqb: Add libqb dependency in the rpm & pc file + Reviewed-by: Steven Dake <sdake@redhat.com> + + Fix some compiler warnings + Reviewed-by: Steven Dake <sdake@redhat.com> + + Use PATH_MAX for file path size + Reviewed-by: Steven Dake <sdake@redhat.com> + + libqb: Improve IPC dispatch and async handling + Reviewed-by: Steven Dake <sdake@redhat.com> + + CPG: downgrade some log messages + Reviewed-by: Steven Dake <sdake@redhat.com> + + CTS: make test agent shutdown more gracefully + Reviewed-by: Steven Dake <sdake@redhat.com> + + CTS: add an audit to check for leaking shared memory + Reviewed-by: Steven Dake <sdake@redhat.com> + + CTS: get GenStopAllBeekhof working a bit better + Reviewed-by: Steven Dake <sdake@redhat.com> + + CTS: log bind() errors better + Reviewed-by: Steven Dake <sdake@redhat.com> + + CTS: log cfg results + Reviewed-by: Steven Dake <sdake@redhat.com> + + CTS: rename flatiron to needle + Reviewed-by: Steven Dake <sdake@redhat.com> + + CTS: add exit handler to test_agents + Reviewed-by: Steven Dake <sdake@redhat.com> + + CTS: add "Too many open files" to the BadNews pattern + Reviewed-by: Steven Dake <sdake@redhat.com> + + CTS: impove debug during msgSend test + Reviewed-by: Steven Dake <sdake@redhat.com> + + CTS: add logging to test agent + Reviewed-by: Steven Dake <sdake@redhat.com> + + CTS: increse wait for node to reboot + Reviewed-by: Steven Dake <sdake@redhat.com> + + CTS: support new pacemaker-cts + Reviewed-by: Steven Dake <sdake@redhat.com> + + AUGEAS: fix "tags" log field + Reviewed-by: Steven Dake <sdake@redhat.com> + + TEST: fix the print out when cpg_finalize() fails + Reviewed-by: Steven Dake <sdake@redhat.com> + + libqb: use the new cs_strerror() to print out the error message. + Reviewed-by: Steven Dake <sdake@redhat.com> + + libqb: fix iov_len in pcmk_test + Reviewed-by: Steven Dake <sdake@redhat.com> + + libqb: fix valgring warnings in mon/wd + Reviewed-by: Steven Dake <sdake@redhat.com> + + libqb: change pause_timestamp to uint64_t + Reviewed-by: Steven Dake <sdake@redhat.com> + + libqb: rip out objdb & serialize locks + Reviewed-by: Steven Dake <sdake@redhat.com> + + libqb: only init IPC on service engines that need it. + Reviewed-by: Steven Dake <sdake@redhat.com> + + libqb: remove the lib init/exit from the test service agent + Reviewed-by: Steven Dake <sdake@redhat.com> + + libqb: use the main loop to shutdown + Reviewed-by: Steven Dake <sdake@redhat.com> + + libqb: remove tsafe.c + Reviewed-by: Steven Dake <sdake@redhat.com> + + libqb: remove worker thread - keep to one thread. + Reviewed-by: Steven Dake <sdake@redhat.com> + + libqb: make timer api a wrapper around qb_loop timers. + - change timeout value to nano seconds + - fix timer handles (don't alloc on stack) + + Reviewed-by: Steven Dake <sdake@redhat.com> + + libqb: change ipc -> qb_ipc + IPC: return 0/-ENOBUFS from message handler + IPC: use the new rate_limit API to improve perf. + CPG: add send_async API & hook up flow control + IPC: Fix flow control getting stuck. + IPC: Port the remaining libs to use libqb IPC + IPC: remove libqb flowcontrol API + TEST: put cpg_dispatch() in it's own thread + IPC: cleanup ipc_glue.c name everything cs_ipcs_*() + IPC: add back statistics + IPC: remove coroipcc_ symbols from lib*.versions + IPC: init each se's IPC as it is loaded. + IPC: use the new connection_closed() event to free the context. + IPC: re-add zero copy functionality back + IPC: remove cpg_mcast_joined_async() and make it the default + -> now cpg_mcast_joined() == cpg_mcast_joined_async() + libqb: expose a libqb error converter + libqb: add missing error conversions + libqb: remove repeat try loop in lib/cpg.c + CPG: fix zero copy mcast + CPG: use newer return codes + Add ENOTCONN to qb_to_cs_error() + libqb: fix error conversion from errno to cs_error_t in confdb + libqb: change errno_to_cs to qb_to_cs_error + libqb: add a cs_strerror() to get a more meaningful message + libqb: fix some confusing error conversions. + libqb: set the timeout on recv's to -1 (wait forever) + + Reviewed-by: Steven Dake <sdake@redhat.com> + + libqb: convert coropoll calls to qb_loop calls. + Reviewed-by: Steven Dake <sdake@redhat.com> + + Add systemd unit files for corosync and corosync-notifyd + Reviewed-by: Steven Dake <sdake@redhat.com> + +2011-08-07 Florian Haas <florian.haas@linbit.com> + + corosync.conf.example: add note about host addresses in bindnetaddr + https://lists.linux-foundation.org/pipermail/openais/2011-July/016563.html + + Jan Friesse pointed out that bindnetaddr should be set to a host + address (as opposed to a network address) on hosts where multiple + NICs live on the same subnet. Add a comment to that effect to + the example configuration file. + + Reviewed-by: Steven Dake <sdake@redhat.com> + + corosync.conf.example: include comments + It's nice to say people should read the man page. It's also naive to + assume that they always do. Include comments in the example config + file itself. + + Reviewed-by: Dan Frincu <dan.frincu@1and1.ro> + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + Reviewed-by: Steven Dake <sdake@redhat.com> + + corosync.conf.example: change mcastaddr + Change suggested mcastaddr to one in the 239.255.0.0/16 + pseudo-subnet. Multicast addresses outside 239.x.x.x may be IANA + registered and can clash with other services present on the + network. Suggest an address defined as part of the multicast IPv4 + Local Scope in RFC 2365. + + Reviewed-by: Dan Frincu <dan.frincu@1and1.ro> + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + Reviewed-by: Steven Dake <sdake@redhat.com> + + corosync.conf.example: change bindnetaddr + Change the example configuration file so "bindnetaddr" has a value + that more obviously looks like a network address. So as not to have + people think they need to set an existing IP address here (and hence, + have non-identical corosync.conf files between nodes). + + Reviewed-by: Dan Frincu <dan.frincu@1and1.ro> + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + Reviewed-by: Steven Dake <sdake@redhat.com> + +2011-07-26 Jan Friesse <jfriesse@redhat.com> + + main: let poll really stop before totempg_finalize + Reviewed-by: Steven Dake <sdake@redhat.com> + + Revert "totemsrp: Remove recv_flush code" + This reverts commit 1a7b7a39f445be63c697170c1680eeca9834de39. + + Reversion is needed to remove overflow of receive buffers and dropping + messages. + +2011-07-24 MORITA Kazutaka <morita.kazutaka@lab.ntt.co.jp> + + totemsrp: fix buffer overflows for large clusters (> 100 nodes) + Reviewed-by: Steven Dake <sdake@redhat.com> + +2011-07-21 Jan Friesse <jfriesse@redhat.com> + + specfile: Install corosync-signals.conf for dbus + Reviewed-by: Steven Dake <sdake@redhat.com> + + specfile: use _datadir as var expansion not exec + Reviewed-by: Steven Dake <sdake@redhat.com> + + specfile: Correct URL and source0 + Reviewed-by: Steven Dake <sdake@redhat.com> + +2011-07-19 Tim Beale <tim.beale@alliedtelesis.co.nz> + + Add some more stats for debugging + + overload - number of times client is told to try again + + invalid_request - message contained invalid paramter, e.g. invalid size + + msg_queue_avail - messages currently available at the Totem layer + + msg-queue_reserved - messages currently reserved at the Totem layer + + Reviewed-by: Steven Dake <sdake@redhat.com> + +2011-07-18 Jan Friesse <jfriesse@redhat.com> + + rrp: Handle rollower in passive rrp properly + Reviewed-by: Steven Dake <sdake@redhat.com> + + rrp: handle rollover in active rrp properly + Reviewed-by: Steven Dake <sdake@redhat.com> + + totemconfig: Change default FAIL_TO_RECV_CONST + Previous default (50) was too low for most modern switch hardware. This + may trigger abort because the aru doesn't increase for 50 token + rotations combined with a defect in how failed to recv conditions are + handled. By increasing this tunable, the condition should no longer + trigger the errant code. + + Reviewed-by: Steven Dake <sdake@redhat.com> + +2011-07-15 Steven Dake <sdake@redhat.com> + + Correct missing poll funtions from service handler struct needed for confdb APIs + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + + Fix problem where corosync will segfault if there are gaps in recovery queue + Fixes a problem where there are gaps in the recovery queue. Example my_aru = 5, + but there are messages at 7,8. 8 = my_high_seq_received which results + in data slots taken up in new message queue. What should really happen + is these last messages should be delivered after a transitional + configuration to maintain SAFE agreement. We don't have support for + SAFE atm, so it is probably safe just to throw these messages away. Without + this change, the new message queue on a new configuraton change is out of sync. + + Tested-by: Tim Beale <tlbeale@gmail.com> + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2011-07-08 Jan Friesse <jfriesse@redhat.com> + + totemiba: free send_buf on ibv_reg_mr failure + Reviewed-by: Steven Dake <sdake@redhat.com> + +2011-07-06 Florian Haas <florian.haas@linbit.com> + + build: disable RDMA support in RPMs by default + Rather than curiously disable RDMA support by default in configure and + enable it by default in RPM builds, streamline the default + configuration to always turn RDMA support off. It can be enabled in + RPM builds with "--with rdma". + + Reviewed-by: Steven Dake <sdake@redhat.com> + + build: set RDMA related _LIBS and _CFLAGS only if building with RDMA support + Having to force {ibverbs,rdmacm}_{LIBS,CFLAGS} looks positively odd; + so this may warrant further review. However, they are definitely not + needed if building without RDMA support. + + Reviewed-by: Steven Dake <sdake@redhat.com> + + build: make RDMA support an RPM build conditional + Enable RDMA in RPM builds by default to maintain the previous behavior + (which always included --enable-rdma in the %configure invocation). + + Reviewed-by: Steven Dake <sdake@redhat.com> + + build: force LC_ALL=C correctly for dates + Failure to force "C" dates will have RPM et al. complain about invalid + dates and timestamps. + + Reviewed-by: Steven Dake <sdake@redhat.com> + +2011-07-06 Tim Beale <tim.beale@alliedtelesis.co.nz> + + Fix compile/runtime issues for _POSIX_THREAD_PROCESS_SHARED < 1 + For the case where _POSIX_THREAD_PROCESS_SHARED < 1, the code doesn't compile + for corosync v1.3.1. And when it does compile, it crashes on our system - our + version of uClibc seems to always expect a 4th arg. The man pages suggests + the 4th arg is optional, but does say: 'For greater portability it is best to + always call semctl() with four arguments', which is what this patch does. + Also removed semop as it's an unused variable. + + Reviewed-by: Steven Dake <sdake@redhat.com> + + getpwnam_r()/getgrnam_r() returns ERANGE for some systems + On our system the expected buffer length is 256. This means calls to + getpwnam_r()/getgrnam_r() return ERANGE error and corosync fails to startup. + These 2 functions return ERANGE when insufficient buffer space is supplied. + Judging by the man page for getpwnam_r, the correct way to determine the + buffersize on any given system is to use sysconf(). + + Reviewed-by: Steven Dake <sdake@redhat.com> + +2011-07-05 Jiaju Zhang <jjzhang.linux@gmail.com> + + RRP: redundant ring automatic recovery + This patch automatically recovers redundant ring failures. + + Please note that this patch introduced rrp_autorecovery_check_timeout + in totem config hence breaks internal ABI. The internal ABI users + of totem.h need to rebuild their binaries. + + Tested-by: Jan Friesse <jfriesse@redhat.com> + Tested-by: Florian Haas <florian.haas@linbit.com> + Tested-by: Jiaju Zhang <jjzhang@suse.de> + +2011-07-04 Tim Serong <tserong@novell.com> + + Correct mailing list address in corosync_overview manpage + Reviewed-by: Steven Dake <sdake@redhat.com> + +2011-06-29 Masatake YAMATO <yamato@redhat.com> + + fix typos in cpg_mcast_joined.3 and cpg_zcb_mcast_joined.3 + +2011-06-29 Steven Dake <sdake@redhat.com> + + Add coverity target to corosync makefile.am + Allow a make coverity target for those developers with coverity tools + available to them. + + Reviewed-by: Angus Salkeld <asalkeld@redhat.com> + +2011-06-29 Jan Friesse <jfriesse@redhat.com> + + coroipcc: Test _SC_PAGESIZE result + Reviewed-by: Steven Dake <sdake@redhat.com> + + Remove spinlocks + Spinlocks are now removed, because even spinlock can improve + speed is some special cases, in most cases it makes corosync CPU usage + much more intensive and less responsive then if only mutexes are used. + + What we were doing is: + pthread_mutex_lock + pthread_spin_lock + pthread_spin_unlock + pthread_mutex_unlock + + what is not safe. + + Reviewed-by: Steven Dake <sdake@redhat.com> + + votequorum: free newly allocated node if nodeid==0 + Reviewed-by: Steven Dake <sdake@redhat.com> + +2011-06-28 Jerome Flesch <jerome.flesch@netasq.com> + + Fix usage of strerror_r()/perror() + Reviewed-by: Angus Salkeld <asalkeld@redhat.com> + +2011-06-23 Steven Dake <sdake@redhat.com> + + sched_params log message incorrect + The sched_params parameter was set before being printed. + + Reviewed-by: <sdake@redhat.com> + +2011-06-22 Jan Friesse <jfriesse@redhat.com> + + configure.ac: Align --enable-* options description + Reviewed-by: Steven Dake <sdake@redhat.com> + + configure.ac: change edefault to default + Reviewed-by: Fabio M. Di Nitto <fdinitto@redhat.com> + Reviewed-by: Steven Dake <sdake@redhat.com> + + CTS: Test for confdb dispatch deadlock + Test is disabled by default because it depends on SMP and about 2GB RAM. + It's also testing race, so test is unreliable. + + Reviewed-by: Steven Dake <sdake@redhat.com> + + confdb: Resolve dispatch deadlock + Following situation could happen: + - one thread is waiting for finish write operation (line 853), objdb is + locked + - flush (done in objdb_notify_dispatch) is called in main thread, but + this call will never appear because main thread is waiting for objdb + lock. + + In this situation deadlock appears. + + Commit solves this by: + - setting pipe to non-blocking mode + - pipe is used only as trigger for coropoll + - dispatch messages are stored in list + - main thread is processing messages from list + + Reviewed-by: Steven Dake <sdake@redhat.com> + + objdb: save copy of handles in object_find_create + Following situation could happen: + - process 1 thru confdb creates find handle + - calls find iteration once + - different process 2 deletes object pointed by process 1 iterator + - process 1 calls iteration again -> + object_find_instance->find_child_list is invalid pointer + + -> segfault + + Now object_find_create creates array of matching object handlers and + object_find_next uses that array together with check for name. This + prevents situation where between steps 2 and 3 new object is created + with different name but sadly with same handle. + + Also good to note that this patch is more or less quick hack rather + then proper solution. Real proper solution is to not use pointers + and rather use handles everywhere. This is big TODO. + + Reviewed-by: Steven Dake <sdake@redhat.com> + +2011-06-17 Jiaju Zhang <jjzhang.linux@gmail.com> + + RRP: Fix ring initialization issue for UDPU mode + Redundant ring has some problem in the UDP unicast mode. The problem + is the second ring has not been successfully initialized, that is, the + second time iface_changes happens, the member list for that interface + has not been added, which results in that ring cannot transmit normal + message. So the second ring cannot take over the work if the first + ring is down. This patch fixes this issue. + + comments from review: + More work is needed probably in totemnet where totemnet maintains the + the of node list and an iterator for them, and totemudpu_member_add adds + state information to a context for the iteration. + + In any regard, that is somewhat difficult to test, so I'll merge this + patch for now - keep in mind interface changes on the bindnetaddr will + cause problems with udpu after this patch has been commmitted. + + Reviewed-by: Steven Dake <sdake@redhat.com> + +2011-06-10 Jan Friesse <jfriesse@redhat.com> + + coroipcc: check recvmsg result in socket_recv + According specification recvmsg can return 0, which means that + connection is closed. We had this check, but limited only for systems + other then Linux. recvmsg can return 0 even on Linux, so check is now + applied on all systems. + + Reviewed-by: Angus Salkeld <asalkeld@redhat.com> + + confdb: Properly check result of object_find_create + in confdb_object_iter result of object_find_create is now properly + checked. object_find_create can return -1 if object doesn't exists. + Without this check, incorrect handle (memory garbage) was directly + passed to object_find_next. + + Reviewed-by: Angus Salkeld <asalkeld@redhat.com> + + crypto: rng_make_prng prevent buf overflow + with bits set to 1023, buf of 256 bytes was filled by rng_get_bytes + up to 257 bytes. Buf is now 258 bytes so it's no longer problem. + + Reviewed-by: Steven Dake <sdake@redhat.com> + +2011-06-06 Jan Friesse <jfriesse@redhat.com> + + mainconfig: Check retval of logsys_format_set + Reviewed-by: Steven Dake <sdake@redhat.com> + +2011-06-03 Jan Friesse <jfriesse@redhat.com> + + testcpgzc: fgets buffer to really allocated size + Reviewed-by: Steven Dake <sdake@redhat.com> + + cpg: do_proc_join change list_slice to list_add + In this concrete case result is equivalent but makes coverity happy. + + Reviewed-by: Steven Dake <sdake@redhat.com> + + totemudp: memset of proper size + In totemudp_mcast_thread_state_constructor memset to + sizeof(struct totemudp_mcast_thread_state) instead of size of + pointer. + + Reviewed-by: Steven Dake <sdake@redhat.com> + + coroipcs: init buf in coroipcs_handler_dispatch + Reviewed-by: Steven Dake <sdake@redhat.com> + + coroparse: don't leak dirent + Reviewed-by: Steven Dake <sdake@redhat.com> + + logsys: _logsys_wthread_create never returns != 0 + Reviewed-by: Steven Dake <sdake@redhat.com> + + notifyd: Check retval of corosync_cfg_initialize + Reviewed-by: Steven Dake <sdake@redhat.com> + + totemconfig: discard check of objdb_get_string ret + Reviewed-by: Steven Dake <sdake@redhat.com> + + coroipcc: proper path size in coroipcc_zcb_alloc + memory_map function internally limits maximum path size to + PATH_MAX but coroipcc_zcb_alloc passed smaller buffer. + + Reviewed-by: Steven Dake <sdake@redhat.com> + + libquorum: memset/memcpy proper size of callbacks + Reviewed-by: Steven Dake <sdake@redhat.com> + +2011-05-30 Jan Friesse <jfriesse@redhat.com> + + iazc: Reduce number of mem alloc and memcpy + X86 processors are able to handle unaligned memory access. Improve + performance by using that feature on i386 and x86_64 compatible + processors, and use old aligning code on different processors. + + Reviewed-by: Steven Dake <sdake@redhat.com> + +2011-05-27 Jerome Flesch <jerome.flesch@netasq.com> + + logsys: When corosync is compiled with --enable-small-memory-footprint, also reduce the size of the logsys SHM + Reviewed-by: Steven Dake <sdake@redhat.com> + + coroipcc_dispatch_get(): Fix --enable-small-memory-footprint support + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + + coroipcs_handler_dispatch(): Fix conn_info->service security value: -1 is not a good security value since it's equal to SOCKET_SERVICE_INIT + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + + coroipcc: Fix unhandled BSD EOF in coroipcc_dispatch_get() + Reviewed-by: Steven Dake <sdake@redhat.com> + + Corosync: Fix build when done with --enable-fatal-warnings + Reviewed-by: Jan Friesse<jfriesse@redhat.com> + +2011-05-08 Russell Bryant <russell@russellbryant.net> + + logsys.c: Use snprintf() instead of sprintf(). + Change a couple of string functions to use the the output length + limiting counterpart. + +2011-05-13 Jan Friesse <jfriesse@redhat.com> + + corosync-objctl: Option to display binary data + Reviewed-by: Steven Dake <sdake@redhat.com> + +2011-05-05 Angus Salkeld <asalkeld@redhat.com> + + cpg: fix sync master selection when one node paused. + If one node is paused it can miss a config change and + thus report a larger old_members than expected. + + The solution is to use the left_nodes field. + + Master selection used to be "choose node with": + 1) largest previous membership + 2) (then as a tie-breaker) node with smallest nodeid + + New selection: + 1) largest (previous #nodes - #nodes know to have left) + 2) (then as a tie-breaker) node with smallest nodeid + + CTS: fix some tests that didn't handle been called more than one + + CTS: sort the configuration - prevent duplicates in the config file + + CTS: fix syntax error in log message + + CTS: bump up log messages of failed RPC + + CTS: don't force all-once (breaks random tests) + + autobuild: improve messages + + CTS: add -l to keygen (normal keygen struggles to run on VMs) + + CTS: send with correct number of iovecs + Else payload won't be sent + + CTS: timer should not be on the stack + +2011-05-05 Jan Friesse <jfriesse@redhat.com> + + totemsrp: Enhance mcast failure detection + memb_state_gather_enter increase stats.continuous_gather only if + previous state was gather also. This should happen only if multicast is + not working properly (local firewall in most cases) and not if many + nodes joins at one time. + + Reviewed-by: Angus Salkeld <asalkeld@redhat.com> + +2011-04-15 Jan Friesse <jfriesse@redhat.com> + + coroipcs: Deny connect to service without initfn + If library connect to service with no init function, coroipcs will try + to dereference NULL pointer. Now we correctly return error code + CS_ERR_NOT_EXIST. + + Reviewed-by: Steven Dake <sdake@redhat.com> + +2011-04-15 Tim Serong <tserong@novell.com> + + Add ipc_refcnt to message_handler_req_{exec, lib}_cfg_ringreenable() + Without refcounting the conn pointer here, corosync will segfault + if one kills a running instance of "corosync-cfgtool -r" (rhbz#695191) + + Reviewed-by: Steven Dake <sdake@redhat.com> + +2011-04-15 Steven Dake <sdake@redhat.com> + + Align ipc on 8 byte boundaries + Align all ipc messages on 8 byte boundaries. This alignment will remove bus + errors on systems that can't access non-byte aligned data and should improve + performance. + + Reviewed-by: Angus Salkeld <asalkeld@redhat.com> + + Fix problem where unaligned totemip address access would result in bus error on non-unaligned-safe architectures. + Reviewed-by: Angus Salkeld <asalkeld@redhat.com> + +2011-04-15 Greg Walton <corosync@gwalton.net> + + Clean up ENDIAN ifdef tests + Reviewed-by: Steven Dake <sdake@redhat.com> + +2011-04-11 Tim Serong <tserong@novell.com> + + Fix tyop in RRP faulty error messages + Reviewed-by: Russell Bryant <russell@russellbryant.net> + +2011-04-13 Angus Salkeld <asalkeld@redhat.com> + + IPC: place calls to stats functions outside of mutexes + This is to prevent nasty deadlocks between IPC and objdb. + + Reviewed-by: Steven Dake <sdake@redhat.com> + +2011-04-12 Zane Bitter <zane.bitter@gmail.com> + + Provide better checking of the message type + A negative value for the message type (on systems where char is signed) + would cause a crash. This is highly probable if the cluster is, for example, + misconfigured to have encryption enabled on some nodes but not others. + + Reviewed-by: Steven Dake <sdake@redhat.com> + +2011-04-08 Zane Bitter <zane.bitter@gmail.com> + + Fix uninitialised memory errors found by valgrind + Reviewed-by: Steven Dake <sdake@redhat.com> + +2011-03-29 Angus Salkeld <asalkeld@redhat.com> + + Fix shutdown when a confdb client is still connected + If you are connected to corosync and registered for + object notifications then corosync is asked to shutdown + the IPC server will get stuck. This is because the pipe + is closed and the refcount is increased. This leaves ipcs + with a connection that it can't destroy. + + Solution: + 1) if a write to the pipe fails (pipe closed) decrement the refcounter. + 2) fix the object_track_stop() - it was not working as the functions + did not match up. (this caused the late callbacks). + 3) in ipcs call exit_fn() then stats_destroy_connection() so that + the service engine can have time to call object_track_stop() + before the object gets destroyed. + + Reviewed-by: Steven Dake <sdake@redhat.com> + + STATS: add the service name to the connection name. + This helps to quickly identify what service the application + is connected to. + + The object will now look like: + runtime.connections.corosync-objctl:CONFDB:19654:13.service_id=11 + runtime.connections.corosync-objctl:CONFDB:19654:13.client_pid=19654 + etc... + + This also makes it clearer to receivers of the dbus/snmp events + what is going on. + + Reviewed-by: Steven Dake <sdake@redhat.com> + + NOTIFYD: prevent duplicate quorate events. + Reviewed-by: Steven Dake <sdake@redhat.com> + + NOTIFYD: fix retrieving the application's parent name. + Reviewed-by: Steven Dake <sdake@redhat.com> + +2011-03-24 Jan Friesse <jfriesse@redhat.com> + + cfgtool: print list of IP with space between items + Reviewed-by: Steven Dake <sdake@redhat.com> + + cpgtool: print list of IP with space between items + Reviewed-by: Steven Dake <sdake@redhat.com> + + cfg_get_node_addrs: Return correct addresses + Zero element array behavior is very different from normal array or + pointer. This behavior is root of problem in not returning correctly + filled array of addresses. This appeared only in rrp mode, where more + then one address is returned. + + All memcpy's are now correctly converted to copy pointer to char. + + Reviewed-by: Steven Dake <sdake@redhat.com> + +2011-03-24 Steven Dake <sdake@redhat.com> + + totemsrp: free messages originated in recovery rather then rely on messages_free + Relying on messages_free may seem like it should work, but it leads to a + situation where every node has released the messages, yet some nodes think + messages are missing. The output then looks like "Retransmit: #" in + repitition. This patch frees those messages immediately during the transition + to the OPERATIONAL state and sets the internal variables totemsrp depends + upon to the proper values. + + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + + totemsrp: Only restore old ring id information one time + The current code stores the current ring information every time a commit + token is generated. This causes the old ring id used for comparison purposes + to increase if a token is lost in commit or recovery, resulting in failure of + totem. This patch changes the behavior to only store the old ring id one + time when the commit token is received, and then further commit token ring + id saves are not done until OPERATIONAL is reached. + + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + + totemsrp: Remove recv_flush code + The recv_flush code is no longer necessary because of the miss_count_count + addition. It can in some cases lead to register corruption because of + interactions with -fstack-protector, the recursive nature of how this code + works, and interactions with the optimizer in some versions of gcc. + + Reviewed-by: Jan Friesse <jfriesse@redhat.com> + +2011-03-23 Angus Salkeld <asalkeld@redhat.com> + + confdb: send notifications from the main thread not IPC thread + corosync-notifyd has exposed an issue with confdb notifications. + + The normal state of affairs is: + IPC thread > lock > objdb > lock + + objdb notification whilst really useful turn things around: + <middle of big call chain> + objdb > lock > confdb > ipc > lock + + This reverse ordering of locks causes a horrible dead lock. + + I see this patch as a work around until corosync-2.0 + when most of the threads and locking disappear. + + This patch adds a pipe to confdb service. When we get a + objdb notification a struct gets written to the pipe. + The poll loop then runs the dispatch in the main thread. + In the dispatch we call the real ipc_dispatch_send(). + + Reviewed-by: Steven Dake <sdake@redhat.com> + +2011-03-21 Steven Dake <sdake@redhat.com> + + Resolve abort during simulatenous stopping of atleast 4 nodes + consider 5 nodes. + + node 3,4 stopped (by random stopping) node 1,2,5 form new configuration + and during recovery node 1 and node 2 are stopped (via service service + corosync stop). This causes 5 never to finish recovery within the timeout + period, triggering a token loss in recovery. Bug #623176 resolved an assert + which happens because the full ring id was being restored. The resolution + to Bug #623176 was to not restore the full ring id, and instead operate + (according to specifications) the new ring id. Unfortunately this exposes + a problem whereby the restarting of nodes 1-4 generate the same ring id. + This ring id gets to the recovery failed node 5 which is now in gather, + and triggers a condition not accounted for in the original totem specification. + + It appears later work from Dr. Agarwal's PHD dissertation considers this + scenario. That solution entails rejecting the regular token in the above + condition. Since the ring id is also used to make decisions for commit token + acceptance, we must also take care to reject the regular token in all cases + after transitioning from OPERATIONAL. + + Reviewed-by: Steven Dake <sdake@redhat.com> + +2011-03-21 Angus Salkeld <asalkeld@redhat.com> + + notifyd: dispatch only one message at a time. + This is avoid getting stuck in the dispatch processing + messages when the user is trying to shutdown the service. + + Reviewed-by: Steven Dake <sdake@redhat.com> + +2011-03-15 Angus Salkeld <asalkeld@redhat.com> + + Fix some "set but not used" warnings [-Wunused-but-set-variable] + Reviewed-by: Steven Dake <sdake@redhat.com> + + Remove the ttl option from udpu and rely on the kernel ttl setting. + Reviewed-by: Fabio M. Di Nitto <fdinitto@redhat.com> + + Fix the ttl defaults and range + 1) both IPv4 and IPv6 mcast should default to ttl=1 + 2) the range should be 0..255 + 0 is valid meaning localhost only (cluster of one) + + Reviewed-by: Fabio M. Di Nitto <fdinitto@redhat.com> + +2011-03-15 Russell Bryant <russell@russellbryant.net> + + Add Doxyfile to .gitignore + Reviewed-by: Angus Salkeld <asalkeld@redhat.com> + +2011-03-12 Angus Salkeld <asalkeld@redhat.com> + + docs: auto-generate the version + Reviewed-by: Steven Dake <sdake@redhat.com> + +2011-03-12 Russell Bryant <russell@russellbryant.net> + + Convert existing documentation to doxygen format. + This patch modifies most of the existing comments in header files to be + in a format that doxygen can interpret. This provides another + significant improvement to the web/pdf/etc generated documentation + without having to add new content. + + Reviewed-by: Angus Salkeld <asalkeld@redhat.com> + +2011-03-12 Zane Bitter <zane.bitter@gmail.com> + + Allocate packet buffers in the transport drivers + This change paves the way for eliminating a copy within the Infiniband + driver in the future by transferring responsibility for allocating and + freeing message buffers to the transport driver layer. + + Tested under valgrind on a single-node cluster. + + Reviewed-by: Steven Dake <sdake@redhat.com> + +2011-03-10 Zane Bitter <zane.bitter@gmail.com> + + Fix minor errors in man page documentation for corosync.conf + * Correct 'See Also' reference to corosync.conf(5) in corosync(8) man page + * Update path to default config (now /etc/corosync/corosync.conf) + + Reviewed-by: Steven Dake <sdake@redhat.com> + +2011-03-08 Steven Dake <sdake@redhat.com> + + Fix abort when token is lost in RECOVERY state + A commit token should be rejected when a token is lost in the recovery + state. This occurs naturally because the ring id increases by 4 for + every new ring. Prior to this patch, if the token was lost, the old + ring id information was restored, causing a commit token to be accepted + when it should be rejected. This erronously accepted commit token would + lead to an assertion which is fixed by this patch. + + Reviewed-by: Angus Salkeld <asalkeld@redhat.com> + +2011-03-07 Russell Bryant <russell@russellbryant.net> + + Add content for the doxygen main page. + This creates some content on the main page of the documentation + generated by doxygen. The main page includes the license and a link + to the project web site. + + eviewed-by: Steven Dake <sdake@redhat.com> + + Resolve a couple of doxygen warnings. + This resolves a couple of doxygen warnings. First, the group needed a + name. Second, all of the functions in the file were added to the group + but doxygen complained about the lack of an end to the grouping. + + Reviewed-by: Steven Dake <sdake@redhat.com> + + Update doxygen configuration file. + The included doxygen configuration file was a bit stale. It included + some options that were obsolete and caused doxygen to generate some + warnings when running it. Most of the changes here were simply done by + running "doxygen -u" to automatically update the file. It added its + documentation for the options and removed the obsolete options. + + This also includes one configuration change, which is to set EXTRACT_ALL + to yes. This instructs doxygen to generate documentation pages for all + files, public functions, and public data structures even if they are not + currently documented using doxygen syntax. Doxygen is capable of + generating some useful documentation on its own, such as dependency + graphs. + + Reviewed-by: Steven Dake <sdake@redhat.com> + + Minor build system updates for doxygen. + The configure script has been updated to check for the doxygen and dot + applications (from doxygen and graphviz). The results from these checks + are now used in the Makefile to ensure that the tools are installed when + you run "make doxygen". If they are not, it will generate a helpful + error message. + + Reviewed-by: Steven Dake <sdake@redhat.com> + + Ensure that strings are null terminated after strncpy(). + From the strcpy(3) man page, the following warning is given: + The strncpy() function is similar, except that at most n bytes of src + are copied. Warning: If there is no null byte among the first n bytes + of src, the string placed in dest will not be null-terminated. + + The current corosync code base does not take this warning into account + when using strncpy, potentially resulting in non-null terminated strings. + + Reviewed-by: Steven Dake <sdake@redhat.com> + +2011-03-05 Russell Bryant <russell@russellbryant.net> + + Add -l option to corosync-keygen. + This option (-l or --less-secure) causes corosync-keygen to read from + /dev/urandom instead of /dev/random to ensure that no input is required + from the user. It may be useful when this command is used from a + script. + + Reviewed-by: Steven Dake <sdake@redhat.com> + +2011-02-24 Steven Dake <sdake@redhat.com> + + Don't assert when ring id file is less then 8 bytes + If the ring id file for the processor is less then 8 bytes, totemsrp would + assert. Our speculation is that this condition happens during a fencing + operation or local filesystem corruption. + + With this patch, Corosync will create fresh ring id file data when the + incorrect number of bytes are read from the ring id. + + Amend to use sizeof the strerror string length and PATH_MAX for the path length. + + Reviewed-by: Angus Salkeld <asalkeld@redhat.com> + + snmp: Allow buildling of corosync on already existing older install of corosync + When building corosync against older libraries already installed on the system, + the corosync-notifyd application uses the wrong Makefile.am commands. This + results in the SNMPLIBS (which includes -L/usr/lib64) coming before the proper + LDADD flags. The result is an inability to compile on an already existing + installation. + + Reviewed-by: Angus Salkeld <asalkeld@redhat.com> + +2011-02-24 Jan Friesse <jfriesse@redhat.com> + + objdb: destroy all handles in _clear_object + Patch replaces free for object_instance with handle_destroy to remove + leaks in handles (and also memory leak). + + Reviewed-by: Steven Dake <sdake@redhat.com> + +2011-02-23 Jan Friesse <jfriesse@redhat.com> + + Iterate all items in object_reload_notification + Reviewed-by: Steven Dake <sdake@redhat.com> + + corosync-fplay: use uint32_t and remove bit-shift + The flight recorder records all data in 32 bit words. Use uint32_t type + rather then unsigned int. Also remove bit-shift with multiply by sizeof + uint32_t. + + Reviewed-by: Steven Dake <sdake@redhat.com> + + corosync-fplay: Use size_t length mod in printf + Reviewed-by: Steven Dake <sdake@redhat.com> + +2011-02-22 Jan Friesse <jfriesse@redhat.com> + + corosync-fplay: handle too large rec_size + Corrupted files may contain items with rec_size larger then g_record + buffer and/or flt_data_size. + + Also g_record array size is now defined as constant. + + Reviewed-by: Steven Dake <sdake@redhat.com> + + logsys: Properly lock flt data before dump + Data needs to be locked, otherwise resulting fdata file may be + incorrect. + + Reviewed-by: Steven Dake <sdake@redhat.com> + + logsys: Don't leak fd on successful fdata dump + Reviewed-by: Steven Dake <sdake@redhat.com> + +2011-02-21 Russell Bryant <russell@russellbryant.net> + + Add calls to pthread_attr_destroy(). + This patch adds a couple of missing calls to pthread_attr_destroy(). + + There were a couple of instances where pthread_attr_init() was being + used without a cooresponding call to pthread_attr_destroy(). This also + localizes the pthread_attr_t to the function where it is needed instead + of having it persist (the man page specifically states that destroying + the attributes structure has no effect on threads created using the + attributes). + + Reviewed-by: Steven Dake <sdake@redhat.com> + +2011-02-14 Angus Salkeld <asalkeld@redhat.com> + + CTS: wait (consistently) for 15 minutes for events + +2011-02-13 Angus Salkeld <asalkeld@redhat.com> + + autobuild: clean the build dir first. + This deletes files like .version that cause problems. + +2011-02-11 Angus Salkeld <asalkeld@redhat.com> + + CTS: temp remove troublesome tests. + Right I know - not so good to comment out tests. + BUT they are passing but there is some weirdness + in ssh reconnecting to these nodes that causes CTS false + negatives. + So the nodes are watchdogged (as expected) but when they come + back up cts gets stuck in a loop re-trying to ssh into + them. It odd as a manual ssh works fine. + + Basically I think it's more important the we get reliable + testing than have these test in there. + + Reviewed-by: Steven Dake <sdake@redhat.com> + +2011-02-07 Angus Salkeld <asalkeld@redhat.com> + + Make node state a string (not an integer) + Ryan noticed this inconsistency, all other status's + are string so this should be too. + + Reviewed-by: Seven Dake <sdake@redhat.com> + Reviewed-by: Ryan O'Hara <rohara@redhat.com> + + CONFDB: fix parent_get response id + Reviewed-by: Seven Dake <sdake@redhat.com> + +2011-02-04 Angus Salkeld <asalkeld@redhat.com> + + MIB: expand the descriptions of the notifications + Reviewed-by: Steven Dake <sdake@redhat.com> + +2011-02-04 Lon Hohberger <lhh@redhat.com> + + Match up MIB to notifyd & add SNMP quorum events + Reviewed-by: Angus Salkeld <asalkeld@redhat.com> + + Make SNMP MIB match what is being sent over DBUS + Reviewed-by: Angus Salkeld <asalkeld@redhat.com> + +2011-02-04 Angus Salkeld <asalkeld@redhat.com> + + Add dbus and snmp notifier + This is to send dbus events on major cluster events: + - membership changes + - application connect/dissconnet from corosync + - quorum changes + + dbus events can then be converted into snmp traps by foghorn or + corosync-notifyd can be run to directly send snmp traps. + + Reviewed-by: Steven Dake <sdake@redhat.com> + Reviewed-by: Russell Bryant <russell@russellbryant.net> + Reviewed-by: Fabio M. Di Nitto <fdinitto@redhat.com> + + CONFDB: add confdb_object_name_get() + This is useful when tracking object changes. + + Reviewed-by: Seven Dake <sdake@redhat.com> + + STATS: fix key name length on "join_count" + Reviewed-by: Seven Dake <sdake@redhat.com> + + STATS: increase the space for application names + Reviewed-by: Seven Dake <sdake@redhat.com> + +2011-01-31 Jan Friesse <jfriesse@redhat.com> + + Handle "nocluster" kernel parameter in init script + Init script checks kernel parameters and refuses to start corosync if + nocluster parameter exist on boot time. The init script will + continue to work as expected from console/tty after boot. + + Reviewed-by: Steven Dake <sdake@redhat.com> + +2011-01-12 Jan Friesse <jfriesse@redhat.com> + + Add objdb firewall_enabled_or_nic_failure + New objdb var runtime.totem.pg.mrp.srp.firewall_enabled_or_nic_failure + is set to 1 if continuous_gather is larger then MAX_NO_CONT_GATHER. + Under normal conditions, value of variable is 0. + + Reviewed-by: Steven Dake <sdake@redhat.com> + +2011-01-11 Angus Salkeld <asalkeld@redhat.com> + + Add missing entries into .gitignore + Reviewed-by: Steven Dake <sdake@redhat.com> + + remove unused function declaration + Reviewed-by: Steven Dake <sdake@redhat.com> + + fix timersub warning on freebsd + Make them all protected by #ifndef timersub + + Reviewed-by: Steven Dake <sdake@redhat.com> + +2011-01-11 Steven Dake <sdake@redhat.com> + + Handle delayed multicast packets that occur with switches + Some switches delay multicast packets vs the unicast token. This patch works + around that problem by providing a new tuneable called miss_count_const. This + tuneable works by counting the number of times a message is found missing + and once reaching the const value, marks it as missing in the retransmit list. + + This improves performance and doesn't display warning messages about missed + multicast messages when operating in these switching environments. + + Reviewed-by: Angus Salkeld <asalkeld@redhat.com> + +2011-01-03 Angus Salkeld <asalkeld@redhat.com> + + CPG: make sure coroipcc_service_disconnect() is always called. + This prevents a shared mem leak if corosync dies while clients + are connected. + + Calling cpg_finalize() did not release the shared mem as + coroipcc_msg_send_reply_receive() returned an error and + thus coroipcc_service_disconnect() did not get called. + + Reviewed-by: Steven Dake <sdake@redhat.com> + + IPC: send failure message to client if memory maps fail + Reviewed-by: Steven Dake <sdake@redhat.com> + +2010-12-03 Jan Friesse <jfriesse@redhat.com> + + Display warning when not possible to form cluster + This may typically happen if local firewall is enabled. Patch adds new + item to statistics called continuous_gather where is number of + continuous entered gather state. If this number is bigger then + MAX_NO_CONT_GATHER, warning message is displayed. This is also used on + exiting, so stop of corosync is now possible even with enabled firewall. + + Reviewed-by: Steven Dake <sdake@redhat.com> + +2010-12-01 Fabio M. Di Nitto <fdinitto@redhat.com> + + build: fix make srpm from release tarball + Reviewed-by: Steven Dake <sdake@redhat.com> + + build: fix rpm build to include corosync-blackbox + Reviewed-by: Steven Dake <sdake@redhat.com> + +2010-12-01 Steven Dake <sdake@redhat.com> + + Revert "Always autogen the tree when building an RPM" + This reverts commit d145838a21fb636461a2bceeada34db439f4a9ec. + + Always autogen the tree when building an RPM + Since the source tarball never includes the autogen'ed tree in the new source + repo methodology, always autogen the tree. + + Set the max buffer size for sockets + Set the recv buffer to a large size and the send buffer to a large size to + allow the kernel to store more messages before dropping messages. + + Amended to change optlen type to socklen_t + + Reviewed-by: Fabio M. Di Nitto <fdinitto@redhat.com> + +2010-11-28 Steven Dake <sdake@redhat.com> + + The flushing code was introducing data corruption because of recursion errors that occur as a result of the design of udpu. Totem no longer requires the flushing technique because we don't mark a packet as missing until it has not been seen by a certain number of token rotations per a previous patch. This mechanism was introduced to work around a problem in switches where multicast messages may be delayed by long periods compared to the unicast token. + This patch removes the flushing logic from udpu since it is no longer necessary. + + Reviewed-by: Angus Salkeld <asalkeld@redhat.com> + +2010-11-24 Angus Salkeld <asalkeld@redhat.com> + + Add totem/interface/ttl config option. + This adds a per-interface config option to + adjust the TTL. + + Reviewed-by: Steven Dake <sdake@redhat.com> + +2010-11-19 Fabio M. Di Nitto <fdinitto@redhat.com> + + build: fix makefile to ship corosync.conf.example.udpu + Reviewed-by Angus Salkeld <asalkeld@redhat.com> + +2010-11-18 Steven Dake <sdake@redhat.com> + + Merge branch 'topic-udpu' + Conflicts: + Makefile.am + + Remove dead soresueaddr code + Reviewed-by: Angus Salkeld <asalkeld@redhat.com> + + Add the UDPU transport + The UDPU transport is useful for those deployments which can't use multicast. + UDPU works by using UDP unicast, which is fully supported by every switch + manufacturer by default and doesn't rely on a functional IGMP implementation. + + An example of the UDPU transport is contained in the corosync.conf.example.udpu + file which shows a 16 node cluster. This file should be copied to each node + in the cluster and IP addresses changed as appropriate. + + Amended to remove dead udpu REUSEADDR socket option. + +2010-11-10 Fabio M. Di Nitto <fdinitto@redhat.com> + + build: fix spec file and srpm/rpm generation + Reviewed-by: Steven Dake <sdake@redhat.com> + + add release script and git based versioning + Reviewed-by: Steven Dake <sdake@redhat.com> + +2010-11-10 Steven Dake <sdake@redhat.com> + + Merge branch 'master', remote branch 'origin/master' + + Add license information to LICENSE file about build process files + A few files licensed under GPLv3+ produce text output but are not used as + part of the runtime or libraries provided by Corosync. Make that notification + in the LICENSE file. + + Reviewed-by: Fabio Di Nitto <fdinitto@redhat.com> + +2010-10-22 Angus Salkeld <asalkeld@redhat.com> + + Add -i <num-iterations> to cpgverify + Reviewed-by: Steven Dake <sdake@redhat.com> + +2010-10-22 Steven Dake <sdake@redhat.com> + + New topic descriptions based upon work community wants to do + This file describes the topics of interest for development, their start and + finish date, their main developer, and a description of the topic. + + Reviewed-by: Angus Salkeld <asalkeld@redhat.com> + +2010-10-21 Angus Salkeld <asalkeld@redhat.com> + + Add .gitignore files. + Otherwise "git status" is a pain. + + Reviewed-by: Steven Dake <sdake@edhat.com> + +2010-10-21 Steven Dake <sdake@redhat.com> + + Add -n option to corosync-objctl to create a new object/key combo + Find an existing parent object and add the last object/key name of the command + to the object database. This allows the runtime addition of ip addresses to + the list of IPs corosync knows about for the purpose of the UDPU transport mode. + + Reviewed-by: Angus Salkeld <asalkeld@redhat.com> + +2010-10-12 Jan Friesse <jfriesse@redhat.com> + + Remove delay in library on corosync shutdown + Patch removes 2 seconds delay in library on normal corosync shutdown. + Delay is still present on abnormal shutdown. + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@3059 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2010-09-29 Angus Salkeld <asalkeld@redhat.com> + + autobuild: fix the continous build + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@3058 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2010-09-28 Angus Salkeld <asalkeld@redhat.com> + + Check for a properly configured multicast address. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@3057 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2010-09-27 Angus Salkeld <asalkeld@redhat.com> + + CTS: add sam/wd integration tests. + - fix send_dynamic() exception + - fix basic sam integration test + - fixup calls to sam tests + - fix startup when using testquorum (currently only handles votequorum) + - improve SAM test case with better checking. + + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@3056 fd59a12c-fef9-0310-b244-a6a79926bd2f + + AUG: add support for resources section & quorum/quorate + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@3055 fd59a12c-fef9-0310-b244-a6a79926bd2f + + WD/SAM integration. + - timestamps -> uint64_t and in nanosecs + - use clock_gettime + - common object naming + - common state names + - timeouts in milliseconds + + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@3054 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Add monitoring and watchdog services. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@3053 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Add a Finite State Machine.(fsm.h) + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@3052 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Add a Finite State Machine. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@3051 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2010-09-27 Jan Friesse <jfriesse@redhat.com> + + SAM Confdb integration + Patch add support for Confdb integration with SAM. It's now possible to + use SAM_RECOVERY_POLICY_CONFDB as flag to previous policies. + + Also new function sam_mark_failed is added for ability to use RECOVERY + policy together with confdb and get expected results (specially with + integration with corosync watchdog) + + Patch also makes SAM thread safe. + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@3050 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2010-09-25 Angus Salkeld <asalkeld@redhat.com> + + configure: cleanup formatting. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@3049 fd59a12c-fef9-0310-b244-a6a79926bd2f + + objdb: fix some ugly indentation. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@3048 fd59a12c-fef9-0310-b244-a6a79926bd2f + + objdb: delete trackers when an object is deleted + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@3047 fd59a12c-fef9-0310-b244-a6a79926bd2f + + objdb: object_created_notification() fix the order of the parent and object handles. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@3046 fd59a12c-fef9-0310-b244-a6a79926bd2f + + objdb: fix some strange types (uint8_t* -> void*). + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@3045 fd59a12c-fef9-0310-b244-a6a79926bd2f + + add float and double support to corosync-objctl + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@3044 fd59a12c-fef9-0310-b244-a6a79926bd2f + + CPG: remove irratating log "downlist received left_list:" + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@3043 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2010-09-14 Steven Dake <sdake@redhat.com> + + Patch from Kacper Kowalik to support honoring user defined LDFLAGS. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@3042 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Patch from Kacper Kowalik to add support for --enable-user-flags configure option. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@3041 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2010-09-03 Steven Dake <sdake@redhat.com> + + change shutdown priority to 80 in generic.in. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@3039 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Patch from Keisuke Mori to add proper dependeny on syslog to corosync init script. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@3038 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2010-08-31 Steven Dake <sdake@redhat.com> + + Fix few xopen tsafe issues. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@3037 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Bump version to 1.2.8. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@3034 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Build properly with different versions of libc by including all posix APIs in header definitions. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@3030 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2010-08-25 Angus Salkeld <asalkeld@redhat.com> + + IPC: return CS_ERR_NO_RESOURCES to library when low on fds. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@3029 fd59a12c-fef9-0310-b244-a6a79926bd2f + + POLL: gracefully handle running out of file descriptors. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@3028 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2010-08-24 Steven Dake <sdake@redhat.com> + + Remove checking of sub parameters in service.d files. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@3024 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2010-08-17 Steven Dake <sdake@redhat.com> + + Properly detect shutdown of corosync process + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@3022 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2010-08-03 Steven Dake <sdake@redhat.com> + + Remove cancel token retransmit timeout. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@3012 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2010-08-02 Jan Friesse <jfriesse@redhat.com> + + Check that Corosync was not runned by cman + Patch fixes init script so it's tested, if corosync was runned + by cman or not. If so, it refuses to stop Corosync. + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@3011 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Allow running only one instance of Corosync + Patch makes Corosync more compliant with common practices + for writing daemon. It creates pid file (usually + /var/run/corosync.pid) and flocks it. So only one instance + of Corosync can be executed now. + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@3010 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2010-07-27 Steven Dake <sdake@redhat.com> + + Change trunk version to 1.2.7. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@3007 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Remove consensus check for two node cluster cases which can have smaller consensus values. Document in man page the behavior of consensus. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@3005 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2010-07-21 Steven Dake <sdake@redhat.com> + + Fix merge error with revision 3001. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@3002 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Fix problem where flow control could lock up ipc under very heavy load in very rare circumstances. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@3001 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2010-07-19 Fabio M. Di Nitto <fdinitto@redhat.com> + + Fix logging_daemon config parser code. + Resolves: rhbz#615203 + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2997 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2010-07-17 Angus Salkeld <asalkeld@redhat.com> + + SYNC: always call sync_aborted() in sync_confchg_fn(). + 1) sync_callbacks.sync_abort can be null. + 2) sync_processing is set to 0 after syncv1 is done. + Then syncv2 processing is down. If we get a config change + after syncv1 is down, but before syncv2 is done then it won't + get aborted. + + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2995 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2010-07-16 Angus Salkeld <asalkeld@redhat.com> + + CTS: add a test case for Andrew's bug + Bug: + sometimes shutdown can take a long time if all nodes + are shutdown together. + + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2994 fd59a12c-fef9-0310-b244-a6a79926bd2f + + SYNCV2: add debug when messages are discarded + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2993 fd59a12c-fef9-0310-b244-a6a79926bd2f + + SYNC: add some ENTER() trace points. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2992 fd59a12c-fef9-0310-b244-a6a79926bd2f + + SYNCV2: reset the my_memb_determine_ring_id in sync_v2_memb_list_abort() + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2991 fd59a12c-fef9-0310-b244-a6a79926bd2f + + SYNC: remove unused primary_designated from sync_primary_callback_fn() + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2990 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2010-07-14 Steven Dake <sdake@redhat.com> + + Remove reset of token timeout on retransmitted token reception. The timer should only be reset when a real token is received or membership protocol could run into problems with certain timing parameters. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2988 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2010-07-07 Steven Dake <sdake@redhat.com> + + Speed up IPC connection process. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2986 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2010-07-03 Steven Dake <sdake@redhat.com> + + Fix fail list fault that occurs in very rare circumstances. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2984 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2010-06-30 Steven Dake <sdake@redhat.com> + + Bump trunk revision to 1.2.6. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2980 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Have makefile create /var/log/cluster rather then corosync.spec file. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2979 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2010-06-30 Andrew Beekhof <abeekhof@redhat.com> + + Safely redirect stderr/in/out to /dev/null to prevent fork() from crashing + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2976 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2010-06-29 Steven Dake <sdake@redhat.com> + + Patch to fix stack protector sig abort that occurs when ipc buffer is too short. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2974 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2010-06-29 Angus Salkeld <asalkeld@redhat.com> + + ipc: Fix error handling of mmap util functions. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2972 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2010-06-29 Steven Dake <sdake@redhat.com> + + Have corosync spec file own /var/log/cluster/corosync.log have example use /var/log/cluster/cluster.log as default log file + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2970 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Fix problem where flight data leaks files in /dev/shm when corosync is restarted continuously via init scripts. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2964 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2010-06-28 Jan Friesse <jfriesse@redhat.com> + + Fix OBJDB locking + Patch fixes following situation: + + 1. objdb receives reload notification and ends in function + object_reload_config. This will call objdb_wrlock. I will call this + thread #1 + + 2. Another thread will decide to update corosync statistics and calls + object_key_increment. This calls objdb_rdlock. This thread is #2. But + because condition (lock_thread != pthread_self()) is satisfied, it will + also calls pthread_rwlock_rdlock. This will blocks, because thread #1 + holds the lock. + + 3. object_reload_config will call reload functions (as real example + xml2objdb). xml2objdb needs to calls object_create. This calls + objdb_rdlock, but will hang on pthread_mutex_lock(&meta_lock), because + this lock is held by thread #2. + + -> deadlock + + It is handled by using recursive mutex. + + Also every function is now really locked. + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2963 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2010-06-23 Jan Friesse <jfriesse@redhat.com> + + Remove pathconf which may fall + Corosync has problem with readdir_r if pathconf function fails. + + Main problem is hidden in calling pathconf (internally calls statfs) + which may fail. After this fail, newly allocated memory for readdir_r + was smaller than expected and memory was overwritten by readdir_r. + + Patch removes calling of pathconf and rather use NAME_MAX constant which + is always large enough for all file systems. + + Also return value of malloc SHOULD be checked. + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2962 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2010-06-21 Angus Salkeld <asalkeld@redhat.com> + + Add make/spec file changes for corosync & blackbox man pages. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2961 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Add a simple man page for corosync + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2960 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Add a man page for corosync-blackbox + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2959 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2010-06-21 Steven Dake <sdake@redhat.com> + + Change version to 1.2.5 in trunk. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2956 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2010-06-19 Steven Dake <sdake@redhat.com> + + Stop the totem stats updater timer during shutdown to prevent references to invalid memory. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2953 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Unlock global serializer lock during shutdown. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2949 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2010-06-18 Andrew Beekhof <abeekhof@redhat.com> + + Prevent segfault in fork() + Not closing stdin/stderr/stdout leads to a segfault in fresetlockfiles() + See https://lists.linux-foundation.org/pipermail/openais/2010-June/014854.html for further info. + + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2948 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2010-06-15 Steven Dake <sdake@redhat.com> + + Patch from Honza: Send CPG_REASON_PROCDOWN on process left + Our manual pages are clear: + + CPG_REASON_PROCDOWN - the process left a group without calling + cpg_leave(). + + Currently, we are sending CPG_REASON_LEAVE in such situation. + + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2946 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2010-06-15 Christine Caulfield <ccaulfie@redhat.com> + + object_key_iter() calls object_key_iter_typed() and then always tries to dereference the string it returns, even if the call fails. The attached patch fixes this. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2944 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2010-06-10 Steven Dake <sdake@redhat.com> + + changes to corosync.spec.in template: + Move configure to %build section + don't set corosync's init levels during an upgrade of the corosync package + + Patch from Vadym Chepkov + + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2943 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2010-06-09 Steven Dake <sdake@redhat.com> + + update version to 1.2.4. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2939 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Update logsys to use proper ring buffer on file backed map + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2922 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2010-06-07 Angus Salkeld <asalkeld@redhat.com> + + Disable test while I fix it. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2921 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2010-06-04 Steven Dake <sdake@redhat.com> + + sem_wait can be interrupted by signal. Handle interruption properly. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2920 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2010-06-03 Steven Dake <sdake@redhat.com> + + Fix fail to receive logic which occurs very rarely on high loss networks with software based multicast. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2919 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2010-06-02 Angus Salkeld <asalkeld@redhat.com> + + temporarily remove a cts test case. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2918 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2010-06-01 Steven Dake <sdake@redhat.com> + + Totem spec is clear: + reject retransmitted tokens + if token.aru = aru in token on last rotation ... do some logic + + Here is how the current code works: + + last_aru = instance->my_last_aru; + instance->my_last_aru = token->aru; + reject retransmitted tokens + if token.aru = aru in token on last rotation ... do some logic + + The issue is last_aru will be set to token->aru when a token retransmission + occurs before a new token arrives. + + This results in the "do some logic" part happening more often then it should. + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2917 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Fix problem where callbacks are not delivered to evs service. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2916 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2010-05-28 Steven Dake <sdake@redhat.com> + + The static function 'decode_mode()' is used by the static function 'dump_subsys_config()' which is is turn used by the static function 'dump_full_config()' which is never used. + Are these functions used by someone using some magic? I did not find + any reference and even the flag LOGSYS_DEBUG, which prevents them from + compiling, does not exist at some other point. + + If these functions are really not used, please remove them (because at + least one of them has a buffer overflow). Patch against 1.2.3 + is attached. + + If there is a need for these functions, I'll send a patch to fix + the 'decode_mode()' function. + + Kind regards + + Andreas Florath + + + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2915 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2010-05-28 Angus Salkeld <asalkeld@redhat.com> + + Add a man page for corosync-quorumtool + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2914 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Add a man page for corosync-pload + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2913 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Add man page for corosync-fplay. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2912 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Add man page for corosync-cpgtool + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2911 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Add man page for corosync-cfgtool + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2910 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Really corosync-keygen.8 + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2909 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Add a man page for corosync-keygen and update corosync_overview + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2908 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2010-05-27 Jan Friesse <jfriesse@redhat.com> + + coroipcc - don't loop forever on EINTR + This patch unify behaviour of SYS V semaphores and POSIX semaphores. + POSIX semaphores never return CS_ERR_TRY_AGAIN on EINTR and keeps + waiting. This was fixed for SYS V semaphores in rev. 2303. + + Another change is to remove very small probability of hung forever in + coroipcc_dispatch_put. + + Last change is removal of duplicate code by adding ipc_sem_wait function. + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2907 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2010-05-26 Steven Dake <sdake@redhat.com> + + Fix problem where memcpy operation occurs incorrectly to copy schedule parameter data resulting in priority inversion deadlocks on single cpu systems. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2906 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2010-05-21 Angus Salkeld <asalkeld@redhat.com> + + makefile: add -lquorum -lcoroipcc to sam test programs + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2905 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Autobuild: add -v option to mock + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2904 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2010-05-19 Steven Dake <sdake@redhat.com> + + Bump revision to 1.2.3. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2901 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Fix leak in error path in nss encryption. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2857 fd59a12c-fef9-0310-b244-a6a79926bd2f + + This patch updates the wording for the bindnetaddr option in corosync.conf to explicitly state that you need to use the network address, as opposed to "should always end in zero", which is only correct for class C networks. + Regards, + + Tim + + + -- + Tim Serong <tserong@novell.com> + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2856 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Make cpg_membership_get() functional. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2855 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2010-05-19 Angus Salkeld <asalkeld@redhat.com> + + cov 10412: fix mem leak in encrypt_and_sign_nss() + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2854 fd59a12c-fef9-0310-b244-a6a79926bd2f + + add __attribute__((noreturn)) to functions that always exit. + we had some __attribute__((__noreturn__)) + and some __attribute__((noreturn)) + + I made them all: __attribute__((noreturn)) + + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2853 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2010-05-18 Steven Dake <sdake@redhat.com> + + Fix free of ring status information when memory allocation fails during allocation of the ring status information. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2852 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Fix signed comparison with unsigned value in mainconfig.c + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2851 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2010-05-18 Angus Salkeld <asalkeld@redhat.com> + + cov 10388: fix check for no mcast address + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2850 fd59a12c-fef9-0310-b244-a6a79926bd2f + + cov (many): make sure all _set() functions return a signed int + in the body it can return -1, and callers check for -1. + but the return type is unsigned int? + + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2849 fd59a12c-fef9-0310-b244-a6a79926bd2f + + cov 10391: allow assert to check for a negative number + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2848 fd59a12c-fef9-0310-b244-a6a79926bd2f + + cov 10404: don't assign loc pointer when not used. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2847 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2010-05-18 Steven Dake <sdake@redhat.com> + + Fix problem where logsys messages are not flushed at exit before worker thread is created. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2846 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2010-05-18 Angus Salkeld <asalkeld@redhat.com> + + cov 10405: remove unused pointer from totemsrp. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2845 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2010-05-17 Angus Salkeld <asalkeld@redhat.com> + + cov 10373: check poll return value + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2844 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Fix compile error in services/cfg.c + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2843 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2010-05-16 Angus Salkeld <asalkeld@redhat.com> + + cov 10392: remove pointless assert + backlog is unsigned + + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2842 fd59a12c-fef9-0310-b244-a6a79926bd2f + + cov 10413: crypto init a variable. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2841 fd59a12c-fef9-0310-b244-a6a79926bd2f + + cov (10387, 10397): cleanup memory mapping functions + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2840 fd59a12c-fef9-0310-b244-a6a79926bd2f + + cov 10374: check sam_hc_send() before counter++ + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2839 fd59a12c-fef9-0310-b244-a6a79926bd2f + + cov 10399: set the msg_flags to 0 in coroipcs. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2838 fd59a12c-fef9-0310-b244-a6a79926bd2f + + cov 10390: remove pointless assert. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2837 fd59a12c-fef9-0310-b244-a6a79926bd2f + + cov 10389: remove unneccessary check. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2836 fd59a12c-fef9-0310-b244-a6a79926bd2f + + cov 10371: check return of lcr_ifact_reference + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2835 fd59a12c-fef9-0310-b244-a6a79926bd2f + + cov 10401: error_string never set + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2834 fd59a12c-fef9-0310-b244-a6a79926bd2f + + cov 10411: fix leak in totemudp.c + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2833 fd59a12c-fef9-0310-b244-a6a79926bd2f + + cov 10400: unit'ed variable. + not important, easy to fix. + + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2832 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2010-05-14 Steven Dake <sdake@redhat.com> + + Merge patch from Sato Yuki which fixes corosync-cfgtool -r + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2831 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2010-05-14 Angus Salkeld <asalkeld@redhat.com> + + cov 10396: prevent a leak under error conditions (lib/sam.c) + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2830 fd59a12c-fef9-0310-b244-a6a79926bd2f + + cov 10378: fix syntax error. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2829 fd59a12c-fef9-0310-b244-a6a79926bd2f + + cov 10385: assigning signed int to unsigned variable + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2828 fd59a12c-fef9-0310-b244-a6a79926bd2f + + cov 10384: better error handling from accept() + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2827 fd59a12c-fef9-0310-b244-a6a79926bd2f + + cov 10383: impove the error handling after socket() + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2826 fd59a12c-fef9-0310-b244-a6a79926bd2f + + cov 10382: improve error handling around open() + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2825 fd59a12c-fef9-0310-b244-a6a79926bd2f + + cov 10381: check result of open() + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2824 fd59a12c-fef9-0310-b244-a6a79926bd2f + + cov 10379 &10380: check result of open before calling ftruncate. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2823 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2010-05-13 Jan Friesse <jfriesse@redhat.com> + + SAM integration of quorum + Patch adds integration of SAM and quorum, so it's now possible to use + SAM_RECOVERY_POLICY_QUORUM_QUIT or SAM_RECOVERY_POLICY_QUORUM_RESTART + recovery policy. With these policies, sam_start will block until + corosync is quorate. If quorum is lost during health checking, recovery + action is taken. + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2822 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Allow call sam_warn_signal_set after sam_register + Patch fixes situation, when user want to change warn signal after + call of sam_register function. This was not possible, because parent + process never got new value from child. + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2821 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2010-05-13 Steven Dake <sdake@redhat.com> + + Bump version to 1.2.2. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2818 fd59a12c-fef9-0310-b244-a6a79926bd2f + + logsys rework to deal with memory corruption around debug:on configurations. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2816 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2010-05-13 Angus Salkeld <asalkeld@redhat.com> + + autobuild: clean up the example config before installing + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2815 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2010-05-12 Angus Salkeld <asalkeld@redhat.com> + + cpg: fix unitialized variable + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2814 fd59a12c-fef9-0310-b244-a6a79926bd2f + + CTS: fix test_agent start/stop errors + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2813 fd59a12c-fef9-0310-b244-a6a79926bd2f + + CTS: fix test service configuration + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2812 fd59a12c-fef9-0310-b244-a6a79926bd2f + + configure: minor change to get tab completion to work + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2811 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2010-05-05 Angus Salkeld <asalkeld@redhat.com> + + autobuild: hard code mock path to /usr/bin/mock + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2808 fd59a12c-fef9-0310-b244-a6a79926bd2f + + set execute bit on autobuild.sh + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2807 fd59a12c-fef9-0310-b244-a6a79926bd2f + + spec: fix some errors from rpmbuild & rpmlint + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2806 fd59a12c-fef9-0310-b244-a6a79926bd2f + + testcpg: fix a format string compile warning. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2805 fd59a12c-fef9-0310-b244-a6a79926bd2f + + log: remove "Member left/join" log messages + No longer needed by CTS and likely to be very noisy + with large node numbers. + + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2804 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2010-05-04 Angus Salkeld <asalkeld@redhat.com> + + cpg: fix sync'ing the downlist. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2801 fd59a12c-fef9-0310-b244-a6a79926bd2f + + check and discard unknown messages + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2800 fd59a12c-fef9-0310-b244-a6a79926bd2f + + diags: add a mechanism to trigger the writing the flight data + trigger the dumping of flight data using: + corosync-objctl -w runtime.blackbox.dump_flight_data=anything + trigger the dumping of state using: + corosync-objctl -w runtime.blackbox.dump_state=anything + + then read the flight data as usual: + corosync-fplay + + This patch includes a wrapper script called: + corosync-blackbox + + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2799 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Fix "mock --with testagents" + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2798 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2010-05-03 Angus Salkeld <asalkeld@redhat.com> + + CTS: reproduce David's bug + This patch creates a test case the runs the following steps: + 1: start all nodes + 2: isolate node n1 + 3: Kill corosync on n1 + 4: unisolate node n1 + 5: start corosync on n1 + 6: start cpg on all nodes + 7: isolate node n1 + 8: Kill corosync on n1 + 9: unisolate node n1 + 10: start corosync on n1 + 11: Waiting for config change on n2 + + + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2797 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2010-05-02 Angus Salkeld <asalkeld@redhat.com> + + Add autobuild.sh : for buildbot to run CTS + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2796 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2010-04-30 Steven Dake <sdake@redhat.com> + + The retransmit token storage area is an improper type of an array of pointers rather then a pointer to a buffer. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2795 fd59a12c-fef9-0310-b244-a6a79926bd2f + + When a message is retransmitted, a memmove operation is done to remove the newly retransmitted entry from the list. It is possible this memmove operation can buffer overflow because it has an invalid length calculation fixed by this revision. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2794 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Allow maximum entries in the retransmit queue when recovery takes place. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2793 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Save the ring id and restore it properly when the recovery operation fails as a result of a new gather or token loss. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2792 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2010-04-29 Christine Caulfield <ccaulfie@redhat.com> + + Fix name of fail_recv_const in corosync.conf man page + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2791 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2010-04-28 Jan Friesse <jfriesse@redhat.com> + + Fix parallel build of libs in lib directory + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2790 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2010-04-26 Jan Friesse <jfriesse@redhat.com> + + Handle POLLNVAL in coroipcc + Old code in coroipcc doesn't handle POLLNVAL. It can happen, that some + applications (for example fenced) will stuck forever. + + Also poll result is now handled more correctly. + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2789 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2010-04-23 Jan Friesse <jfriesse@redhat.com> + + Handle some valgrind errors + - Memset for res_setup variable in coroipcs:req_setup_send + - Two memset in logsys for buffers + - Problem in corosync_totem_stats_updater where avg_token_holdtime has + size of avg_backlog_calc + - corosync_totem_stats_init where avg_backlog_calc is 32 bits (not 64) + - objdb problem if new_valie_len != object->value_len. In such case + newly allocated memory is not initialized and in some situations, + value_len is not updated. + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2787 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2010-04-23 Angus Salkeld <asalkeld@redhat.com> + + select a new sync member if the node with the lowest nodeid has left. + Problem: + + Under certain circumstances cpg does not send group leave messages. + + With a big token timeout (tested with token == 5min). + 1 start all nodes + 2 start ./test/testcpg on all nodes + 2 go to the node with the lowest nodeid + 3 ifconfig <int> down && killall -9 corosync && /etc/init.d/corosync restart && ./testcpg + 4 the other nodes will not get the cpg leave event + 5 testcpg reports an extra cpg group (basically one was not removed) + + Solution: + If a member gets removed using the new trans_list and + that member is the node used for syncing (lowest nodeid) + then the next lowest node needs to be chosen for syncing. + + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2785 fd59a12c-fef9-0310-b244-a6a79926bd2f + + CTS: increase the token timeout on some tests + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2784 fd59a12c-fef9-0310-b244-a6a79926bd2f + + CTS: add CpgCfgChgOnNodeRestart + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2783 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2010-04-20 Jan Friesse <jfriesse@redhat.com> + + CPG model_initialize and ringid + members callback + Patch adds new function to initialize cpg, cpg_model_initialize. Model + is set of callbacks. With this function, future addions of models + should be possible without changing the ABI. + + Patch also contains callback in CPG_MODEL_V1 for notification about + Totem membership changes. + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2770 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Support for store user data in SAM + Ability to in-memory storing of user data which survives between + instances of process. + + Also ability needed ability for bi-directional communication between + child and parent is added. + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2769 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Fix confdb linking (add -ldl) + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2768 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2010-04-20 Christine Caulfield <ccaulfie@redhat.com> + + Fix a crash in YKD + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2767 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2010-04-16 Angus Salkeld <asalkeld@redhat.com> + + CTS: update the CTS README + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2766 fd59a12c-fef9-0310-b244-a6a79926bd2f + + CTS: make record events blocking + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2765 fd59a12c-fef9-0310-b244-a6a79926bd2f + + CTS: add context get/set tests. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2764 fd59a12c-fef9-0310-b244-a6a79926bd2f + + CTS: fix the test_agent start/stop/status mechanism. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2763 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2010-04-15 Angus Salkeld <asalkeld@redhat.com> + + test for augtool before using it in "make check" + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2762 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2010-04-14 Angus Salkeld <asalkeld@redhat.com> + + CTS: add quorum notifications to test agents. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2761 fd59a12c-fef9-0310-b244-a6a79926bd2f + + CTS: add simul start/stop to GenTestClasses + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2760 fd59a12c-fef9-0310-b244-a6a79926bd2f + + CTS: make the extra config tests named + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2759 fd59a12c-fef9-0310-b244-a6a79926bd2f + + CTS: add --rrp-bindaddr to enable rrp tests. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2758 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2010-04-12 Angus Salkeld <asalkeld@redhat.com> + + When sync is aborted clear the "my_ring_id" variable. + This patch fixes crashes found by repeated pacemaker CTS SimluStart + tests. When you bring up the nodes together it can cause a lot of + configuration changes and sync gets started and aborted + lots of times. + + When abort is called the ring_id is not changed which means that any + sync packet that arrive from that point on will be accepted as valid. + I have seen old barrier messages causing the processing index to increment + later causing an array out of bounds. + + This patch memsets the ring_id to 0, thus causing the ring_id in the packet and + my_ring_id not to match. + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2757 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2010-04-07 Angus Salkeld <asalkeld@redhat.com> + + add comment to the man page explaining the use of port and port -1. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2756 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2010-04-02 Steven Dake <sdake@redhat.com> + + Allow modifying POLLIN/POLLOUT state in another thread while the main thread is blocked in poll system call. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2755 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Remove problem where NULL dispatch handler functions would result in lockup of the dispatch if they were sent by a service engine. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2754 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2010-04-01 Jan Friesse <jfriesse@redhat.com> + + Support for user configurable warning signal + Allow developer configure a signal to be send as a warning signal + before real SIGKILL. + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2753 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Support for specific libraries version + Patch adds support for changing version number of library simply by edit + lib$(LIB).verso file. + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2752 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2010-03-30 Angus Salkeld <asalkeld@redhat.com> + + Add missing cts files. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2751 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2010-03-30 Steven Dake <sdake@redhat.com> + + Fix barrier operation with syncv2 and compat:none or openais service engines. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2750 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2010-03-30 Angus Salkeld <asalkeld@redhat.com> + + augeas: add uidgid and quorum options to lense + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2749 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2010-03-30 Jérôme Flesch <jerome.flesch@netasq.com> + + Coroipcc: Make sure that coroipcc_service_connect() always return a valid cs_error_t + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2748 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2010-03-30 Angus Salkeld <asalkeld@redhat.com> + + CTS: add votequorum test agent + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2747 fd59a12c-fef9-0310-b244-a6a79926bd2f + + objdb: fix key change notifications + 1) don't send notifications if the key is the same. + 2) Add key value change notifications to key_inc & key_dec + + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2746 fd59a12c-fef9-0310-b244-a6a79926bd2f + + CTS: add some more confdb tests + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2745 fd59a12c-fef9-0310-b244-a6a79926bd2f + + CTS: add sam tests + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2744 fd59a12c-fef9-0310-b244-a6a79926bd2f + + CTS: add cpg_zcb tests + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2743 fd59a12c-fef9-0310-b244-a6a79926bd2f + + CTS: add a test for sync events + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2742 fd59a12c-fef9-0310-b244-a6a79926bd2f + + fix make distcheck (add corosync.aug to EXTRA_DIST + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2741 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2010-03-26 Jérôme Flesch <jerome.flesch@netasq.com> + + Totemudp: Add debug logs when a call to sendmsg() fails + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2740 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2010-03-25 Angus Salkeld <asalkeld@redhat.com> + + Make corosync exit with 0 normally and +1.. on error. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2739 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2010-03-24 Angus Salkeld <asalkeld@redhat.com> + + fix 'make distcheck' + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2738 fd59a12c-fef9-0310-b244-a6a79926bd2f + + CTS: get some more code to execute. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2737 fd59a12c-fef9-0310-b244-a6a79926bd2f + + CTS: Add a condb test agent and python tests. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2736 fd59a12c-fef9-0310-b244-a6a79926bd2f + + CTS: Add a confdb test agent and python tests. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2735 fd59a12c-fef9-0310-b244-a6a79926bd2f + + CTS: fix issues with new pacemaker cts + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2734 fd59a12c-fef9-0310-b244-a6a79926bd2f + + CTS: restruct tests so we can run them with multiple configs + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2733 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Add quorum option to augeas lense + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2732 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Fix unloading of evs (service id == 0) + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2731 fd59a12c-fef9-0310-b244-a6a79926bd2f + + CTS: add service load/unload test + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2730 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Fix code coverage with lcrso's + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2729 fd59a12c-fef9-0310-b244-a6a79926bd2f + + CTS: Add tests with more totem options. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2728 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Add crypto options to augeas lense & add make check + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2727 fd59a12c-fef9-0310-b244-a6a79926bd2f + + CTS: Add msg sha1 checking of the message body (like cpgverify) + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2726 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2010-03-23 Steven Dake <sdake@redhat.com> + + Bump version to 1.2.1. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2723 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Tone down noisy logging from ipcs system. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2721 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2010-03-22 Steven Dake <sdake@redhat.com> + + Fix lockup that occurs rarely with pthread_join() is called in atexit() handler. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2719 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2010-03-20 Steven Dake <sdake@redhat.com> + + Fix problem where retransmissions don't occur resulting in failure to receive condition. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2685 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2010-03-16 Christine Caulfield <ccaulfie@redhat.com> + + Fix a couple of small bugs that happen when the configuration is reloaded. + 1. the reload callback was not sent to the library, + 2. totem exponentially added new callbacks because the old ones were not + removed properly. + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2684 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Add a reload callback to libconfdb. + This also increments the libconfdb version to 4.1.0 + + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2683 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2010-03-11 Angus Salkeld <asalkeld@redhat.com> + + Remove warnings. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2682 fd59a12c-fef9-0310-b244-a6a79926bd2f + + add optional --with testagents to the spec file + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2681 fd59a12c-fef9-0310-b244-a6a79926bd2f + + CTS: fix buffer overrun in test agent. + Also to make debugging easier: + 1) don't stop abrt + 2) fix debug message + 3) catch a failed mesage to the TA and fail the test. + + + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2680 fd59a12c-fef9-0310-b244-a6a79926bd2f + + CTS: fix deletion of the tmp root for augeas + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2679 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2010-03-09 Angus Salkeld <asalkeld@redhat.com> + + add a list of member nodes into the objdb runtime tree. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2678 fd59a12c-fef9-0310-b244-a6a79926bd2f + + tsafe: change fork() override to pthread_atfork() callbacks. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2677 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2010-03-04 Jan Friesse <jfriesse@redhat.com> + + Support for lib_cpg_finalize + Add support for MESSAGE_REQ_CPG_FINALIZE message. This will allow us + remove cpg_pd from list of active connections, and remove problem, when + cpg_finalize + cpg_initialize + cpg_join can result in CPG_ERR_EXIST + error. + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2676 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Cpg join with undelivered leave message + Patch handles situation, when on one node, one process: + - join cpg + - do same actions + - leave cpg + - join cpg again + + Following sequence can (racy) end with broken process_info list. + + To solve this problem, one more check is done in + message_handler_req_lib_cpg_join so if process_info with same pid and + group as new join request exists, CPG_ERR_TRY_AGAIN is returned. + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2675 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2010-03-03 Angus Salkeld <asalkeld@redhat.com> + + Fix some "make lint" problems + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2674 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2010-03-03 Steven Dake <sdake@redhat.com> + + Specify the ringnumber parameter must start at 0 in the corosync.conf man page. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2673 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Fix error handling to avoid segfaults/leaks on error in coroipcc_service_connect. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2672 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Turn executable bit on for py/sh scripts in cts. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2671 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2010-03-03 Angus Salkeld <asalkeld@redhat.com> + + Add tsafe.h to noinst_HEADERS to fix "make distcheck" + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2670 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Add tsafe (thread safe) file to catch unsafe function calls. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2669 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Add a test harness to corosync that uses CTS from pacemaker. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2668 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2010-02-26 Christine Caulfield <ccaulfie@redhat.com> + + Reduce the number of times the quorum message is displayed. + Patch from David Teigland + + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2667 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2010-02-25 Angus Salkeld <asalkeld@redhat.com> + + convert giduid calls to reentrant versions. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2666 fd59a12c-fef9-0310-b244-a6a79926bd2f + + convert strerror() into strerror_r() + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2665 fd59a12c-fef9-0310-b244-a6a79926bd2f + + convert readdir into readdir_r + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2664 fd59a12c-fef9-0310-b244-a6a79926bd2f + + convert strtok to strtok_r + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2663 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2010-02-18 Angus Salkeld <asalkeld@redhat.com> + + Add a debug message on node join/leave. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2662 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Correct testcpg's groupname.length + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2661 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2010-02-18 Steven Dake <sdake@redhat.com> + + Patch to set unset value in token hold cancel structure as to not crash wireshark. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2660 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2010-02-17 Angus Salkeld <asalkeld@redhat.com> + + add a note about rotating logfile created with to_logfile + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2659 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Add augeas lense for corosync.conf + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2658 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2010-02-16 Jan Friesse <jfriesse@redhat.com> + + Fix corosync shutdown process + This patch change corosync shutdown process, so now: + - exit function of service engine is called + - all IPC connections are closed and removed from poll + - service engine is unlocked + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2657 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2010-02-15 Steven Dake <sdake@redhat.com> + + Use nodeid instead of localhost ip for the case when binding to a loalhost interface. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2656 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2010-02-12 Christine Caulfield <ccaulfie@redhat.com> + + Remove a double list_del() when a tracking CFG client shuts down without calling cfg_track_stop. This caused corosync to crash. + The extra list_empty() check is redundant too because it also happens in remove_ci_from_shutdown() + + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2655 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2010-02-04 Steven Dake <sdake@redhat.com> + + Merge of Dejan's on=yes patch for the config parser options to ease migration. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2654 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2010-02-04 Angus Salkeld <asalkeld@redhat.com> + + pass transitional members into the sync_init() callbacks. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2653 fd59a12c-fef9-0310-b244-a6a79926bd2f + + move sync_v2_init() into main_service_ready + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2652 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2010-02-02 Angus Salkeld <asalkeld@redhat.com> + + totemsrp: fix transitional configuration changes with long token timeouts + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2651 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2010-01-31 Steven Dake <sdake@redhat.com> + + Fix coroipcs message corruption that occurs when a message fills the remainder of the dispatch buffer with a full message. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2650 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2010-01-22 Jan Friesse <jfriesse@redhat.com> + + Add schedwrk_create_nolock function + This patch adds schedwrk_create_nolock, which will not call + serialize_lock before execution of callback. + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2649 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2010-01-21 Jan Friesse <jfriesse@redhat.com> + + Pass correct poll handle to poll_stop on exit + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2648 fd59a12c-fef9-0310-b244-a6a79926bd2f + + poll_dispatch_delete - ability to return 0 + Patch fixes poll_dispatch_delete, so it is able to return 0 + (success), when requested FD was found. + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2647 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2010-01-20 Jan Friesse <jfriesse@redhat.com> + + Fix setting invalid mode in log destination + This fixes problem in revision 2642, when only last + line of log destination setting is really applied. + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2646 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2010-01-14 Jan Friesse <jfriesse@redhat.com> + + Fix malloc deadlock in signal handler + This patch solves situations, where malloc is called + inside signal handler. It creates thread, which waits + for semaphore unlock and then starts shutdown sequence. + + RHBZ#547511 + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2644 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Fix freeze of IPC library connection on sem_wait + This patch solves library waiting on sem_wait. It doesn't + solve all other problems, which can make corosync not + to exit (malloc race, global lock deadlock, ...) + + RHBZ#547511 + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2643 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2010-01-13 Jan Friesse <jfriesse@redhat.com> + + Fix coroparse to allow white chars before comment + - allows white characters before # + - new function to parse log destinations (remove code duplicity) + - clarify man page + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2642 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2010-01-11 Jan Friesse <jfriesse@redhat.com> + + Generate nodeid value when unset on BSD + Generated nodeid is generated in same way as + on Linux is. + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2641 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-12-15 Steven Dake <sdake@redhat.com> + + Remove invalid assertion in totemsrp. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2640 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-12-15 Andrew Beekhof <abeekhof@redhat.com> + + Correctly determine current state in init script + If two stop actions are ever performed simultaneously, then neither will terminate. + With the default implementaiton of __pids_pidof, the status() function from + /etc/init.d/functions incorrectly thinks the other stop action is a real + corosync process. + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2639 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-12-08 Angus Salkeld <asalkeld@redhat.com> + + Allow empty (default) consensus timeout. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2638 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-12-08 Steven Dake <sdake@redhat.com> + + Bump verion to 1.2.0. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2581 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Remove string overwrite if many recovery messages are originated. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2580 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Remove compiler warning in vsf_quorum.c. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2579 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Remove compiler warning in totemsrp. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2578 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Update to AUTHORS file. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2577 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-12-08 Fabio M. Di Nitto <fdinitto@redhat.com> + + Update spec file to deal with new libsam + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2576 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Generate .pc file for new libsam + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2575 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-12-07 Steven Dake <sdake@redhat.com> + + SAM man pages. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2574 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Set boolean indicating the retrans flag was set to 1 to 0 when setting retrans flag in token to zero. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2573 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Make assertions for range checking of message delivery check with the define instead of magic numbers that are not valid if the define changes. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2572 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-12-07 Jan Friesse <jfriesse@redhat.com> + + Remove potentially thread unsafe call of strftime + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2571 fd59a12c-fef9-0310-b244-a6a79926bd2f + + SAM implementation merge + The SAM library provide a tool to check the health + of an application. The main purpose of SAM is to restart + a local process when it fails to respond to a healthcheck + request in a configured time interval. + + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2570 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-12-07 Steven Dake <sdake@redhat.com> + + Prevent lockup in recovery state in totem after 206 messages are originated. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2569 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Fix recovery messages to be proper length to remove segfault that occurs during recovery. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2568 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-12-06 Steven Dake <sdake@redhat.com> + + Force consensus timer to be at minimum 1.2 * token to prevent one group of nodes from executing a token timeout in the COMMIT state while another node executes a consensus timeout, showing to applications as a temporary network partition. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2567 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-12-04 Christine Caulfield <ccaulfie@redhat.com> + + Make man page match reality of totem configuration values. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2566 fd59a12c-fef9-0310-b244-a6a79926bd2f + + This puts multiple nodeids on each [QUORUM] Members line instead of putting each nodeid on a separate line. With more than a few nodes the excessive lines become a real nuisance, and anyone up around 32 nodes may literally be scrolling through hundreds of those lines. + from David teigland + + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2565 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-12-03 Angus Salkeld <asalkeld@redhat.com> + + stats: don't calloc the totemsrp stats struct. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2564 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Correct some ugly indentation. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2563 fd59a12c-fef9-0310-b244-a6a79926bd2f + + objdb: fix memory leaks when objects are destroyed. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2562 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-12-02 Angus Salkeld <asalkeld@redhat.com> + + make sure key_names past from confdb are null terminated. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2561 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-12-02 Jan Friesse <jfriesse@redhat.com> + + bsd: Fix mlockall on FreeBSD version >= 8.0 + FreeBSD version 8.0 and greater supports mlockall + syscall correctly. So configure.ac is changed to detect + FreeBSD version and main.c is changed to support it. + + Resolves: rhbz#513687 + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2560 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-12-02 Fabio M. Di Nitto <fdinitto@redhat.com> + + spec file cleanup + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2559 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-12-01 Fabio M. Di Nitto <fdinitto@redhat.com> + + Fix threads vs fork init order + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2558 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-11-30 Fabio M. Di Nitto <fdinitto@redhat.com> + + Fix stop regression + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2557 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Expose service.d config directory + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2556 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-11-30 Steven Dake <sdake@redhat.com> + + Start pause timer at initialization so first gather doesn't result in pause timeout operations. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2555 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-11-30 Fabio M. Di Nitto <fdinitto@redhat.com> + + Clean up init scripts and make a single generic one + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2554 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-11-29 Angus Salkeld <asalkeld@redhat.com> + + Rename totem_new_msg_signal() to something more generic. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2553 fd59a12c-fef9-0310-b244-a6a79926bd2f + + coroipcs: Add a queue_size stats counter to each ipc connection. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2552 fd59a12c-fef9-0310-b244-a6a79926bd2f + + coroipcs: add logging for flow control state changes. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2551 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-11-27 Steven Dake <sdake@redhat.com> + + Patch to use proper IFA on Linux platforms to match interface addresses when netmask is not 255.255.255.0. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2550 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-11-23 Angus Salkeld <asalkeld@redhat.com> + + COVERITY 4: remove dead code in XYZ_dispatch(). + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2549 fd59a12c-fef9-0310-b244-a6a79926bd2f + + COVERITY 17: fix exit handling in show_votes(). + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2548 fd59a12c-fef9-0310-b244-a6a79926bd2f + + COVERITY 12: prevent overrun of logsys output buffers. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2547 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-11-22 Angus Salkeld <asalkeld@redhat.com> + + COVERITY 13: prevent buffer overrun in quorum-tool. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2546 fd59a12c-fef9-0310-b244-a6a79926bd2f + + COVERITY 11: remove dead code from cpg_iteration_next(). + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2545 fd59a12c-fef9-0310-b244-a6a79926bd2f + + COVERITY 14: free zcb_mapped if memory_map() fails. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2544 fd59a12c-fef9-0310-b244-a6a79926bd2f + + COVERITY 18: prevent deref after free. + Event deref_after_free: Dereferencing freed pointer "pi". + + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2543 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-11-05 Andrew Beekhof <abeekhof@redhat.com> + + Fix compilation on RHEL-4: If _GNU_SOURCE isn't defined, then neither is pthread_spinlock_t and compilation fails + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2542 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-10-28 Andrew Beekhof <abeekhof@redhat.com> + + Prevent daemon from suppressing corefile generation + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2541 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-10-23 Steven Dake <sdake@redhat.com> + + Bump version to 1.1.2. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2537 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Revert commit 2523 which results in segfaults under some workloads. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2536 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-10-21 Steven Dake <sdake@redhat.com> + + Bump revision to 1.1.1. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2533 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-10-20 Steven Dake <sdake@redhat.com> + + Resolve shutdown problems for pacemaker use case. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2531 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-10-18 Angus Salkeld <asalkeld@redhat.com> + + Add a log_printf function to coroipcs so we can pass the log level + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2530 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-10-15 Angus Salkeld <asalkeld@redhat.com> + + Avoid array out of bound error. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2529 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-10-14 Steven Dake <sdake@redhat.com> + + Patch from jflesch to fix segfault when using sysv semaphores that the thread state is checked prior to the semaphore operation, not after it has completed. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2524 fd59a12c-fef9-0310-b244-a6a79926bd2f + + totem process group optimization to not copy data into staging buffer if it is to be immediately ordered by totemsrp. Instead pass that data as an iovector element. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2523 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-10-14 Angus Salkeld <asalkeld@redhat.com> + + stats: prevent a div by zero if totem_count is zero. + patch by Chrissie + + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2522 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-10-13 Angus Salkeld <asalkeld@redhat.com> + + Fix the OSX build (broken by stats patches) + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2521 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-10-13 Andrew Beekhof <abeekhof@redhat.com> + + Add SIGTERM support and have the init script wait for corosync to actually terminate. Bud rh#525552 + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2520 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-10-12 Angus Salkeld <asalkeld@redhat.com> + + Add some missing calls to increment the relevant stats. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2519 fd59a12c-fef9-0310-b244-a6a79926bd2f + + allow coroipcs to work without calling stats initialization. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2518 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Add totem stats to objdb. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2517 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Remove silly warning in corosync-objdb + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2516 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Add per service-function statistics. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2515 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Add connection related statistics to the object db. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2514 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Test the key value size for typed keys. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2513 fd59a12c-fef9-0310-b244-a6a79926bd2f + + teach object_key_increment() key types. + This is so we can increment all integer types correctly. + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2512 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-10-10 Angus Salkeld <asalkeld@redhat.com> + + Add value types to objdb keys. + This allows you to create a key with a know type. + And then get the type with the key value. + + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2511 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-10-06 Christine Caulfield <ccaulfie@redhat.com> + + This patche fixes a couple of small problems with votequorum: + - if a single node is booted with votequorum loaded then + corosync-quorumtool shows zero nodes and no votes. + - votequorum doesn't always tell the main quorum module when a new node + has joined the cluster (principally itself. this bug is actually tied + into the above) + + I've also added quorum to the default list of services. As quorum has + been decoupled from sync it will not interfere with normal operations as + it used to do and it makes more sense to have it there than not. + + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2510 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-09-25 Fabio M. Di Nitto <fdinitto@redhat.com> + + Update spec file to enable IBA support and sync with 1.1.0 release + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2507 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-09-25 Steven Dake <sdake@redhat.com> + + Change version to 1.1.0 in trunk. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2504 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Totem IBA implementation. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2481 fd59a12c-fef9-0310-b244-a6a79926bd2f + + make main_service_ready function static. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2480 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Remove unused variable in stress_cpgfdget.c. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2479 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Remove pointless warning. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2478 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-09-25 Angus Salkeld <asalkeld@redhat.com> + + turn off _POSIX_THREAD_PROCESS_SHARED for uclibc + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2477 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-09-22 Steven Dake <sdake@redhat.com> + + Correct pload printing operation. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2473 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-09-21 Steven Dake <sdake@redhat.com> + + Fix merge error in previous commit. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2472 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Patch from Jerome to fix segfault in dispatch functions. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2468 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Fix abort with multiple cpg clients under heavy load. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2467 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-09-20 Steven Dake <sdake@redhat.com> + + Remove warning in logsys compile related to const correctness. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2463 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Remove warning in coroipcc. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2462 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Fix sigpipe handling to ignore sigpipes on systems which support them. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2419 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Make delete operation work properly in coropoll. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2418 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-09-16 Andrew Beekhof <abeekhof@redhat.com> + + Darwin libraries need -install_name otherwise they're not usable without DYLD_LIBRARY_PATH (which is highly unrecommended) + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2417 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-09-14 Steven Dake <sdake@redhat.com> + + Fix error with revision 2415. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2416 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Fix dispatch returning TRY_AGAIN when using DISPATCH_ALL parameter because of regression caused by revision 2046:lib/coroipcc.c. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2415 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-09-10 Angus Salkeld <asalkeld@redhat.com> + + log the built-in features at startup + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2411 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-09-09 Angus Salkeld <asalkeld@redhat.com> + + add small-memory-footprint option to configure + This adds the following option to configure: + --enable-small-memory-footprint + + When enabled the following defines are set + to reduce the overall memory footprint. + + MESSAGE_SIZE_MAX=1024*64 + MESSAGE_QUEUE_MAX=512 + PROCESSOR_COUNT_MAX=16 + IPC_REQUEST_SIZE=1024*64 + IPC_RESPONSE_SIZE=1024*64 + IPC_DISPATCH_SIZE=1024*64 + + + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2410 fd59a12c-fef9-0310-b244-a6a79926bd2f + + don't return the ip address when the mask is not found + Currently totemip_copy (boundto,&ipaddr) is called even when the + required mask is not found. + + This patch changes the behavior to only copy the ipaddr when the + mask is found. + + The current behavior makes debugging an incorrect config really + confusing. + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2409 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Only insert the filename into the log, not the path. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2408 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-09-08 Christine Caulfield <ccaulfie@redhat.com> + + Really add corosync-quorumtool + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2407 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Add corosync-quorumtool + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2406 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-09-07 Fabio M. Di Nitto <fdinitto@redhat.com> + + Fix missing symbol error when loading plugins without executive + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2405 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-09-07 Angus Salkeld <asalkeld@redhat.com> + + Remove a double unlock in logsys. + In logsys there are a number of XYZ_unlocked() functions that are called + like this: + + pthread_mutex_lock (&logsys_config_mutex); + + XYZ_unlocked(); + + pthread_mutex_unlock (&logsys_config_mutex); + + The XYZ_unlocked() functions should not do any (un)locking. + But _logsys_config_subsys_get_unlocked() unlocks if it finds the subsys. + This means that there is 1 lock and 2 unlocks. + + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2404 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-09-07 Christine Caulfield <ccaulfie@redhat.com> + + Return CS_ERR_NOT_EXIST if a client tries to contact a plugin that isn't loaded. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2403 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-09-07 Fabio M. Di Nitto <fdinitto@redhat.com> + + Fix corosync-tools linking + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2402 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-08-31 Jan Friesse <jfriesse@redhat.com> + + Real add of corosync-cpgtool + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2401 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Initial version of corosync-cpgtool + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2400 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Implementation of cpg_iteration functions + This functions allows iterate available cpg groups + and their members. API is modelled like ckpt iteration + functions. + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2399 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-08-28 Steven Dake <sdake@redhat.com> + + Fix off by one calculation error resulting in assertion. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2398 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-08-28 Christine Caulfield <ccaulfie@redhat.com> + + Send CURRENT callbacks to the dispatch FD rather than the callback one. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2397 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Fix nodelist passed to the quorum subsystem. + When a node left, the old nodelist was sent, sigh + + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2396 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-08-28 Steven Dake <sdake@redhat.com> + + Fix incorrect assertion with frame sizes of 9000. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2395 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-08-24 Steven Dake <sdake@redhat.com> + + Allow finalize routines to occur inside dispatch routines. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2394 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-08-20 Jan Friesse <jfriesse@redhat.com> + + Handle NULL callbacks in cpg, evs and confdb lib + Attached patches handle NULL callbacks in *_initialize + and *_dispatch. Handling is same as in quorum service. Now, when + callback is NULL -> no memcpy -> instance callbacks will have all + items set to NULL and in *_dispatch function is not called. + + It changes cfg so now we are using continue instead of exit. + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2392 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-08-19 Jan Friesse <jfriesse@redhat.com> + + Fix found_service_ver handling + Sometimes, when object_key_get doesn't return found_service_ver it + doesn't change old value and this value is then used in atoi what + will can cause fall of corosync. Patch fixes this case by setting + found_service_ver to NULL before call of object_key_get. + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2391 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Fix systems without _POSIX_THREAD_PROCESS_SHARED + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2390 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-08-17 Steven Dake <sdake@redhat.com> + + Add test program that finds limits of cpg message size. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2389 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Proper limits checking for message sizes to allow ~1mb max message sizes for corosync. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2388 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Request user enter characters into terminal if entropy pool is empty for keygen rather then exiting without creating an auth key. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2387 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-08-17 Jérôme Flesch <jerome.flesch@netasq.com> + + Fix value returned by lib/coroipcc_dispatch_get() in case recv() fails + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2386 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-08-12 Fabio M. Di Nitto <fdinitto@redhat.com> + + Delay forking and closing of fds as much as possible to allow startup wrappers (such as cman_tool) to collect as much errors as possible in case of startup failure + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2385 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-08-10 Jan Friesse <jfriesse@redhat.com> + + Swap item in cpg_joinlist + This patch add swab of header->size so big endian architectures + works with LE list and vica versa. + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2384 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-08-10 Fabio M. Di Nitto <fdinitto@redhat.com> + + corosync: move logsys thread config with all the others + logsys thread priority was configured after forking the + wthread process and spread the scheduler priority config + across a large chunk of code in main.c + + Now that logsys scheduler priority can be invoked at any time, + move the code together with corosync_setscheduler code. + + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2383 fd59a12c-fef9-0310-b244-a6a79926bd2f + + logsys: fix segfault in logsys_thread_priority_set + logsys_thread_priority_set expects that wthread is already running + but doesn't perform any check if it is. + + if logsys_thread_priority_set is invoked before forking the thread, + a segfault is guaranteed. + + this changes to logsys_thread_priority_set ensure that a request + for a new scheduler priority is queued if the wthread is not + created yet and the new scheduler parameters are applied as early + as possible after the thread is created. + + At the same time: + + - add a few comments on clean up that needs to be done + - remove a redundant check for policy != SCHED_OTHER as that's + corosync need specific. logsys should simply accept the request + and apply it. + + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2382 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-08-04 Jan Friesse <jfriesse@redhat.com> + + Support for -v (version) feature + This can be usefull for easier way to get informations + of the corosync version from users. Version and SVN + revision (get by svninfo -c) are displayed. + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2381 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-08-04 Christine Caulfield <ccaulfie@redhat.com> + + This patch makes a copy of the notifications list before calling the reload_notifications callbacks. This allows callback functions to manipulate the notifications list without causing corruption or strange loops. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2380 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-08-04 Steven Dake <sdake@redhat.com> + + Use unnamed shared posix semaphores on platforms which support them. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2379 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Man page cleanups from Steven Whitehouse for cpg service. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2378 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Always keep autogenerated node ids in totem as LE even on BE arches. Have testcpg print out autogenerated nodeid properly on BE arch. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2377 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-08-03 Jan Friesse <jfriesse@redhat.com> + + Support for systems where clock_gettime is not available + On some systems clock_gettime is not available so we are + testing availability and value of _POSIX_MONOTONIC_CLOCK. + + On system without support of clock_gettime, we are using + old behaviour with function gettimeofday. + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2376 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-07-28 Fabio M. Di Nitto <fdinitto@redhat.com> + + Fix spec file and update macro usage + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2374 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-07-27 Jan Friesse <jfriesse@redhat.com> + + Support for monotime timer + This patch should solve problems with corosync and ntp, by using + clock_gettime where it make sense. + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2373 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-07-27 Steven Dake <sdake@redhat.com> + + Add notification when totem has completed initialization. + This triggers the initialization of the service engines which may need totem + for initialization. + + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2372 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Add a target token set completed callback in totemrrp and below layers. Handle management of callback in totemsrp. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2371 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-07-23 Jan Friesse <jfriesse@redhat.com> + + Handle NULL ver string in service + In case user not enter ver: in service section, whole + corosync falled with segfaul, because atoi was called + on NULL. + + Now, in case of NULL, we rather not use atoi, and + return 0 directly. + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2370 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-07-23 Steven Dake <sdake@redhat.com> + + Optimization of totemsrp and below by removing hdb usage. cpgbench shows results of 4% to 20% increase in tps and mbs depending on hardware. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2369 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-07-22 Jan Friesse <jfriesse@redhat.com> + + Support for service.d + This patch is very similar to uidgid.d patch, but support for loading + services (so read service section). + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2368 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-07-21 Steven Dake <sdake@redhat.com> + + Initial infrastructure changes to support iba. Split totemnet into totemiba and totemudp and have totemnet call the appropriate transport calls. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2367 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Darwin is missing the sched_setscheduler system call. Patch detects it and resolves the build failure. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2366 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-07-20 Jan Friesse <jfriesse@redhat.com> + + Cpg synchronization patch for conf change messages + The root of the theoretical problem is that cpg_join or cpg_leave + messages are being sent via the C apis between synchronization. With + the current cpg, synchronization happens in confchg_fn, and then later + in cpg_sync_process. cpg_sync_process is called much later after + confchg_fn and introduces a small probability of a window of time for + queued in totem (but not yet ordered by totem) for those cpg_join and + cpg_leave operations to interact with the synchronization process which + should happen in one atomic operation but currently is two distinct + operations. + + This patch deletes confchg_fn and make sends joinlist/downlist + in cpg_sync_process. + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2365 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Allow only one connection per (node, pid, grp) + This patch allows only one connection per (node, pid, grp_name) tuple. + This means, you cannot make more connection from one process to same + group_name. This is (I hope) how cpg should behave. In case, you will + try to do that, CPG_ERR_EXISTS error is returned. + + Of course, there is no problem with creating: + - more connection with same (pid, grp) if nodeid is different + - more connection with same (node, grp) if pid is different (for example + after fork, or two distinct processes) + - more connection with same (node, pid) if grp is different (connect + one process to more cpgs). + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2364 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-07-16 Jan Friesse <jfriesse@redhat.com> + + Add lcoroipcc as build requirement for stress_cpgcontext + This is needed for build without errors on system, where + lcoroipcc is not installed on system yet. + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2363 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-07-14 Andrew Beekhof <abeekhof@redhat.com> + + Use the preferred prefix for the Pacemaker service + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2362 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-07-13 Steven Dake <sdake@redhat.com> + + Add NAME entries to manpages. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2360 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-07-10 Steven Dake <sdake@redhat.com> + + add stress_cpgcontext. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2359 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Add stress_cpgfdget test case. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2358 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Add stress test case for cpg and coroipcc zero copy buffer alloc and free operations. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2357 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Fix segfault when using zcb api of coroipcc under certain loads. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2356 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-07-10 Fabio M. Di Nitto <fdinitto@redhat.com> + + Bump version in trunk + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2355 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-07-08 Steven Dake <sdake@redhat.com> + + Add poll destroy to coroipcs. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2348 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Add more tested platforms to list. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2347 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Updated INSTALL file. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2346 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-07-02 Jérôme Flesch <jerome.flesch@netasq.com> + + BSD support: Fix EOF handling in coroipcs.c:req_setup_recv() and coroipcs:coroipcs_handler_dispatch() + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2345 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-07-01 Steven Dake <sdake@redhat.com> + + Add ring id field to evs. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2341 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Set version field in totem header in case it isn't set by default. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2340 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Pass handle is evs callback functions. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2339 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Send ERR_SECURITY when invalid security context is provided via ipc clients. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2338 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Set ERR_SECURITY to 100 to give plenty of room for other people's error codes. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2337 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Fix build on bsd systems. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2336 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Align syncv2 on 8 byte boundaries. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2335 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Make compatibility mode none work properly. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2334 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Code cleanup for evs service from Wojtek. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2333 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-07-01 Jan Friesse <jfriesse@redhat.com> + + Don't deliver cpg messages from unknown nodes + This patch fixes situation, when in the middle of + sync some node will send regular message before + another node will receive confch message, and regular + message is delivered to application. From application + point of view, this node is unknown -> don't expect + any messages. + + Now, no such messages are delivered to application. + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2332 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-07-01 Steven Dake <sdake@redhat.com> + + Add context get set man pages for evs. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2331 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Add new man pages to Makfile.am + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2330 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Add context get and set operations to evs handles and man pages. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2329 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Add context get/set to See Also section of cpg man pages. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2328 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Add see also reference to context get/set operation. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2327 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Add votequorum_context_get/set man pages. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2325 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Add man pages for confdb_context_get/set operations. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2324 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-06-30 Jim Meyering <jim@meyering.net> + + remove unnecessary #include + * exec/evil.c: Don't include <signal.h>. + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2323 fd59a12c-fef9-0310-b244-a6a79926bd2f + + remove trailing blanks + * corosync.spec.in: + * exec/evil.c: + * exec/main.c: + * exec/mainconfig.c: + * exec/syncv2.c: + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2322 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-06-30 Fabio M. Di Nitto <fdinitto@redhat.com> + + Reset version to 0.99 in configure.ac to unbreak rpm/srpm. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2321 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-06-30 Steven Dake <sdake@redhat.com> + + Reset 0.98 in configure.ac to trunk so toplevel makefile works properly + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2319 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Export poll handle via coroapi.h. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2318 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Fix segfault during dispatch within confdb library. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2317 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-06-28 Steven Dake <sdake@redhat.com> + + Static-ize some main.c variables. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2316 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Simplify notifications from totem at the notice level. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2315 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Remove hard coded sync values and use defines from coroapi.h. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2314 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Slay the debug messages coming out at notice level in totem. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2313 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Remove totemsrp warning. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2312 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Allow syncv2 to determine membership list when run in compatibility mode. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2311 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Follow synchronization model of event service so corosync without openais service engines can communicate with the openais whitetank event service in compatibility mode. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2310 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Send fake barriers for the event service when operating in compatibility mode whitetank. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2309 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-06-27 Angus Salkeld <asalkeld@redhat.com> + + add "-p" option to corosync-objctl + This just adds a "-p" option to corosync-objctl. + + So you can do the following (like sysctl). + + corosync-objctl -p /path/to/object.conf + + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2308 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-06-27 Fabio M. Di Nitto <fdinitto@redhat.com> + + Fix rpm version generation and adapt release manager Makefile. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2307 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-06-27 Steven Dake <sdake@redhat.com> + + Remove some debug printfs that snuck in. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2306 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Change sync_init api call to pass information relevant for making synchronization decisions. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2305 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-06-26 Steven Dake <sdake@redhat.com> + + Add ability to detect process pause and not implode the membership algorithm when this occurs. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2304 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Previously if a process was interrupted by a signal it could become unkillable because the operation was retried on signal interrupts. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2303 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Add syncv2. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2302 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Add AMF_V2_SERVICE defintion + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2301 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Fix build error in evil.c + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2300 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Fix no boottime support warning. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2299 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Add compatability option in config file. Defaults to whitetank. Add sync_mode to coroapi to indicate to corosync the service engine's desired compatibility mode. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2298 fd59a12c-fef9-0310-b244-a6a79926bd2f + + definition error in corodefs.h + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2297 fd59a12c-fef9-0310-b244-a6a79926bd2f + + sync-v1 onwire compat layer for raw corosync to communicate with whitetank. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2296 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-06-25 Steven Dake <sdake@redhat.com> + + Define CMAN and CRM service ids. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2295 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Convert got joinlist message notice to debug level. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2294 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-06-25 Fabio M. Di Nitto <fdinitto@redhat.com> + + Add support for make srpm and make rpm targets + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2293 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Fix make dist target + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2292 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-06-25 Jan Friesse <jfriesse@redhat.com> + + Add database lock init to hdb_* functions + Without this, lock can be called to unitialized and locking unitialized + lock isn't good idea. + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2291 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Add locking of database in hdb_handle_refcount_get + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2290 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-06-24 Steven Dake <sdake@redhat.com> + + Remove totempg debug message. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2289 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Add assembly to free list when it is removed from a configuration change as indicated by being in the left list. + This has side effect of clearing the assembly buffer the next time it is + referenced from the free list. This fixes a defect that stops forward + processing of the message streams because sync fails to finish when receiving + a sync message from a restarted processor because it throws away the message. + + + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2288 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-06-24 Ryan O'Hara <rohara@redhat.com> + + Add hdb_handle_refcount_get call. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2287 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-06-23 Steven Dake <sdake@redhat.com> + + Tidy's up startup printfs. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2286 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Change startup notice to Corosync Cluster Engine. Change 2008 to 2009 in copyright. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2285 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Remove "AIS" string from exit notice. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2284 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-06-22 Steven Dake <sdake@redhat.com> + + Remove warning by casting properly in totemnet. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2283 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Rename request_shutdown to shutdown_request in coroapi. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2282 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Add dump_state to coroapi.h. Need to remove logging output from signal handlers. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2281 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Sanitize -p option to not set scheduling parameters in all software. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2280 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-06-21 Jim Meyering <jim@meyering.net> + + totemsrp: remove unnecessary cast to avoid "make syntax-check" failure + * exec/totemsrp.c (message_handler_memb_join): Remove unnecessary + cast of alloca return value. + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2279 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-06-21 Steven Dake <sdake@redhat.com> + + Use HAVE_ALLOCA_H define before including alloca.h + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2278 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Add tests for posix scheduling apis to configure.ac and use them to determine if we should set scheduling priorities or not. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2277 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Work around dlopen'ed objects not executing constructors on solaris platform. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2276 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Remove hdb constructor usage. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2275 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-06-20 Steven Dake <sdake@redhat.com> + + Remove timersub redefine. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2274 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Set nosigpipe socket option on platforms that send sigpipes in coroipcc. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2273 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Remove use without init warning which is harmless. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2272 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Remove shadow warnings. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2271 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-06-19 Steven Dake <sdake@redhat.com> + + Add (void *) casts for iovector assignments to remove compile warnings. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2270 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Fix unused variable on linux because of portage work. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2268 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Patch from Wojtek to fix Solaris segfault with compiler optimization. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2267 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-06-19 Jim Meyering <jim@meyering.net> + + maint: remove trailing blanks + By running this command from a git-cloned directory: + git grep -z -l -E '[[:blank:]]+$' | xargs -0 perl -pi -e 's/[ \t]+$//' + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2266 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-06-19 Fabio M. Di Nitto <fdinitto@redhat.com> + + Fix handling of sysconfdir + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2265 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Install basic operational directories + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2264 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Remove tags from example configuration + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2263 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-06-19 Steven Dake <sdake@redhat.com> + + Warn user of missing dirs and exit gracefully. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2262 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Remove requirement of having uid and gid of "ais" on the system and allow nonroot users to access ipc if their uid/gid is in the /etc/corosync/uidgid.d directory. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2261 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Sanitize output of autogen.sh. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2260 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-06-18 Steven Dake <sdake@redhat.com> + + Ensure Linux, BSD, Solaris, Darwin function with security authentication in IPC system. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2259 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-06-18 Fabio M. Di Nitto <fdinitto@redhat.com> + + Fix rec_ident encoding for IPC + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2258 fd59a12c-fef9-0310-b244-a6a79926bd2f + + use $(INSTALL) instead of install for portability to other OS'es + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2257 fd59a12c-fef9-0310-b244-a6a79926bd2f + + flight recorder: enable temporary 0 buffer size protection + The flight recoder doesn't handle a 0 byte allocation properly + and it would fail miserably by allocating a single PAGE_SIZE + to handle the logging. That means an enormous performance hit + because of the constant wrapping around the buffer. + + If any requested buffer is < 64000 bytes, then force to at least + 64000. + + In future we will be able to handle small buffers properly, but + for now enable a simple workaround to protect us and the user. + + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2256 fd59a12c-fef9-0310-b244-a6a79926bd2f + + flight recorder: switch from int to bytes for requested allocation + The flight recoder buffer size as specified in LOGSYS_DECLARE_SYSTEM + or _logsys_rec_init was expressed in number of ints. A developer asking + to allocate 512K would get a 2M allocation on a machine with sizeof(int) = 4. + + This is confusing and the patch addresses it: + + - rename rec_size to fltsize for external API (no type change), + because rec_size is used many times internally for other reasons + and it can be confusing. + + - rename size to fltsize in _logsys_rec_init. + + - document what we allocate and why. + + - swap comments around to match the code. + + - introduce a simple macro to perform rounding (stolen from linux-2.6.git). + + - start shaping fdata header to better handle dynamic values: + * write the flt_data_size as first unsigned int the header. + * change corosync-fplay to read the value and alloc the right amount + of memory instead of hardcoding it again. + + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2255 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-06-18 Steven Dake <sdake@redhat.com> + + Add Jerome to AUTHORS file + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2254 fd59a12c-fef9-0310-b244-a6a79926bd2f + + add madvise nosync calls for bsd platform. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2253 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-06-18 Fabio M. Di Nitto <fdinitto@redhat.com> + + logsys: remove leftover files from running tests + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2252 fd59a12c-fef9-0310-b244-a6a79926bd2f + + flight recorder: don't hardcode max arguments everywhere + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2251 fd59a12c-fef9-0310-b244-a6a79926bd2f + + logsys: port to new packed rec_ident version + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2250 fd59a12c-fef9-0310-b244-a6a79926bd2f + + logsys: add macros to pack/unpack rec_ident + rec_ident should contain 3 info: log level, subsystem id and + message type. + + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2249 fd59a12c-fef9-0310-b244-a6a79926bd2f + + logsys: allow to use header files for #define's + most of the values in logsys.h are very useful for non logsys library + API users. + + Allow to import them without sucking the whole lib. + + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2248 fd59a12c-fef9-0310-b244-a6a79926bd2f + + logsys: update man page to reflect new changes + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2247 fd59a12c-fef9-0310-b244-a6a79926bd2f + + logsys: merge tags into rec_ident + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2246 fd59a12c-fef9-0310-b244-a6a79926bd2f + + logsys: drop LOGSYS_LEVEL_SECURITY + LOGSYS_LEVEL_SECURITY is specific to corosync/openais and it + is used only in the totem configuration. + + Drop the special case from logsys that's meant to be a generic + logging library and specify the correct equivalent for totem config. + + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2245 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-06-17 Jim Meyering <jim@meyering.net> + + build: silence automake portability warnings + * configure.ac: Enable automake's -Wno-portability option. + We depend on GNU make. + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2244 fd59a12c-fef9-0310-b244-a6a79926bd2f + + autogen.sh: simply to a one-liner: autoreconf -i + * autogen.sh: Don't use "which" or uname, or... + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2243 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-06-16 Fabio M. Di Nitto <fdinitto@redhat.com> + + Add missing prototype and fix white spaces + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2242 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-06-15 Steven Dake <sdake@redhat.com> + + Fix build error from recent solaris porting. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2241 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-06-14 Steven Dake <sdake@redhat.com> + + Use PF_UNIX on Solaris platforms instead of PF_LOCAL. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2240 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Use rsync -a instead of cp -a to install on Solaris. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2239 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Port of coroipc system to Solaris. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2238 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Patch from Jerome Flesch to correctly reference count on bsd and solaris platforms in the IPC system to avoid cpu spinning. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2237 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Add iface checking for Solaris platform. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2236 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-06-12 Jan Friesse <jfriesse@redhat.com> + + Make /etc/corosync/corosync.conf default configuration file + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2235 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Handle LCR problem with unloading "unneeded" components + In LCR, global variable g_component_handle is used to keep handle of loaded + component. If this variable has magic value (0xFFFFFFFF) it means, + "we loaded library, but that library doesn't have any component_register + call -> don't try to destroy interfaces list). + + If this variable has other value, it means "we loaded library, it registers, + but it exports some interface, what we currently don't need, so we can delete + that handle from libraries/interfaces list" and variable is set to magic value, + or "we loaded library, it registers and exports what we need -> great return some + nice value", but nobody resets variable to it's magic value. + + Sadly, if you have loaded some component (needed), then try to load component, + which don't have component_register function, previously loaded component handle + is destroyed. + + This problem happened to clm and quorum services, and cause, that loaded + clm handle was destroyed, so EVT (which need clm) just falls. + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2234 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-06-11 Fabio M. Di Nitto <fdinitto@redhat.com> + + Fix library linking fallout.. again + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2233 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-06-10 Steven Dake <sdake@redhat.com> + + Modify totemnet to work properly on Solaris by setting variables in sendmsg data structure. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2232 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-06-10 Fabio M. Di Nitto <fdinitto@redhat.com> + + Shared libs should not call exit but return error + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2231 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-06-10 Steven Dake <sdake@redhat.com> + + Remove unused variable on platforms other then Solaris. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2230 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Fix compile on BSD platforms. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2229 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Fix semun definitions for various platforms. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2228 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-06-10 Christine Caulfield <ccaulfie@redhat.com> + + Fix corosync-cfgtool -a so that it actaully produces some output! + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2227 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-06-09 Steven Dake <sdake@redhat.com> + + Use PF_LOCAL to match BSD semantics of api calls. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2226 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Resolve bug where config changes are delivered in the wrong order on nodes that join and then open a cpg. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2225 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-06-09 Andrew Beekhof <abeekhof@redhat.com> + + Decouple the decouples shutdown/startup order of lcrso's from the internal objdb order. + This is needed as the objdb order will change as modules are loaded/unloaded and is + also set up to unload non-default services last (which is the opposite of what + something like Pacemaker needs). + + In the worst case, the current behavior leads to cluster services (dlm, ocfs2, etc) + failing during shutdown. This patch also ensures that if, for example, cpg is unloaded + then anything that depends on it is unloaded first. + + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2224 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-06-07 Steven Dake <sdake@redhat.com> + + Remove quorum.c from lcrso build list since its linked into main binary. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2223 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Add support for buildling on Solaris platforms. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2222 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Call initializer directly for broken platforms which don't honor ctors in the shared object on dlopen. This could probably be more tidy to detect those OS platforms which don't do this instead of hardcoding to a specific platform we intend to port to. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2221 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Include limits.h in coroparse.c to properly define PATH_MAX. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2220 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Change NAME_MAX to FILENAME_MAX to compile properly on Posix OS. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2219 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Define MSG_NOSIGNAL if it is undefined by the base OS such as Solaris. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2218 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Conditionally compile on Solaris platforms msg_* flags in sendmsg header. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2217 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Include string.h in sq.h for memset() calls. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2216 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Make readdir operation portable by removing BSDism from coroparse.c. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2215 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Add strsep_cs to replace strsep. -This line, and those below, will be ignored-- + M exec/mainconfig.c + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2214 fd59a12c-fef9-0310-b244-a6a79926bd2f + + First run at adding support for corosync totemip determination. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2213 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Make coroipcs compile on Solaris. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2212 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Rename queue datastructure to cs_queue data structure because some fail operating system struct queue in the globally scoped headers. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2211 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Port of totemip to Solaris. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2210 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Port of logsys to Solaris. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2209 fd59a12c-fef9-0310-b244-a6a79926bd2f + + coroipcc port to Solaris. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2208 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-06-04 Christine Caulfield <ccaulfie@redhat.com> + + Don't let corosync-keygen fail if /etc/ais already exists + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2207 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-06-03 Andrew Beekhof <abeekhof@redhat.com> + + Fix compilation on OSX/Darwin + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2206 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Forward port the clear_node_high_bit from whitetank + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2205 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-06-02 Jim Meyering <jim@meyering.net> + + totempg.c: don't truncate group list + * exec/totempg.c (totempg_groups_join): Fix typo s/=/+/ that + would mistakenly truncate totempg group list. + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2204 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-06-01 Jan Friesse <jfriesse@redhat.com> + + Fix coroipcc linking + Fixes rhbz#499918 + + Functions from ckpt library (like aCkptCheckpointOpen, + saCkptSectionIterationInitialize, ...) internally uses corosync functions + reply_receive, reply_receive_in_buf, ... This functions are included in + coroipcc.c source file and uses global static variable ipc_hdb. + + Without patch, coroipcc is linked to shared library (libcoroipcc.so) AND linked + with every corosync libraries (like cpg, ....), so global variable ipc_hdb is + included not only in libcoroipcc.so, but also in libcpg.so, ... + + dlm_controld has function retrieve_plocks, and whole binary is linked with + libcoroipcc and libcpg. So ipc_hdb is included TWICE (so has TWO addresses). + + Main problem causing the bug was, that reply_receive uses address from one + library, and reply_receive_in_buf uses other. This confuses check of hdb_get + function. + + After removing linking of coroipcc.o to cpg, and rather use of dynamic version, + (this means, there is only one instance of ipc_hdb) problem disappeared. + + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2203 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-06-01 Christine Caulfield <ccaulfie@redhat.com> + + Add broadcast option to corosync + This is a forward port of the openais, whitetank, code. + + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2202 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-05-31 Steven Dake <sdake@redhat.com> + + Fix race condition in cpg service. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2201 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-05-30 Fabio M. Di Nitto <fdinitto@redhat.com> + + Public headers should not include private config.h + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2200 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-05-22 Christine Caulfield <ccaulfie@redhat.com> + + This patch adds the definition VOTEQUORUM_NODEID_US to the library, which is already implicitly zero. + It also adds VOTEQUORUM_NODEID_QDEVICE and makes the code that checks + for them more generic. This now allows you to change the number of votes + assigned to a quorum disk (for example) + + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2199 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-05-20 Jan Friesse <jfriesse@redhat.com> + + Support for uidgid feature + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2198 fd59a12c-fef9-0310-b244-a6a79926bd2f + + *Dispatch returns CS_ERR_BAD_HANDLE only on first hdb_get + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2197 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-05-20 Christine Caulfield <ccaulfie@redhat.com> + + Adapt the deliver_fn in the YKD quorum plugin to the new tpg API. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2196 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Print a list of quorum members when it changes. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2195 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-05-18 Jim Meyering <jim@meyering.net> + + avoid spurious failure of 'make syntax-check's sc_makefile_check + * pkgconfig/Makefile.am (lib%.pc): Add extra quotes to avoid + triggering check for use of obsolescent @VAR@ notation. + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2194 fd59a12c-fef9-0310-b244-a6a79926bd2f + + don't include <signal.h> when it's not used + * exec/coroparse.c: Likewise. + * exec/quorum.c: Likewise. + * exec/sync.c: Likewise. + * exec/totemmrp.c: Likewise. + * exec/totemnet.c: Likewise. + * exec/totemrrp.c: Likewise. + * exec/totemsrp.c: Likewise. + * exec/vsf_quorum.c: Likewise. + * exec/vsf_ykd.c: Likewise. + * lcr/uic.c: Likewise. + * lcr/uis.c: Likewise. + * lib/cfg.c: Likewise. + * services/cfg.c: Likewise. + * services/cpg.c: Likewise. + * services/evs.c: Likewise. + * services/pload.c: Likewise. + * services/testquorum.c: Likewise. + * services/votequorum.c: Likewise. + * test/testconfdb.c: Likewise. + * test/testcpg.c: Likewise. + * test/testcpgzc.c: Likewise. + * test/testzcgc.c: Likewise. + * tools/corosync-cfgtool.c: Likewise. + * tools/corosync-objctl.c: Likewise. + * tools/corosync-pload.c: Likewise. + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2193 fd59a12c-fef9-0310-b244-a6a79926bd2f + + don't include <assert.h> when it's not used + * exec/apidef.c: Likewise. + * exec/mainconfig.c: Likewise. + * exec/service.c: Likewise. + * exec/timer.c: Likewise. + * exec/totemconfig.c: Likewise. + * exec/totemmrp.c: Likewise. + * exec/vsf_quorum.c: Likewise. + * services/testquorum.c: Likewise. + * test/cpgbench.c: Likewise. + * test/cpgbenchzc.c: Likewise. + * tools/corosync-fplay.c: Likewise. + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2192 fd59a12c-fef9-0310-b244-a6a79926bd2f + + always include <config.h> before any other file + * test/cpgbench.c: Include <config.h> before any other file. + * test/cpgbenchzc.c: Ditto. + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2191 fd59a12c-fef9-0310-b244-a6a79926bd2f + + exec/schedwrk.c: include <config.h> + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2190 fd59a12c-fef9-0310-b244-a6a79926bd2f + + cfg.c: avoid useless if-before-free + * lib/cfg.c (corosync_cfg_ring_status_get): Avoid useless if-before-free + and change syntax to avoid triggering false-positive failure of + the "make syntax-check" sc_cast_of_argument_to_free rule. + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2189 fd59a12c-fef9-0310-b244-a6a79926bd2f + + remove trailing blanks + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2188 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-05-18 Christine Caulfield <ccaulfie@redhat.com> + + When doing a controlled shutdown of corosync, we now send out a JOIN message with our node removed. This should speed up the case where a lot of nodes leave at the same time as they don't need to wait for the token timeout for each node. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2187 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-05-18 Jan Friesse <jfriesse@redhat.com> + + coroparse: Handle different EOLs and pass error_string + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2186 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Remove duplicity in logsys code + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2185 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-05-13 Fabio M. Di Nitto <fdinitto@redhat.com> + + Fix output to syslog + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2184 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-05-13 Christine Caulfield <ccaulfie@redhat.com> + + Convert votequorum to use the proper message delivery API rather than the tpg_ calls. Also remove a lot of mess around those calls, such as headers and things that were needed for cman compatibility but which we will not need. + Fixes some handle changes that did not get picked up when + handles were changed from unsigned ints to hdb_handle_t + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2183 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-05-13 Fabio M. Di Nitto <fdinitto@redhat.com> + + Logsys header clean (comments and whitespaces) + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2182 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Fix totem logging after logsys changes + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2181 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Fix logsys TAG handling + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2180 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-05-12 Christine Caulfield <ccaulfie@redhat.com> + + Fix spelling of "Received" in sync.c + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2179 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-05-12 Jim Meyering <jim@meyering.net> + + logsys.c: avoid possibility of buffer overrun + * exec/logsys.c (strcpy_cutoff): Add buf_len parameter, and never + write more than this number of bytes into "dest". + Change type of "cutoff" parameter from int to size_t. + Sentinel value changes from -1 to 0. + (log_printf_to_logs): Adapt to those changes. + Reverse condition of test so the much-shorter block is the "if-block". + Factor out a common subexpression for readability. + Exit the loop if output_buffer_idx ever reaches sizeof(output_buffer). + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2178 fd59a12c-fef9-0310-b244-a6a79926bd2f + + logsys.c: avoid redundant strlen in else-block + * exec/logsys.c (strcpy_cutoff): Also, with a field width (aka cutoff), + and a shorter-than-field-width string, don't write the same memory + twice: once with strncpy using NUL bytes, then again with spaces + via the memset. + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2177 fd59a12c-fef9-0310-b244-a6a79926bd2f + + logsys.c: factor out some duplication + * exec/logsys.c (log_printf_to_logs): Factor out repeated calls to + strcpy_cutoff. + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2176 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-05-12 Fabio M. Di Nitto <fdinitto@redhat.com> + + Add debugging code to logsys. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2175 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-05-11 Jim Meyering <jim@meyering.net> + + totemnet.c: Make totemnet_initialize definition match just-changed decl. + * exec/totemnet.c (totemnet_initialize): Declare deliver_fn's msg_len + parameter to be of type "unsigned int" (not size_t) to match decl. + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2174 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-05-11 Fabio M. Di Nitto <fdinitto@redhat.com> + + Fix logging date format and add missing daemon name + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2173 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-05-09 Steven Dake <sdake@redhat.com> + + Remove most iovector-ized functionality from totem and only make one malloc and memory copy call in totemsrp_mcast. The rest of the stack minus totempg then uses zero copies. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2172 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-05-06 Jim Meyering <jim@meyering.net> + + fix missing-dependency bug, so as not to install bogus .pc files + * pkgconfig/Makefile.am (all .pc files): Depend on Makefile, so that + a change in $(prefix) there provokes regeneration of these files. + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2170 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-05-04 Jim Meyering <jim@meyering.net> + + votequorum.c: avoid a new warning and add a comment in cpg.h + * votequorum.c: Avoid declaration of unused: ‘votequorum_instance_destructor’ + * include/corosync/cpg.h (cpg_deliver_fn_t) [msg]: Add a comment explaining + why this member is not const. + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2169 fd59a12c-fef9-0310-b244-a6a79926bd2f + + avoid 'incompatible pointer type' compiler warning + * test/cpgverify.c (cpg_deliver_fn): Remove const. + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2168 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-05-04 Angus Salkeld <asalkeld@redhat.com> + + add NTF_SERVICE to the service list + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2167 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-04-30 Steven Dake <sdake@redhat.com> + + Do checking of handle code after we verify that handle could actually be in the handle database. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2166 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-04-29 Steven Dake <sdake@redhat.com> + + Implement thread saftey in corosync trunk. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2165 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Fix leak caused by invalid put in hdb_handle_destroy. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2164 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-04-28 Andrew Beekhof <abeekhof@redhat.com> + + Call all configured exec_dump_fn's when SIGUSR2 is received + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2163 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-04-28 Steven Dake <sdake@redhat.com> + + Add cpgverify program to test directory. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2162 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-04-27 Andrew Beekhof <abeekhof@redhat.com> + + Minor fixes to the build process on OSX + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2161 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-04-27 Fabio M. Di Nitto <fdinitto@redhat.com> + + Fix debug: on option for logging purposes + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2160 fd59a12c-fef9-0310-b244-a6a79926bd2f + + add max limit error checks in logsys + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2159 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-04-27 Steven Dake <sdake@redhat.com> + + Add mechanism to use logsysrec from inside totem stack. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2157 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Improve security of NSS implementation in totem. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2156 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-04-26 Steven Dake <sdake@redhat.com> + + Fix evsverify failure. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2155 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-04-26 Fabio M. Di Nitto <fdinitto@redhat.com> + + Fix --enable-nss default in configure.ac + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2154 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-04-26 Steven Dake <sdake@redhat.com> + + Make libnss detection work properly. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2153 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-04-26 Fabio M. Di Nitto <fdinitto@redhat.com> + + Fix pkgconfig file inclusion into release and pass distcheck + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2152 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-04-26 Steven Dake <sdake@redhat.com> + + add Chrissie as author of totem NSS implementation. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2151 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Remove const from delivery callback to allow inplace endian changes of message contents. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2150 fd59a12c-fef9-0310-b244-a6a79926bd2f + + remove "AIS" from cfg.h header file. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2149 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Allow CPP linkage by adding extern "C" {} to external header files. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2148 fd59a12c-fef9-0310-b244-a6a79926bd2f + + remove config.h from public header file. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2147 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Remove useless APIs from coroipcs.c related to handling of overload conditions. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2146 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-04-25 Christine Caulfield <ccaulfie@redhat.com> + + Add libnss security support to corosync. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2145 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-04-24 Fabio M. Di Nitto <fdinitto@redhat.com> + + Bump SONAME to 4.0.0 + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2144 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-04-24 Jim Meyering <jim@meyering.net> + + logsys.c: avoid an unnecessary strlen call + * exec/logsys.c (strcpy_cutoff): Use strlen, then memcpy, + not strcpy, then strlen. + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2143 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-04-24 Jan Friesse <jfriesse@redhat.com> + + Add Jan Friesse (me) to the list of Corosync authors + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2142 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-04-23 Steven Dake <sdake@redhat.com> + + Remove mempool since it is unused and isn't going to be a feature in this release. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2141 fd59a12c-fef9-0310-b244-a6a79926bd2f + + add request_shutdown call to coroapi. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2140 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Add logsys yield counter for the logsys thread. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2139 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-04-23 Jim Meyering <jim@meyering.net> + + corosync.pc.in: Define Cflags + * pkgconfig/corosync.pc.in (Cflags): Define. + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2138 fd59a12c-fef9-0310-b244-a6a79926bd2f + + pkgconfig: correct and clean up Makefile.am + * pkgconfig/Makefile.am: Factor, add missing deps. + (pkgconf_LIBS): Remove unused var. + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2137 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-04-23 Steven Dake <sdake@redhat.com> + + Modify property of loc script to be executable. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2136 fd59a12c-fef9-0310-b244-a6a79926bd2f + + remove rmd.h header file. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2135 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Include file cleanups. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2134 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Cleanup coroipcc.h header file to remove saHandleXXX and friends. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2133 fd59a12c-fef9-0310-b244-a6a79926bd2f + + coroipcs.h cleanup. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2132 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-04-23 Christine Caulfield <ccaulfie@redhat.com> + + This patch removes the (now redundant) call to sync_primary_callback_fn when quorum changes. + As we established a while ago, quorum is independent of sync and all + this code does is segfault when called! + + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2131 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-04-23 Steven Dake <sdake@redhat.com> + + Remove priority inversion in logsys. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2130 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-04-23 Jim Meyering <jim@meyering.net> + + exec/Makefile.am: require that copied code stays in sync + * exec/Makefile.am (check_logsys_log_printf_functions): New rule. + (check): Depend on check_logsys_log_printf_functions. + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2129 fd59a12c-fef9-0310-b244-a6a79926bd2f + + logsys.c: indent consistently + * exec/logsys.c (_logsys_log_printf): Indent with TABs to be + consistent with copied-from function, _logsys_log_vprintf. + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2128 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-04-23 Jan Friesse <jfriesse@redhat.com> + + Make ipc_log_printf function working by adding _logsys_log_vprintf, which is mostly same as _logsys_log_printf but takes va_list as argument. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2127 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-04-23 Steven Dake <sdake@redhat.com> + + use uint64_t for hdb_handle_t type and also specify some formatting strings for printing handles out of the handle database. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2126 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-04-22 Steven Dake <sdake@redhat.com> + + Remove saHandleXXX and friends and use hdb instead. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2125 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-04-22 Jan Friesse <jfriesse@redhat.com> + + Rewrite of CPG. It solves problems with double delete. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2124 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-04-22 Fabio M. Di Nitto <fdinitto@redhat.com> + + Stop hardcoding /var + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2123 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-04-22 Jan Friesse <jfriesse@redhat.com> + + Remove MESSAGE_REQ_CPG_GROUPS_GET call and all function using that. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2122 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-04-22 Fabio M. Di Nitto <fdinitto@redhat.com> + + Kill all asserts from logsys and handle proper error return + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2121 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-04-22 Steven Dake <sdake@redhat.com> + + Add missing header from last commit. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2120 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Reworking of include file dependencies. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2119 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-04-22 Jim Meyering <jim@meyering.net> + + remove empty lines at end-of-file + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2118 fd59a12c-fef9-0310-b244-a6a79926bd2f + + remove all trailing blanks + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2117 fd59a12c-fef9-0310-b244-a6a79926bd2f + + perf: avoid writing 1MB of zero bytes + Don't initialize the entire just-allocated buffer to all zeroes. + The very next lines initialize all members except "data". + * exec/totempg.c (assembly_ref): Initialize the first byte of + assembly->data to 0, just in case someone uses it as a string. + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2116 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-04-22 Steven Dake <sdake@redhat.com> + + Change shared memory to use mmap() system calls. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2115 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Zero copy feature for IPC transmits. Also integrated into CPG library service. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2114 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-04-21 Steven Dake <sdake@redhat.com> + + Remove memory leak from new dispatch circular buffer mapped system. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2113 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-04-21 Jim Meyering <jim@meyering.net> + + rename function: s/strstr_rs/strchr_rs/ to reflect new semantics + * exec/coroparse.c (parse_section): + * exec/util.c (strchr_rs, strstr_rs): + * exec/util.h (corosync_exit_error): + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2112 fd59a12c-fef9-0310-b244-a6a79926bd2f + + rewrite strstr_rs not to use strdup + strstr_rs used strdup and didn't handle failure. This change removes + the use of strdup as well as the uses of strstr, since all callers + passed a string of length 1 as the second argument. This also changes + the prototype so that the 2nd parameter is a byte, not a string. + + * util.h (strstr_rs): Adjust prototype. + * util.c (strstr_rs): Rewrite/simplify. + * sa-confdb.c (strstr_rs): Remove duplicate definition. + * coroparse.c (parse_section): Update callers. + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2111 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-04-21 Fabio M. Di Nitto <fdinitto@redhat.com> + + Fix pthread linking + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2110 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Fix uid and gid determination + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2109 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Move include config.h at the top as it's supposed to be + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2108 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-04-21 Jim Meyering <jim@meyering.net> + + exce/main.c: handle strdup failure + * exec/main.c (main): Upon strdup failure, log the error and exit. + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2107 fd59a12c-fef9-0310-b244-a6a79926bd2f + + remove useless if-before-free tests + * exec/coropoll.c (poll_destroy): Remove useless if. + * exec/main.c (main): Likewise. + * include/corosync/hdb.h (hdb_destroy): Likewise. + * lcr/lcr_ifact.c (scandir): Likewise. + * lib/sa-confdb.c (load_config): Likewise. + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2106 fd59a12c-fef9-0310-b244-a6a79926bd2f + + services/confdb.c: avoid four warnings + * services/confdb.c (m2h): New function. + (message_handler_req_lib_confdb_object_iter): Use m2h rather than a cast. + (message_handler_req_lib_confdb_object_find): Likewise. + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2105 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-04-21 Fabio M. Di Nitto <fdinitto@redhat.com> + + Guarantee that all logging buffers are flushed before we die + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2104 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Add logsys_flush logsys API call to signal the logging thread + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2103 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Add logging configuration backward compatibility layer + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2102 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Fix output filtering when debug is enabled + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2101 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-04-20 Jim Meyering <jim@meyering.net> + + corosync-cfgtool.c: handle strdup failure gracefully + * tools/corosync-cfgtool.c (xstrdup): New function. + (main): Use it in place of strdup. + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2100 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-04-20 Steven Dake <sdake@redhat.com> + + Use spinlocks in library handle references. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2099 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-04-20 Jim Meyering <jim@meyering.net> + + schedwrk.c: avoid two int-pointer cast conversion warnings + * exec/schedwrk.c (void2handle, handle2void): New functions. + (schedwrk_do): Use void2handle rather than an unportable cast. + (schedwrk_create): Use handle2void rather than an unportable cast. + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2098 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-04-20 Fabio M. Di Nitto <fdinitto@redhat.com> + + Fix libconfdb linking + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2097 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Improve logsys error handling in logsys_format_set and logsys_config_file_set_unlocked. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2096 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Rename corosync.conf to corosync.conf.example take 2 + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2095 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Rename corosync.conf to corosync.conf.example + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2094 fd59a12c-fef9-0310-b244-a6a79926bd2f + + readd early log level check for performance reasons. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2093 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-04-20 Steven Dake <sdake@redhat.com> + + throw away mode in totempg was operating as a global variable, when it is possible for different nodes to be in different configurations of throw away. This patch makes the variable instanced. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2092 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-04-20 Fabio M. Di Nitto <fdinitto@redhat.com> + + Add logsys v3 + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2091 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-04-18 Steven Dake <sdake@redhat.com> + + Add missing schedwrk files. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2090 fd59a12c-fef9-0310-b244-a6a79926bd2f + + add schedwrk_create and schedwrk_destroy coroapi functions. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2089 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Initialize pload context properly. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2088 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Move QUICKSTART to INSTALL and update it. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2087 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Add AUTHORS file. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2086 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Remove declaration of data struct inside code. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2085 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Remove warning in evsbench. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2084 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Add fatal error call to ipc initializations.y + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2083 fd59a12c-fef9-0310-b244-a6a79926bd2f + + check result of fgets in testcpg. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2082 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Remove warnings about objdb that casts a const char * to a char *. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2081 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Remove warnings about typedefs in apidef.c. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2080 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Rework how dispatch functions so service engines work properly. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2079 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-04-15 Jim Meyering <jim@meyering.net> + + configure.ac: enable gcc's -Wshadow warning + * configure.ac (WARNLIST): Add -Wshadow to the list. + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2078 fd59a12c-fef9-0310-b244-a6a79926bd2f + + cpg.c: rename file-scoped global to avoid shadowing warnings + * services/cpg.c: s/req_exec_cpg_downlist/g_req_exec_cpg_downlist/ + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2077 fd59a12c-fef9-0310-b244-a6a79926bd2f + + vsf_ykd.c: Rename param to avoid shadowing global "ydk_state" + * exec/vsf_ykd.c (ykd_state_endian_convert): Rename param: + s/ydk_state/state/ + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2076 fd59a12c-fef9-0310-b244-a6a79926bd2f + + services/cfg.c move shadowed decl into scope where used + * services/cfg.c (message_handler_req_lib_cfg_tryshutdown): + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2075 fd59a12c-fef9-0310-b244-a6a79926bd2f + + corosync-fplay.c: don't shadow file-scoped global, "record" + * tools/corosync-fplay.c: Rename: s/record/g_record/. + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2074 fd59a12c-fef9-0310-b244-a6a79926bd2f + + testvotequorum1.c: don't shadow file-scoped global, "handle" + * test/testvotequorum1.c (main): Rename: s/handle/g_handle/. + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2073 fd59a12c-fef9-0310-b244-a6a79926bd2f + + corosync-fplay.c: avoid shadowin: s/index/idx/ + * tools/corosync-fplay.c (printer_totempg_mcast_fits): + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2072 fd59a12c-fef9-0310-b244-a6a79926bd2f + + coroipcs.c: don't shadow functions read and write + * exec/coroipcs.c (req_setup_recv): rename locals: + s/read/n_read/; s/write/n_write. + Also declare param to be const. + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2071 fd59a12c-fef9-0310-b244-a6a79926bd2f + + totemnet.c: don't shadow crypto.h type, "hmac_state" + * exec/totemnet.c (encrypt_and_sign_worker): Rename a local var: + s/hmac_state/hmac_st/ + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2070 fd59a12c-fef9-0310-b244-a6a79926bd2f + + don't shadow file-scoped global, "handle" + * test/testquorum.c: Rename: s/handle/g_handle/. + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2069 fd59a12c-fef9-0310-b244-a6a79926bd2f + + wthread.c: Rename file-scoped type to avoid shadows. + * exec/wthread.c (struct worker_thread_t): Rename from + struct worker_thread. + (start_worker_thread): Rename from function "worker_thread". + * exec/wthread.h (struct worker_thread_group) [threads]: Update + member type: s/struct worker_thread/struct worker_thread_t/ + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2068 fd59a12c-fef9-0310-b244-a6a79926bd2f + + don't shadow the global type name, "timer_handle" + * exec/coropoll.c (poll_timer_delete): Rename locals and/or params. + * exec/timer.c (corosync_timer_delete): Likewise. + (corosync_timer_expire_time_get): Likewise. + * exec/tlist.h (timerlist_del, timerlist_expire_time): Likewise. + (timerlist_pre_dispatch, timerlist_post_dispatch): Likewise. + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2067 fd59a12c-fef9-0310-b244-a6a79926bd2f + + list.h: avoid shadowing warning + * include/corosync/list.h: Don't use "remove" as param name. + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2066 fd59a12c-fef9-0310-b244-a6a79926bd2f + + coroipcc.c: avoid shadowing warning + * lib/coroipcc.c: Don't use "read" as param name. + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2065 fd59a12c-fef9-0310-b244-a6a79926bd2f + + totemsrp.c: more "const" propagation + * exec/totemsrp.c (message_handler_memb_commit_token): Don't cast away + const on "memb_commit_token". This exposed a const violation. + Fix that with minor rearrangement and an added memcpy. + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2064 fd59a12c-fef9-0310-b244-a6a79926bd2f + + totemsrp.c: avoid a const-correctness problem + * exec/totemsrp.c (message_handler_memb_merge_detect): Don't modify + the now-const "msg" parameter. Instead, use a local copy. + Patch by Steven Dake. + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2063 fd59a12c-fef9-0310-b244-a6a79926bd2f + + totemrrp.h, totemsrp.h, totemnet.h: const+size_t + * exec/totemrrp.c (totemrrp_initialize): + * exec/totemrrp.h (totemrrp_initialize): + * exec/totemsrp.c (handler_functions, main_deliver_fn): + (main_iface_change_fn): + * exec/totemnet.c (totemnet_deliver_fn, totemnet_iface_change_fn): + (encrypt_and_sign_worker, ucast_sendmsg, mcast_sendmsg): + (totemnet_mcast_worker_fn, totemnet_initialize): + (totemnet_token_send, totemnet_mcast_flush_send): + (totemnet_mcast_noflush_send, totemnet_token_target_set): + * exec/totemnet.h (TOTEMNET_FLUSH): + * exec/totemrrp.c (totemrrp_deliver_fn, totemrrp_iface_change_fn): + (totemrrp_token_seqid_get, rrp_deliver_fn, rrp_iface_change_fn): + * exec/totemsrp.c (handler_functions, main_token_seqid_get): + (srp_addr_copy_endian_convert, message_handler_orf_token): + (message_handler_mcast, message_handler_memb_merge_detect): + (memb_join_endian_convert, memb_commit_token_endian_convert): + (orf_token_endian_convert, mcast_endian_convert): + (memb_merge_detect_endian_convert, message_handler_memb_join): + (message_handler_memb_commit_token): + (message_handler_token_hold_cancel, main_deliver_fn): + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2062 fd59a12c-fef9-0310-b244-a6a79926bd2f + + * README.devmap: Update a prototype. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2061 fd59a12c-fef9-0310-b244-a6a79926bd2f + + change a few "int msg_len" to "size_t msg_len"; adjust docs + * lib/cpg.c (cpg_mcast_joined): + * lib/evs.c (evs_mcast_joined, evs_mcast_groups): + * man/cpg_initialize.3: + * man/evs_initialize.3: + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2060 fd59a12c-fef9-0310-b244-a6a79926bd2f + + corosync-keygen.c: diagnose a few more failures + * tools/corosync-keygen.c (main): Diagnose short reads, failed mkdir + and fchmod; detect write failure. Close file descriptors. + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2059 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-04-14 Steven Dake <sdake@redhat.com> + + Autodetect build environment for configure for developers. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2058 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-04-10 Steven Dake <sdake@redhat.com> + + Fix compile warning in main.c. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2057 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Cast a const away in an iovector. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2056 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Remove warnings from wthread. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2055 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Remove qualifier check in warnings list. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2054 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Remove admin_state_set and admin_state_get. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2053 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Remove warning in keygen and report error on fchown appropriately. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2052 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Remove warning in corosync-objctl. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2051 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Add spin locks for critical sections in hdb api. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2050 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-04-09 Jim Meyering <jim@meyering.net> + + coroapi.h: Make totem_mcast's *iovec param const. + * include/corosync/engine/coroapi.h (struct corosync_api_v1): + [totem_mcast]: Make *iovec param const. + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2049 fd59a12c-fef9-0310-b244-a6a79926bd2f + + cpg.h, objdb.h, coroaph.h: more const/size_t + * include/corosync/cpg.h (cpg_callbacks_t): + * include/corosync/mar_cpg.h (marshall_to_mar_cpg_name_t): + * lib/cpg.c (cpg_join, cpg_leave): + * lib/cpg.c (cpg_mcast_joined): make iovec const. + * include/corosync/cpg.h (cpg_mcast_joined): update prototype + ... + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2048 fd59a12c-fef9-0310-b244-a6a79926bd2f + + coroapi.h: change lib_handler_fn's *msg to be const + Make a tiny type change and watch it propagate. + * include/corosync/engine/coroapi.h + (struct corosync_lib_handler) [lib_handler_fn]: Change type + of 2nd parameter: s/void *msg/const void *msg/. + Propagate the above into cfg.c and votequorum.c: + * services/cfg.c (message_handler_req_lib_cfg_get_node_addrs): + Constification exposed a bug in this function whereby it mistakenly + modified storage through its now-const *msg parameter. Since it + did that solely to store a temporary result, we've changed it + to use a local variable instead. + * services/votequorum.c (message_handler_req_lib_votequorum_setvotes): + Likewise. + * exec/vsf_quorum.c: add const to msg param. + * services/evs.c: Likewise. + * services/pload.c: Likewise. + * services/cpg.c: Likewise. + * services/confdb.c: Likewise. + * exec/coroipcs.h: signature of coroipcs_handler_fn_lvalue must match + that of lib_handler_fn; noted via main.c. + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2047 fd59a12c-fef9-0310-b244-a6a79926bd2f + + testevsth.c: const+size_t: evs_deliver_fn, evs_confchg_fn + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2046 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-04-08 Jim Meyering <jim@meyering.net> + + coroipcc.h (coroipcc_msg_send_reply_receive): Make res_len size_t. + * include/corosync/coroipcc.h (coroipcc_msg_send_reply_receive): + change type of res_len parameter. + * lib/coroipcc.c (coroipcc_reply_receive): Likewise. + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2045 fd59a12c-fef9-0310-b244-a6a79926bd2f + + sync the rest of the code with previous header changes + * exec/coroipcs.c (coroipcs_response_send) + (coroipcs_dispatch_send): + * exec/coroipcs.h (handler_fn_get): + * include/corosync/cpg.h (cpg_deliver_fn_t, cpg_confchg_fn_t): + * test/cpgbench.c (cpg_bm_confchg_fn, cpg_bm_deliver_fn): + * test/testcpg.c (print_cpgname, DeliverCallback) + (ConfchgCallback): + * test/testcpg2.c (deliver, confch): + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2044 fd59a12c-fef9-0310-b244-a6a79926bd2f + + cpg.h, coroapi.h: more size_t and const changes + * include/corosync/cpg.h (cpg_deliver_fn_t, cpg_confchg_fn_t) + (cpg_groups_get_fn_t): + * include/corosync/engine/coroapi.h (ipc_response_send) + (ipc_dispatch_send, tpg_join, tpg_leave, tpg_groups_mcast) + (tpg_groups_reserve): + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2043 fd59a12c-fef9-0310-b244-a6a79926bd2f + + sync the rest of the code with previous header changes + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2042 fd59a12c-fef9-0310-b244-a6a79926bd2f + + make all priv_data_pt pointers non-"const" + I'd suspected this would be necessary, but until now hadn't + found a case in which it actually was. That case: + totemconfig.c's totem_key_change_notify. + It has a priv_data_pt parameter that is used like this: + + struct totem_config *totem_config = priv_data_pt; + + and totem_config is in turn passed as arg #2 to + totem_volatile_config_read, where it is decidedly non-const. + + git grep -l 'const void \*priv' \ + |xargs perl -pi -e 's,const (void \*priv_data_pt),$1,' + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2041 fd59a12c-fef9-0310-b244-a6a79926bd2f + + coroapi.h, confdb.h, objdb.h: big s/int/size_t/ change + * exec/mainconfig.c (objdb_get_string, objdb_get_int): + * exec/totemconfig.c (objdb_get_string, objdb_get_int) + (totem_config_keyread, totem_key_change_notify): + * include/corosync/confdb.h (confdb_callbacks_t): + * include/corosync/engine/coroapi.h (group_len, object_len) + (key_len, validate_callback, object_key_change_notify_fn_t) + (object_create_notify_fn_t, object_destroy_notify_fn_t) + (object_notify_callback_fn_t, object_reload_notify_fn_t) + (object_create, object_key_create, object_find_create) + (object_key_get, object_key_replace, object_key_delete) + (object_iter, object_key_iter, object_name_get) + (object_key_iter_from, object_key_increment) + (object_key_decrement): + * include/corosync/engine/objdb.h (object_key_change_notify_fn_t) + (object_create_notify_fn_t, object_destroy_notify_fn_t) + (object_len, key_len, validate_callback, object_create) + (object_key_create, object_find_create, object_key_get) + (object_key_replace, object_key_delete, object_iter) + (object_key_iter, object_name_get, object_key_iter_from) + (object_key_increment, object_key_decrement): + * lib/confdb.c (confdb_object_create, confdb_key_create) + (confdb_key_delete, confdb_key_get, confdb_key_increment) + (confdb_key_decrement, confdb_key_replace, confdb_object_find) + (confdb_object_iter, confdb_key_iter): + * lib/sa-confdb.c (confdb_sa_object_create, confdb_sa_key_create) + (confdb_sa_key_delete, confdb_sa_key_get) + (confdb_sa_key_increment, confdb_sa_key_decrement) + (confdb_sa_key_replace, confdb_sa_object_find) + (confdb_sa_object_iter, confdb_sa_key_iter): + * lib/sa-confdb.h: + * services/confdb.c (message_handler_req_lib_confdb_key_replace): + * services/votequorum.c (objdb_get_string, objdb_get_int) + (quorum_key_change_notify, votequorum_objdb_reload_notify): + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2040 fd59a12c-fef9-0310-b244-a6a79926bd2f + + totemconfig.c: don't hard-code "128"... + * exec/totemconfig.c (read_keyfile): Don't hard-code "128". + Use sizeof(...) instead. + Avoid duplicate "close(fd)" calls. + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2039 fd59a12c-fef9-0310-b244-a6a79926bd2f + + totemconfig.c: don't let a key of length > 128 clobber memory + * exec/totemconfig.c (totem_config_keyread): Reject a key with length + greater than that of our private_key buffer. + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2038 fd59a12c-fef9-0310-b244-a6a79926bd2f + + totem.h: use symbolic array dimensions in public struct members + * include/corosync/totem/totem.h: + (TOTEM_PRIVATE_KEY_LEN, TOTEM_RRP_MODE_BYTES): Define. + (struct totem_config): Use the new names, rather than literals. + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2037 fd59a12c-fef9-0310-b244-a6a79926bd2f + + totempg.h: change type of totempg_group.group_len from int to size_t + * include/corosync/totem/totempg.h (struct totempg_group) [group_len]: + Change member type from int to size_t. + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2036 fd59a12c-fef9-0310-b244-a6a79926bd2f + + rmd.h: adjust types (const+size_t) of prototype + * include/corosync/rmd.h: ...even though there are no definitions + for these functions. + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2035 fd59a12c-fef9-0310-b244-a6a79926bd2f + + sync.c: avoid printf format warning + * exec/sync.c (sync_deliver_fn): cast to unsigned long int, use %lu + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2034 fd59a12c-fef9-0310-b244-a6a79926bd2f + + sync.c: avoid warning about now-unused variables + * exec/sync.c (vsf_none, vsf_iface): Remove decls of now-unused + file-scoped variables. + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2033 fd59a12c-fef9-0310-b244-a6a79926bd2f + + convert each "size_t iov_len" declaration to "unsigned int iov_len" + Via this command: + git grep -l -E 'size_t[[:blank:]]+iov_len' \ + | xargs perl -pi -e 's/((?:^|,)\s*)size_t\s+(iov_len)/${1}unsigned int $2/' + + Affected files and (functions/macros): + * exec/totempg.c (totempg_groups_mcast_groups) + (totempg_groups_send_ok_groups): + * include/corosync/evs.h (evs_callbacks_t): + * include/corosync/totem/totempg.h (TOTEMPG_SAFE): + * lib/evs.c (evs_mcast_joined, evs_mcast_groups): + * man/cpg_mcast_joined.3: + * man/evs_mcast_groups.3: + * man/evs_mcast_joined.3: + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2032 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Convert all "int iov_len" decls to "unsigned int iov_len". + Used this command: + git grep -l 'int iov_len' \ + | xargs perl -pi -e 's/((?:^|,)\s*)(int iov_len)/${1}unsigned $2/' + + Here's an approximate (autogenerated by vc-chlog) list of affected + file names and functions/macros: + * README.devmap: + * exec/coroipcs.c (sending_allowed_private_data) + (coroipcs_response_iov_send, msg_send, msg_send_or_queue) + (coroipcs_dispatch_iov_send): + * exec/coroipcs.h (handler_fn_get): + * exec/main.c (deliver_fn, main_mcast): + * exec/main.h (FALSE): + * exec/sync.c (vsf_iface, sync_deliver_fn): + * exec/totemmrp.c (totemsrp_handle_in, pg_deliver_fn) + (totemmrp_deliver_fn, totemmrp_initialize, totemmrp_mcast): + * exec/totemmrp.h (TOTEMMRP_H_DEFINED): + * exec/totemnet.c (iov_len, encrypt_and_sign_worker) + (ucast_sendmsg, mcast_sendmsg, totemnet_token_send): + * exec/totemnet.h (TOTEMNET_FLUSH): + * exec/totempg.c (deliver_fn, totempg_deliver_fn, mcast_msg) + (totempg_groups_initialize, totempg_groups_mcast_joined) + (totempg_groups_joined_reserve): + * exec/totemsrp.c (iov_len, totemsrp_recv, totemsrp_deliver_fn) + (totemsrp_initialize, totemsrp_mcast, token_send): + * exec/totemsrp.h (TOTEMSRP_H_DEFINED): + * exec/vsf_ykd.c (ykd_deliver_fn): + * include/corosync/coroipcc.h (handleInstanceDestructor): + * include/corosync/cpg.h (cpg_callbacks_t): + * include/corosync/engine/coroapi.h (ipc_response_iov_send) + (ipc_dispatch_iov_send, totem_mcast, tpg_init, tpg_joined_mcast) + (tpg_joined_reserve, tpg_groups_mcast, tpg_groups_reserve): + * include/corosync/totem/totempg.h (TOTEMPG_SAFE): + * lib/coroipcc.c (coroipcc_msg_send) + (coroipcc_msg_send_reply_receive) + (coroipcc_msg_send_reply_receive_in_buf): + * lib/cpg.c (cpg_mcast_joined): + * lib/util.h (versionsSupported): + * services/pload.c (send_message): + * services/votequorum.c (conn, quorum_deliver_fn): + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2031 fd59a12c-fef9-0310-b244-a6a79926bd2f + + continue pulling previous thread: mostly constification + * exec/apidef.c (typedef_tpg_join, typedef_tpg_leave) + (typedef_tpg_groups_mcast, typedef_tpg_groups_send_ok): + * exec/sync.c (barrier_data_process, sync_barrier_send) + (sync_start_init, sync_service_init, sync_start_process) + (sync_service_process, sync_deliver_fn, sync_request_send) + (sync_request): + * exec/sync.h (name): + * exec/totemmrp.c (totemmrp_callback_token_create): + * exec/totemmrp.h (TOTEMMRP_H_DEFINED): + * exec/totempg.c (list, app_confchg_fn) + (callback_token_received_fn, totempg_callback_token_create) + (totempg_groups_mcast_joined, totempg_groups_joined_release) + (totempg_groups_mcast_groups): + * exec/totemsrp.c (callback_fn, totemsrp_confchg_fn) + (totemsrp_initialize, totemsrp_callback_token_create): + * exec/totemsrp.h (TOTEMSRP_H_DEFINED): + * exec/vsf_ykd.c (ykd_state_send_msg, ykd_attempt_send_msg) + (ykd_confchg_fn): + * include/corosync/engine/coroapi.h (timer_add_absolute) + (totem_ifaces_print, totem_ip_print, totem_callback_token_create) + (sync_request, plugin_interface_reference): + * include/corosync/totem/totempg.h (TOTEMPG_SAFE): + * services/cpg.c (cpg_confchg_fn): + * services/pload.c (msgs_sent, pload_service_engine) + (send_message, start_mcasting): + * services/votequorum.c (conn, quorum_confchg_fn): + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2030 fd59a12c-fef9-0310-b244-a6a79926bd2f + + *_confchg_fn: make pointer params const, change *_entries to be size_t + * exec/main.c (confchg_fn): + * exec/quorum.h (sync_callback_fn_t): + * exec/sync.c (sync_ring_id, barrier_data_process) + (sync_start_init, sync_service_process, sync_primary_callback_fn) + (sync_deliver_fn, sync_confchg_fn): + * exec/sync.h (name): + * exec/totemmrp.c (totemsrp_handle_in, pg_confchg_fn) + (totemmrp_confchg_fn, totemmrp_initialize): + * exec/totemmrp.h (TOTEMMRP_H_DEFINED): + * exec/totempg.c (confchg_fn, totempg_confchg_fn) + (totempg_groups_initialize): + * include/corosync/engine/coroapi.h (tpg_init, confchg_fn) + (sync_abort): + * include/corosync/totem/totempg.h (TOTEMPG_SAFE): + * services/cfg.c (shutdown_reply, cfg_confchg_fn) + (message_handler_req_exec_cfg_ringreenable): + * services/cpg.c (api, cpg_confchg_fn): + * services/evs.c (MESSAGE_REQ_EXEC_EVS_MCAST, evs_confchg_fn): + * services/pload.c (MESSAGE_REQ_EXEC_PLOAD_MCAST) + (pload_confchg_fn): + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2029 fd59a12c-fef9-0310-b244-a6a79926bd2f + + no-op change: s/gruop/group/ in prototypes and documentation + * include/corosync/engine/coroapi.h (tpg_join, tpg_leave): + * man/evs_mcast_groups.3: + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2028 fd59a12c-fef9-0310-b244-a6a79926bd2f + + totem: const+unsigned+size_t + * exec/totempg.c (totempg_groups_mcast_groups): + (totempg_groups_send_ok_groups): + * include/corosync/totem/totem.h (interface_count): + (private_key_len, threads, heartbeat_failures_allowed): + * include/corosync/totem/totempg.h: + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2027 fd59a12c-fef9-0310-b244-a6a79926bd2f + + rmd.h: s/int/size_t; const-correctness changes... + * include/corosync/rmd.h: in spite of these being unused interfaces + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2026 fd59a12c-fef9-0310-b244-a6a79926bd2f + + lcr_ckpt.h: unused file: const/size_t + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2025 fd59a12c-fef9-0310-b244-a6a79926bd2f + + ipc_evs.h: s/int/size_t + * include/corosync/ipc_evs.h (msglen, member_list_entries): + (left_list_entries, joined_list_entries, group_entries, msg_len): + (group_entries, msg_len, member_list_entries): + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2024 fd59a12c-fef9-0310-b244-a6a79926bd2f + + evs.h: s/int/size_t; const-correctness changes + * exec/sync.c (barrier_data_confchg_entries): + * include/corosync/evs.h (evs_deliver_fn_t, evs_confchg_fn_t): + (evs_callbacks_t): + * lib/evs.c (MIN, evs_join, evs_leave, evs_mcast_joined): + (evs_mcast_groups, evs_membership_get): + * test/evsbench.c (evs_deliver_fn, evs_confchg_fn): + * test/evsverify.c (evs_deliver_fn, evs_confchg_fn, main): + * test/testevs.c (evs_deliver_fn, evs_confchg_fn, main): + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2023 fd59a12c-fef9-0310-b244-a6a79926bd2f + + quorum.h (quorum_set_quorate_fn_t): make first param const + * exec/quorum.h (sync_callback_fn_t): + * exec/sync.c (current_members_cnt, sync_primary_callback_fn): + * exec/sync.h (name): + * exec/vsf_quorum.c (sync_primary_callback_fn): + (quorum_api_set_quorum): + * exec/vsf_ykd.c (ykd_primary_callback_fn): + * include/corosync/engine/coroapi.h (sync_callback_fn_t): + * include/corosync/engine/quorum.h (quorum_set_quorate_fn_t): + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2022 fd59a12c-fef9-0310-b244-a6a79926bd2f + + quorum.h (quorum_set_quorate_fn_t): s/int/size_t/ + propagate the change: + * include/corosync/engine/quorum.h (quorum_set_quorate_fn_t): + * exec/vsf_quorum.c (quorum_view_list_entries): + (quorum_api_set_quorum, quorum_exec_init_fn): + * exec/vsf_ykd.c (ykd_primary_callback_fn): + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2021 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-04-07 Steven Dake <sdake@redhat.com> + + Remove wrong project name. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2020 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Forward port of sync v1 engine from whitetank and rework of quorum engine to not break syncing. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2019 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-04-07 Jim Meyering <jim@meyering.net> + + accommodate iov_len of type size_t (i.e., never negative) + * services/pload.c (send_message): Don't test for iov_len < 0, + since it can no longer happen. + * lib/evs.c: Fix a typo in an iov_len-related FIXME comment. + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2018 fd59a12c-fef9-0310-b244-a6a79926bd2f + + jhash.h (jhash2): make first parameter const + * include/corosync/jhash.h (jhash2): const. + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2017 fd59a12c-fef9-0310-b244-a6a79926bd2f + + lcr_comp.h: size_t + * include/corosync/lcr/lcr_comp.h (struct lcr_comp, struct lcr_iface): + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2016 fd59a12c-fef9-0310-b244-a6a79926bd2f + + list.h (list_empty): Make param const. + * include/corosync/list.h (list_empty): Make param const. + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2015 fd59a12c-fef9-0310-b244-a6a79926bd2f + + mar_cpg.h: make "src" params const. + * include/corosync/mar_cpg.h: + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2014 fd59a12c-fef9-0310-b244-a6a79926bd2f + + mar_gen.h: make params const + * include/corosync/mar_gen.h (get_mar_name_t, mar_name_match): const + * exec/util.h (get_mar_name_t, mar_name_match): Remove unneeded decls. + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2013 fd59a12c-fef9-0310-b244-a6a79926bd2f + + totemip.h: const'ify + * include/corosync/totem/totemip.h: Add const to prototypes. + * exec/totemip.c (totemip_equal, totemip_copy): Adjust. + (totemip_copy_endian_convert, totemip_localhost_check): Likewise. + (totemip_sockaddr_to_totemip_convert): Likewise. + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2012 fd59a12c-fef9-0310-b244-a6a79926bd2f + + sq.h: const'ify, and avoid NULL-deref + * include/corosync/sq.h (sq_init): Avoid NULL-deref on malloc failure. + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2011 fd59a12c-fef9-0310-b244-a6a79926bd2f + + queue.h: Replace #ifdef COROSYNC_SOLARIS... + * include/corosync/queue.h: Remove #ifdef COROSYNC_SOLARIS + in favor of agnostic "#ifdef queue". + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2010 fd59a12c-fef9-0310-b244-a6a79926bd2f + + logsys.h (logsys_format_set): Change return type, adjust param type. + * include/corosync/engine/logsys.h: + * exec/logsys.c (logsys_format_set): Return -1 upon strdup failure. + Change type of param to "const char *". + * exec/logsys.c (logsys_init): Adjust use. + * exec/mainconfig.c (corosync_main_config_read_logging): Adjust uses. + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2009 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-04-03 Steven Dake <sdake@redhat.com> + + Revert constructor priority in logsys. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2008 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Remove extra printf from coropoll. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2007 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Fix timers not expiring. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2006 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-04-03 Jim Meyering <jim@meyering.net> + + remove 3 useless casts + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2005 fd59a12c-fef9-0310-b244-a6a79926bd2f + + confdb.h (confdb_reload) Add errbuf_len parameter and propagate. + * include/corosync/confdb.h (confdb_callbacks_t): + * lib/confdb.c (confdb_reload): + * lib/sa-confdb.c (confdb_sa_reload): + * lib/sa-confdb.h: + * test/testconfdb.c (main): + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2004 fd59a12c-fef9-0310-b244-a6a79926bd2f + + confdb_sa_write: propagate errbuf_len parameter + * lib/sa-confdb.c (confdb_sa_write): Propagate errbuf_len parameter. + * lib/sa-confdb.h: Update prototype + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2003 fd59a12c-fef9-0310-b244-a6a79926bd2f + + confdb.h: error_text vs. buflen + * lib/confdb.c (MIN): Define. + (confdb_write): Use new errbuf_len parameter. + Also note bugs (Chrissie confirms) that error_text is not + set in two error-return cases. + * test/testconfdb.c (do_write_tests): Update use of confdb_write. + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2002 fd59a12c-fef9-0310-b244-a6a79926bd2f + + confdb.h: continue API changes: const+size_t + * include/corosync/confdb.h (confdb_object_create_notify_fn_t): + (confdb_object_delete_notify_fn_t): + * tools/corosync-objctl.c (tail_object_created, tail_object_deleted): + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2001 fd59a12c-fef9-0310-b244-a6a79926bd2f + + print "?" in place of non-printing bytes of obj/key/val values + * tools/corosync-objctl.c: Include <ctype.h> + (print_name): New function. + (tail_key_changed): Use it to avoid printing garbage to screen. + * include/corosync/confdb.h (confdb_key_change_notify_fn_t): Convert + type of "int" length params to "size_t". + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2000 fd59a12c-fef9-0310-b244-a6a79926bd2f + + confdb.h (confdb_key_change_notify_fn_t): Make 3 params "const" + * include/corosync/confdb.h (confdb_key_change_notify_fn_t): + Make 3 params const. + * tools/corosync-objctl.c (find_object_of_type_t, callbacks): + (tail_key_changed): Don't write into would-be-const members. + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1999 fd59a12c-fef9-0310-b244-a6a79926bd2f + + cfg.h: mark "address_length" as an unused member + * include/corosync/cfg.h: Add a FIXME comment. + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1998 fd59a12c-fef9-0310-b244-a6a79926bd2f + + cfg.h: adjust parameter types: const+s/int/size_t/ + * lib/cfg.c (corosync_cfg_get_node_addrs): Make "max_addrs" size_t. + (corosync_cfg_kill_node): Make "reason" const. + * include/corosync/cfg.h: Update prototypes. + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1997 fd59a12c-fef9-0310-b244-a6a79926bd2f + + cfg.h: add const + * lib/cfg.c (corosync_cfg_service_load): Make service_name "const". + (corosync_cfg_service_unload): Likewise. + * include/corosync/cfg.h: Update prototypes. + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1996 fd59a12c-fef9-0310-b244-a6a79926bd2f + + coroipcc. h (coroipcc_dispatch_recv): Add a buflen parameter. + * lib/coroipcc.c (coroipcc_dispatch_recv): Update definition, and... + (memcpy_swrap): ... add a parameter here, too. + * include/corosync/coroipcc.h (coroipcc_dispatch_recv): + * lib/cfg.c (corosync_cfg_dispatch): + * lib/confdb.c (confdb_dispatch): + * lib/cpg.c (cpg_dispatch, cpg_flow_control_state_get): + * lib/evs.c (evs_dispatch): + * lib/quorum.c (quorum_dispatch): + * lib/votequorum.c (votequorum_dispatch): + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1995 fd59a12c-fef9-0310-b244-a6a79926bd2f + + coroipcc.h: add "const" to msg_send_reply_* "iov" parameters + * include/corosync/coroipcc.h (coroipcc_msg_send_reply_receive_in_buf): + Make "iov" const. + * lib/coroipcc.c (coroipcc_msg_send): Make iov const. + (coroipcc_msg_send_reply_receive): Likewise. + (coroipcc_msg_send_reply_receive_in_buf): Likewise. + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1994 fd59a12c-fef9-0310-b244-a6a79926bd2f + + confdb.c: add missing mutex-unlock calls after coroipcc_dispatch_recv + * lib/confdb.c (confdb_dispatch): + The code in lib/cfg.c's (corosync_cfg_dispatch) is nearly identical + to that in lib/confdb.c's (confdb_dispatch), but lacked two + pthread_mutex_unlock calls. + + 2009-04-03 Jim Meyering <meyering@redhat.com> + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1993 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-04-03 Fabio M. Di Nitto <fdinitto@redhat.com> + + Drop unrequired struct + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1992 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Fix logsys construct execution priority + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1991 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-04-02 Steven Dake <sdake@redhat.com> + + Patch to use snprintf where appropriate to avoid buffer overrun. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1990 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-04-01 Jim Meyering <jim@meyering.net> + + corosync-objctl.c: remove a just-added "const" + * tools/corosync-objctl.c (get_key): Remove just-added const from + 2nd parameter. + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1989 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-04-01 Steven Dake <sdake@redhat.com> + + Patch to document uid/gid and to default to allowing ais user to access services of corosync. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1988 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-04-01 Fabio M. Di Nitto <fdinitto@redhat.com> + + add fileline/function_name support in corosync + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1987 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Fix last build warning in mainconfig. + Add a missing const. + + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1986 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-04-01 Jim Meyering <jim@meyering.net> + + remove unused file-scoped global + * tools/corosync-fplay.c (records_printed): Remove. + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1985 fd59a12c-fef9-0310-b244-a6a79926bd2f + + avoid prototype warnings, constify + * tools/corosync-fplay.c: Make many parameters and local pointers const. + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1984 fd59a12c-fef9-0310-b244-a6a79926bd2f + + remove unused functions and variable + * tools/corosync-fplay.c (sync_printer_nada): Remove function. + * tools/corosync-objctl.c (get_child_name): Remove function. + * test/evsverify.c (msg): Remove unused variable. + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1983 fd59a12c-fef9-0310-b244-a6a79926bd2f + + avoid prototype warnings + * test/evsbench.c: Declare functions/vars static. + * test/evsverify.c: Likewise. + * test/testcpg2.c: Likewise. + * test/testcpg.c: Likewise. + * test/logsysbench.c: Likewise. + * test/cpgbench.c: Likewise. + * exec/sync.c: Likewise. + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1982 fd59a12c-fef9-0310-b244-a6a79926bd2f + + * test/testevs.c: avoid 2 warnings, decl "static" + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1981 fd59a12c-fef9-0310-b244-a6a79926bd2f + + declare many functions "static" (also avoids missing prototype warnings) + * exec/main.c (sigintr_handler, serialize_lock, serialize_unlock): + (serialize_lock, serialize_unlock): + * exec/sync.c (sync_start_init, sync_callbacks_load): + * exec/vsf_ykd.c (ykd_state_init): + * lcr/uis.c (cmd1): + * services/pload.c (send_message, token_callback, start_mcasting): + * tools/corosync-cfgtool.c (service_load_do, service_unload_do): + (shutdown_do, showaddrs_do, killnode_do, usage_do): + * tools/corosync-fplay.c (totemip_print, print_string_len): + (sync_printer_confchg_set_sync, sync_printer_set_sync_state): + (sync_printer_process_currentstate): + (sync_printer_process_get_shouldsync): + (sync_printer_checkpoint_release): + (sync_printer_checkpoint_transmit, sync_printer_section_transmit): + (sync_printer_checkpoint_receive, sync_printer_section_receive): + (sync_printer_nada, sync_printer_confchg_fn): + (printer_totemsrp_mcast, printer_totemsrp_delv): + (printer_totempg_mcast_fits, sync_printer_service_process): + * tools/corosync-objctl.c (get_child_name, get_parent_name): + (get_key): + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1980 fd59a12c-fef9-0310-b244-a6a79926bd2f + + * exec/apidef.c: Include "apidef.h". + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1979 fd59a12c-fef9-0310-b244-a6a79926bd2f + + timer.c: connect with its published prototypes + * exec/timer.c: Include "timer.h". + * exec/timer.h (corosync_timer_init): Make return type in prototype + match the one in the function definition. + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1978 fd59a12c-fef9-0310-b244-a6a79926bd2f + + add "void" parameter list to avoid "isn't prototype" warning + * exec/objdb.c (objdb_wrlock, objdb_rdlock, objdb_rdunlock): + (objdb_wrunlock): + * services/cfg.c (send_shutdown, check_shutdown_status): + * services/votequorum.c (send_expectedvotes_notification): + * tools/corosync-cfgtool.c (shutdown_do): + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1977 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-04-01 Fabio M. Di Nitto <fdinitto@redhat.com> + + Fix internal API usage and add support for file_name + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1976 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Fix build warning + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1975 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-03-30 Jim Meyering <jim@meyering.net> + + totemip.c: avoid 1 warning + * exec/totemip.c (totemip_print): Add const. + * include/corosync/totem/totemip.h: Ditto. + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1974 fd59a12c-fef9-0310-b244-a6a79926bd2f + + evsverify.c: avoid 1 warning + * test/evsverify.c: Add a const. + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1973 fd59a12c-fef9-0310-b244-a6a79926bd2f + + testcpg.c: avoid 1 warning + * test/testcpg.c (sigintr_handler): Mark as "noreturn". + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1972 fd59a12c-fef9-0310-b244-a6a79926bd2f + + evsbench.c: avoid 1 warning + * test/evsbench.c (sigintr_handler): Mark as "noreturn". + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1971 fd59a12c-fef9-0310-b244-a6a79926bd2f + + apidef.c: avoid 1 warning + * exec/apidef.c (_corosync_public_exit_error): Mark as "noreturn". + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1970 fd59a12c-fef9-0310-b244-a6a79926bd2f + + main.h: avoid 1 warning + * exec/main.c (corosync_exit): Mark as "noreturn". + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1969 fd59a12c-fef9-0310-b244-a6a79926bd2f + + logsys.c: avoid 1 warning + * exec/logsys.c (logsys_conf): Add const. + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1968 fd59a12c-fef9-0310-b244-a6a79926bd2f + + util.h: avoid 2 warnings + * exec/util.h (_corosync_out_of_memory_error): Mark as "noreturn". + (_corosync_exit_error): Likewise. + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1967 fd59a12c-fef9-0310-b244-a6a79926bd2f + + logsys.c: avoid 1 warning + * exec/logsys.c (logsys_worker_thread): Mark function as "noreturn". + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1966 fd59a12c-fef9-0310-b244-a6a79926bd2f + + wthread.c: avoid 1 warning + * exec/wthread.c (worker_thread): Mark function as "noreturn". + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1965 fd59a12c-fef9-0310-b244-a6a79926bd2f + + uis.c: don't infloop upon poll failure (e.g., ENOMEM) + * lcr/uis.c (lcr_uis_server): Return NULL for any poll failure + other than EINTR. This also avoids a warning. + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1964 fd59a12c-fef9-0310-b244-a6a79926bd2f + + mar_gen.h, cfg.c: avoid 1 warning + * services/cfg.c (message_handler_req_exec_cfg_killnode): + * include/corosync/mar_gen.h (marshall_to_mar_name_t): + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1963 fd59a12c-fef9-0310-b244-a6a79926bd2f + + mainconfig.c: avoid 2 warnings + * exec/mainconfig.c (uid_determine, gid_determine): Add const. + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1962 fd59a12c-fef9-0310-b244-a6a79926bd2f + + service.c: avoid 5 warnings + * exec/service.c (struct default_service): Make "name" const. + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1961 fd59a12c-fef9-0310-b244-a6a79926bd2f + + totempg.h: avoid a warning + * include/corosync/totem/totempg.h (struct totempg_group): + Make "group" const. + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1960 fd59a12c-fef9-0310-b244-a6a79926bd2f + + main.c: avoid a few warnings FIXME: merge with another? + * exec/main.c (ipc_log_printf): Add const. + (main): tweak config_iface handling + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1959 fd59a12c-fef9-0310-b244-a6a79926bd2f + + testvotequorum1.c: avoid 5 warnings + * test/testvotequorum1.c (node_state): Return "const char *". + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1958 fd59a12c-fef9-0310-b244-a6a79926bd2f + + evsbench.c; avoid a format mismatch warning + * test/evsbench.c (evs_deliver_fn): %s vs. void* + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1957 fd59a12c-fef9-0310-b244-a6a79926bd2f + + coroparse.c: add const: avoid 2 warnings + * exec/coroparse.c: Add const. Tweak s/fp==0/fp==NULL/ + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1956 fd59a12c-fef9-0310-b244-a6a79926bd2f + + services/testquorum.c: avoid a warning + * services/testquorum.c (key_change_notify): Add const attributes. + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1955 fd59a12c-fef9-0310-b244-a6a79926bd2f + + avoid format mismatch warning + * test/testquorum.c (quorum_notification_fn): Add casts to + match formats. Use unsigned formats for unsigned values. + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1954 fd59a12c-fef9-0310-b244-a6a79926bd2f + + testcpg2.c: avoid 1 warning + * test/testcpg2.c (main): Add a const-discarding cast. + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1953 fd59a12c-fef9-0310-b244-a6a79926bd2f + + testevs.c: avoid 2 more warnings + * test/testevs.c: Declare global to be "static const". + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1952 fd59a12c-fef9-0310-b244-a6a79926bd2f + + * test/testcpg.c (main): Remove decl of unused var. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1951 fd59a12c-fef9-0310-b244-a6a79926bd2f + + confdb.c, objdb.h, coroapi.h: add a few const, remove one: 4 fewer warnings + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1950 fd59a12c-fef9-0310-b244-a6a79926bd2f + + confdb.c: add a few const: avoid 3 more + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1949 fd59a12c-fef9-0310-b244-a6a79926bd2f + + coroipcs.h: avoid 3 warnings + * exec/coroipcs.h: Forward-declare "struct iovec". + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1948 fd59a12c-fef9-0310-b244-a6a79926bd2f + + avoid 1 warning + * services/evs.c (message_handler_req_exec_mcast): Introduce + a deliberate const-discarding cast and mark it with a comment. + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1947 fd59a12c-fef9-0310-b244-a6a79926bd2f + + object_write_config: add const to remove one more + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1946 fd59a12c-fef9-0310-b244-a6a79926bd2f + + logsys.c: fix two more warnings + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1945 fd59a12c-fef9-0310-b244-a6a79926bd2f + + merge with "in progress" -- down 6 to 73 warnings + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1944 fd59a12c-fef9-0310-b244-a6a79926bd2f + + in progress: avoid warnings + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1943 fd59a12c-fef9-0310-b244-a6a79926bd2f + + votequorum.c (votequorum_qdisk_register): add "const" to avoid 1 more warnings + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1942 fd59a12c-fef9-0310-b244-a6a79926bd2f + + votequorum.c: add "const" to avoid 2 more warnings + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1941 fd59a12c-fef9-0310-b244-a6a79926bd2f + + avoid 3 warnings + votequorum.c (kill_reason): Use "const char*" as return type, not "char *". + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1940 fd59a12c-fef9-0310-b244-a6a79926bd2f + + avoid 7 warnings + (struct sync_callbacks), (struct corosync_service_engine) [name]: + Make member const. + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1939 fd59a12c-fef9-0310-b244-a6a79926bd2f + + votequorum.c: add "const" to avoid 2 more warnings + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1938 fd59a12c-fef9-0310-b244-a6a79926bd2f + + totem*: add "const" to avoid 3 more warnings + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1937 fd59a12c-fef9-0310-b244-a6a79926bd2f + + totem*: add "const" to avoid 1 more warning + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1936 fd59a12c-fef9-0310-b244-a6a79926bd2f + + totem*: add "const" to avoid 1 more warning + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1935 fd59a12c-fef9-0310-b244-a6a79926bd2f + + vsf_type: add "const" to avoid warning + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1934 fd59a12c-fef9-0310-b244-a6a79926bd2f + + totemconfig.c: avoid another warning + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1933 fd59a12c-fef9-0310-b244-a6a79926bd2f + + * exec/totemconfig.c: eliminate 8 const-related warnings + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1932 fd59a12c-fef9-0310-b244-a6a79926bd2f + + objdb.c (object_reload_config): add const + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1931 fd59a12c-fef9-0310-b244-a6a79926bd2f + + * exec/objdb.c (object_create): make "object_name" param const + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1930 fd59a12c-fef9-0310-b244-a6a79926bd2f + + add const to 3 params + * include/corosync/engine/objdb.h (object_key_change_notify_fn_t): + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1929 fd59a12c-fef9-0310-b244-a6a79926bd2f + + objdb.c, etc: add "const" to avoid warnings + * exec/objdb.c: + * include/corosync/engine/coroapi.h: + * include/corosync/engine/objdb.h: + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1928 fd59a12c-fef9-0310-b244-a6a79926bd2f + + uis.c: avoid warnings + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1927 fd59a12c-fef9-0310-b244-a6a79926bd2f + + corosync-fplay.c: make more robust, avoid warnings + * tools/corosync-fplay.c (main): Diagnose malloc,open, and read failures + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1926 fd59a12c-fef9-0310-b244-a6a79926bd2f + + service.[ch]: remove 7 const-related warnings + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1925 fd59a12c-fef9-0310-b244-a6a79926bd2f + + coroipcs.[ch]: remove 4 const-related warnings + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1924 fd59a12c-fef9-0310-b244-a6a79926bd2f + + totempg.c: remove one const-related warning + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1923 fd59a12c-fef9-0310-b244-a6a79926bd2f + + objdb.h: sync const-related from coroapi.h + * include/corosync/engine/objdb.h: mirror const-related changes + to coroapi.h. FIXME: all of these identical API's should not + be separately modifiable. + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1922 fd59a12c-fef9-0310-b244-a6a79926bd2f + + totempg.c: remove one const-related warning + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1921 fd59a12c-fef9-0310-b244-a6a79926bd2f + + pload.c: make a couple functions/interfaces const-correct + * services/pload.c: Remove unused file-scoped global "msg_no". + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1920 fd59a12c-fef9-0310-b244-a6a79926bd2f + + logsys_config_facility_set: make "name" parameter const + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1919 fd59a12c-fef9-0310-b244-a6a79926bd2f + + cfg.c: nearly warning-free + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1918 fd59a12c-fef9-0310-b244-a6a79926bd2f + + cpg.c: resolve almost all warnings + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1917 fd59a12c-fef9-0310-b244-a6a79926bd2f + + timer.c: don't infloop upon poll failure (e.g., ENOMEM) + * exec/timer.c (prioritized_timer_thread): Remove unreached + call to pthread_exit after infloop. + Return NULL for any poll failure other than EINTR. + Use "continue" rather than an equivalent "goto". + Return NULL upon failed pthread_setschedparam. + This also avoids a warning. + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1916 fd59a12c-fef9-0310-b244-a6a79926bd2f + + logsys: detect write failure and avoid a file descriptor leak + * exec/logsys.c (logsys_log_rec_store): Close output file descriptor + and detect any failure. + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1915 fd59a12c-fef9-0310-b244-a6a79926bd2f + + totemconfig: avoid a file descriptor leak in the common case + * exec/totemconfig.c (read_keyfile): Don't leak a file descriptor. + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1914 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-03-30 Fabio M. Di Nitto <fdinitto@redhat.com> + + Fix pkgconfig generation + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1913 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-03-25 Steven Dake <sdake@redhat.com> + + Make all threads use same scheduling priority even with -p option specified to avoid deadlock in spinlocks. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1912 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-03-25 Christine Caulfield <ccaulfie@redhat.com> + + Fix IPC when running on mac OS/X + Note that OS/X seems to be rather stingy about its IPC resources, so if things + crash you will probably have to clean up before starting it all again. + + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1911 fd59a12c-fef9-0310-b244-a6a79926bd2f + + The IPC system smply concatenates SOCKETDIR with run/<socketname> so if th euser forgets to add a trailing slash to the name: eg + ./configure --with-socket-dir=/var/run + + then the socket is created as /var/runcorosync.ipc + + This patch adds the slash into the name generation printf. + + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1910 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-03-24 Steven Dake <sdake@redhat.com> + + Appears to fix compile errors on macosx. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1909 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Change strcpy to sprintf to fix compile error. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1908 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-03-24 Jim Meyering <jim@meyering.net> + + Do not perform arithmetic on "void*" pointers. + * exec/vsf_ykd.c (ykd_deliver_fn): Do not perform "void*" arithmetic. + * services/votequorum.c (quorum_deliver_fn): Likewise. + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1907 fd59a12c-fef9-0310-b244-a6a79926bd2f + + avoid performing 'void *' arithmetic, and add a few const attributes + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1906 fd59a12c-fef9-0310-b244-a6a79926bd2f + + avoid 6 warnings + * services/votequorum.c (objdb_get_int): Make "key" const. + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1905 fd59a12c-fef9-0310-b244-a6a79926bd2f + + avoid 8 warnings + * exec/totemconfig.c (objdb_get_string): Make "key" const. + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1904 fd59a12c-fef9-0310-b244-a6a79926bd2f + + avoid 9 warnings + * test/logsysbench.c (bm_finish): Make parameter "const". + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1903 fd59a12c-fef9-0310-b244-a6a79926bd2f + + avoid 13 warnings + * exec/mainconfig.c (objdb_get_string): Make "key" const. + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1902 fd59a12c-fef9-0310-b244-a6a79926bd2f + + avoid 22 warnings + * exec/totemconfig.c (objdb_get_int): Make "key" const. + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1901 fd59a12c-fef9-0310-b244-a6a79926bd2f + + avoid compiler warnings + * lcr/lcr_ifact.c (lcr_component_register): Remove decl of unused var. + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1900 fd59a12c-fef9-0310-b244-a6a79926bd2f + + avoid infloop upon out-of-memory or out-of-semaphores + * coroipc.c (cslib_service_connect): Upon shmget failure + loop only when errno == EEXIST. Any other error now translates + to res_setup.error. + Likewise for semget. + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1899 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-03-24 Fabio M. Di Nitto <fdinitto@redhat.com> + + Make confdb log level consistent with the other services + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1898 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-03-23 Fabio M. Di Nitto <fdinitto@redhat.com> + + Fix expansion order within the Makefile.am with the pleasent effect to avoid to include .lcrso files in make dist target + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1895 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-03-23 Jim Meyering <jim@meyering.net> + + autogen.sh: prefer "automake" over automake-1.9 + * autogen.sh: ...and don't accept ancient versions of automake. + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1893 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-03-23 Steven Dake <sdake@redhat.com> + + Change dist to build corosync-trunk.tar.gz. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1891 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-03-22 Fabio M. Di Nitto <fdinitto@redhat.com> + + Fix pkgconfig list of libraries we provide after ipc rework + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1890 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Fix 64bit alignment issue in totempg + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1889 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-03-22 Steven Dake <sdake@redhat.com> + + Change OPENAIS to COROSYNC in libversions definitions. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1888 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Change OPENAIS to COROSYNC in ipc ifdefs. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1887 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Allow ipcc library to work on some arches which have different parameter passing requirements for enums. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1886 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Abstracted Shared Memory IPC library + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1885 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-03-21 Steven Dake <sdake@redhat.com> + + This patch fixes a crash in cpg.c where a group is left befopre cpg_finalise is called. It can cause the process_info structure to be removed twice from the group list. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1884 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-03-20 Jim Meyering <jim@meyering.net> + + avoid buffer overrun when there are more than 128 path entries + * lcr_ifact.c (PATH_LIST_SIZE): Define. + (path_list): Use it. + (ld_library_path_build): Don't store into path_list[path_list_entries] + if the counter is too large. + (ldso_path_build): Likewise. + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1883 fd59a12c-fef9-0310-b244-a6a79926bd2f + + don't store (and later deref) NULL upon strdup failure + * lcr_ifact.c (ld_library_path_build, ldso_path_build): + Handle strdup failure. + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1882 fd59a12c-fef9-0310-b244-a6a79926bd2f + + don't segfault upon failed strdup + * sa-confdb.c (load_config): Handle out-of-memory. + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1881 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-03-20 Steven Dake <sdake@redhat.com> + + Revert last change which broke corosync. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1880 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Reworked not to require stmt-after-decl support, plus another to fix a bug that would arise when parsing more than 128 paths. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1879 fd59a12c-fef9-0310-b244-a6a79926bd2f + + While looking at used of LCRSODIR, I saw an unchecked strdup. That could lead to a NULL dereference. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1878 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-03-19 Fabio M. Di Nitto <fdinitto@redhat.com> + + - Every .c file should include "config.h" to get the right defines... + - services/Makefile.am: add include search paths for config.h + + - include/corosync/cs_config.h.in exports LCRSODIR and SOCKETDIR + + - tools/Makefile.am: drop -D defines for dirs that are now in + cs_config.h or config.h + + - configure.ac: sanitize prefix and exec_prefix paths. Export DIRS in + *config.h + + - lib/Makefile.am: : drop -D defines for dirs that are now in + cs_config.h or config.h. Add rule to build lcr_ifact.o or building from + lib/ fails miserably + + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1877 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-03-19 Steven Dake <sdake@redhat.com> + + Remove some unnecessary serializer functions. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1876 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Dont clobber stck on strings with length of zero. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1875 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Don't clobber stack on strings with length of zero. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1874 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Updated TODO for corosync. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1873 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-03-19 Fabio M. Di Nitto <fdinitto@redhat.com> + + Fix corosync.pc installation + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1872 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Add missing libs from pkgconfig generation + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1871 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Fix logsys SONAME + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1870 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Don't use EXTRA_DIST in install/uninstall + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1869 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-03-18 Steven Dake <sdake@redhat.com> + + Serialize access to service engines. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1868 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Fix coroapi.h header errors. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1867 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-03-18 Fabio M. Di Nitto <fdinitto@redhat.com> + + Add missing uninstall-local targets and fix configuration intall target + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1866 fd59a12c-fef9-0310-b244-a6a79926bd2f + + More cleanup for distcheck to work + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1865 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-03-18 Christine Caulfield <ccaulfie@redhat.com> + + Add a dummy parameter to totemip_iface check so that it compiles on Darwin. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1864 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-03-18 Fabio M. Di Nitto <fdinitto@redhat.com> + + Fix DARWIN_OPTS expansion + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1863 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Fix more soname= at linking + Start fixing distcheck + + White space cleanups + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1862 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-03-17 Fabio M. Di Nitto <fdinitto@redhat.com> + + - tidy up whitespaces + - try to keep everything < 80 cols + + - stop installing testing lcrso + + - fix soname= invokation + + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1861 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Fix doc stuff + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1860 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Update index.html to reflect new changes in man/Makefile.am + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1859 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Drop tarball name from AC_INIT as it confuses the hell out of what we need + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1858 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Fix the whole manpage stuff + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1857 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Add support for SOCKETDIR + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1856 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Add corosync.pc support + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1855 fd59a12c-fef9-0310-b244-a6a79926bd2f + + remove hardcoded /var and use localstatedir instead. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1854 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-03-16 Fabio M. Di Nitto <fdinitto@redhat.com> + + configure.ac: - Fix white space for --help. - Drop LCRSODIR as global and move it to local directory. + all */Makefile.am: + - export -DDIRECTORY_NAME as required (for now only LCRSO and + SYSCONFDIR) + + top level Makefile.am: + - drop hardcoded ETCDIR that is just wrong and use the configured one + + *.c files around: + - drop hardcoded ETCDIR and use configured one. + + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1853 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Fix LCRSO handling + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1852 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Make everything < 80 cols + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1851 fd59a12c-fef9-0310-b244-a6a79926bd2f + + remove comment + fix quoting + + make GCC test portable + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1850 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Major configure.in/ac cleanup + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1849 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-03-13 Fabio M. Di Nitto <fdinitto@redhat.com> + + - Fix macro typo for PROG_CC_C_O. + - add --enable-debug configure option to #define DEBUG 1 and set + compiler options to default to -O0. + + - restore default -O3. + + - Drop some random leftovers (CC_IN_CONFIGURE, AISPREFIX, SSH path check + and ppc64 -m64). + + - Remove yet another GCC test as -g is automatically detected by + autoconf macros. + + - Cleanup a bit deprecated ARCH section. + + - Tidy up RESULT section. + + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1848 fd59a12c-fef9-0310-b244-a6a79926bd2f + + - remove --enable-static option as it is not required. This was a leftover from gcc-2.x something time. corosync binary should always be built dynamic. + - fix quorum_* target as it was missing the list of objects to be linked + in.. doh! + + - fix object dependencies between TARGET, TARGET_OBJS and TARGET_SRC. + This also fixes the build/relink issues at install times that have been + noted before. + + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1847 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-03-12 Steven Dake <sdake@redhat.com> + + All integers received from objdb_get_int had invalid handle type. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1846 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Use nocheck flagging on confchg iteration of handle ids. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1845 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-03-12 Christine Caulfield <ccaulfie@redhat.com> + + Fix testconfdb use of object handles. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1844 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-03-12 Steven Dake <sdake@redhat.com> + + Set correct OBJECT_PARENT_HANDLE define in coroapi.h + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1843 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Add handle checking to the hdb system. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1842 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Fix several errors in objdb notification handling, hdb_handle_t type conversion errors, indentation, and do hdb_handle_put after instance data is used instead of before. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1841 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Use hdb_handle_t for handle type in service.c. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1840 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Use hdb_handle_t for handle type in lcr_ifact. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1839 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-03-11 Fabio M. Di Nitto <fdinitto@redhat.com> + + Fix library linking + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1838 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Fix more build/install glitches + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1837 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-03-11 Steven Dake <sdake@redhat.com> + + Fix broken error check in commit 1818. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1836 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-03-11 Fabio M. Di Nitto <fdinitto@redhat.com> + + 1) kill all those "for" shell loops. They are dangerous (as they don't report install failures) and it's just overhead since $(INSTALL) can do the same. + 2) make sure to create our directories with $(INSTALL). Not sure I did + catch them all yet, but at least a good bunch. This also fix the + corosync.conf install error I introduced in the previous commit. + + 3) Handle SONAME automatically. This is the most intrusive change across + the board: + + * configure.in now defines the system wide SOMAJOR, SOMINOR, SOMICRO + and SONAME and exports them to the Makefile. + * exec/Makefile.am, lib/Makefile.am are now updated to use those vars + rather than hardcoded version. + + 4) Bump the SOMAJOR to 3 as agreed since we did change both API and ABI. + + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1835 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Dear pacemaker.. you will not take over this project! MUAHAH + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1834 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Drop ld.conf file that is now unrequired + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1833 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Readd pkgconfig subdir to the build system and port it to autoconf + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1832 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Add entries to maintainer-clean target + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1831 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-03-11 Steven Dake <sdake@redhat.com> + + Remove warnings from coroipc.c. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1830 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Remove warnings from ipc.c + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1829 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-03-10 Christine Caulfield <ccaulfie@redhat.com> + + Fix some const warnings + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1828 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-03-10 Fabio M. Di Nitto <fdinitto@redhat.com> + + Add dynamic timestamp on/off + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1827 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-03-10 Steven Dake <sdake@redhat.com> + + Remove const warnings in crypto.c. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1826 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Remove qualifier errors in main.c + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1825 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Remove const warnings from uic system. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1824 fd59a12c-fef9-0310-b244-a6a79926bd2f + + change some char * to const char * to match usage in system in lcr. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1823 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Fix const qualifiers in lcr_ifact.c. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1822 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Fix missing prototypes in totempg.c. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1821 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Fix missing prototypes in totemmrp. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1820 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Fix missing prototypes and mismatched prototypes in totemmrp. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1819 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Add missing hdb_handle_put in totemsrp and handle errors in mkdir and chdir properly. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1818 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Remove string literal warnings from totemsrp. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1817 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Add missing prototypes in totemsrp. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1816 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Remove pointer math warnings from totemsrp. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1815 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Define undefined prototypes + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1814 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Remove string literal warnings from totemrrp. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1813 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Remove const warnings from main.c. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1812 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Remove type casting to (char *) in logsys.h. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1811 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Remove pointer math from totempg. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1810 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Remove pointer math warnings from totemnet. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1809 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Remove const warnings in totemip code. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1808 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-03-10 Christine Caulfield <ccaulfie@redhat.com> + + Quorum checks the ring ID is new before initiating a sync. Unfortunately it copies the ring ID BEFORE checking it so there is always a match. + Sigh + + This patch fixes it. + + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1807 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-03-10 Steven Dake <sdake@redhat.com> + + Remove const warnings relating to logsys global definitions. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1806 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Remove logsys warnings. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1805 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Remove const warnings in totempg. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1804 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Remove const warnings from totemsrp. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1803 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Remove qualifier warnings regarding totemrrp. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1802 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Remove const/nonconst assignment warnings in totemnet. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1801 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Remove leftover from automake merge. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1800 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Add missing committed file for automake. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1799 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Automake. The journey begins. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1798 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-03-10 Fabio M. Di Nitto <fdinitto@redhat.com> + + Add logsys_format_get to logsys API. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1797 fd59a12c-fef9-0310-b244-a6a79926bd2f + + logsys_format_set should use its own internal copy of format_buffer + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1796 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-03-09 Fabio M. Di Nitto <fdinitto@redhat.com> + + Cleanup logsys format init around to use default settings + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1795 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-03-06 Christine Caulfield <ccaulfie@redhat.com> + + The IPC patch broke CFG shutdown in several places, this patches fixes all of them. + In particular, cfg_try_shutdown asks all applications that are + registered for callbacks if they approve the shutdown. This caused a bit + of a re-entrancy problem because it also asked the process that called + for the shutdown! The patch causes cfg to only ask OTHER applications in + the assumption that any application that calls + corosync_cfg_tryshutdown() will approve of the action :-) + + In addition it adds the response to cfg_replyto_shutdown which was + missing (it couldn't be used with the old system but is mandatory now), + and removes a double-free in the library finalise code. + + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1794 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-03-06 Steven Dake <sdake@redhat.com> + + Add reserve/release functionality to totem to reserve message queue space. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1793 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-03-06 Fabio M. Di Nitto <fdinitto@redhat.com> + + Allow logsys_format_set to reset to default. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1792 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-03-06 Steven Dake <sdake@redhat.com> + + Use list_del on process info in the condition that lib_exit_fn is called to prevent segfault from processes later processing that list entry. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1791 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-03-04 Fabio M. Di Nitto <fdinitto@redhat.com> + + logsys: re-add support for timestamp that was lost in the upgrade from v1 to v2 + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1790 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Fix logsys_set_format by updating the right bits + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1789 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-03-03 Fabio M. Di Nitto <fdinitto@redhat.com> + + Fix uninitialized memory. Spotted by valgrind + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1788 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-03-03 Steven Dake <sdake@redhat.com> + + Rework a bit of how lib_exit_fn works so that reference counts may be used in the exit functions for services such as cpg. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1786 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Lock cpg ipc connections into memory on lib_init_fn and remove lock on lib_exit_fn. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1785 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-02-26 Christine Caulfield <ccaulfie@redhat.com> + + This patch fixes some minor bugs in the expected_votes behaviour and adds a couple of new features: + - When total_votes exceeds the expected_votes value then expected_votes + is increased to that value. + + - A callback can be sent to a client whenever expected_votes is changed + + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1784 fd59a12c-fef9-0310-b244-a6a79926bd2f + + The current object database allows duplicate key names per object. This is a bit of a nightmare to manage and provides no useful functionality that I can see. Making keys unique has been discussed on IRC several times and there seem to be no objections...so here is the patch: + Note that I have removed some now-useless parameters from the objdb API + too. + + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1783 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-02-25 Steven Dake <sdake@redhat.com> + + Unification around hdb_handle_t data type. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1782 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Send configuration changes to CPG listeners. (regression in IPC patch). + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1781 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-02-25 Fabio M. Di Nitto <fdinitto@redhat.com> + + Install corosync-fplay and corosync-pload binaries + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1780 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-02-25 Steven Dake <sdake@redhat.com> + + Fix possible segfault with IPC service. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1779 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Remove extra printf debug. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1778 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-02-24 Steven Dake <sdake@redhat.com> + + Remove installation of static libcoroipc.a. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1777 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Fix problem with 1722 commit which broke ipc. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1776 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-02-23 Christine Caulfield <ccaulfie@redhat.com> + + Move VOTEQUORUM_SERVICE to ipc_gen.h where it belongs. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1775 fd59a12c-fef9-0310-b244-a6a79926bd2f + + When a quorum device registers it tells the corosync quorum engine of the new quorum which then tries to do a new sync(). But that's no use because the nodelist and ring_id is identical to before. Also it can try and register while a sync is already in operation ... which gets it awfully stuck! + So this patch makes the sync conditional on there being a new ring ID to + do a sync on. + + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1774 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-02-20 Christine Caulfield <ccaulfie@redhat.com> + + Fix problem in disallowed mode that prevented a HASSTATE node joining a cluster without state or vice-versa see Red Hat BZ#485026 + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1773 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Don't crash if a library tries to talk to a module that is not loaded + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1772 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Allow CPG messages to be sent on an inquorate cluster + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1771 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-02-19 Christine Caulfield <ccaulfie@redhat.com> + + Fix crash in confdb_finalize + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1770 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Get rid of one crash in confdb. It still double-frees in confdb_finalize though. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1769 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Fix crashes in quorum_initialize & votequorum_initialize + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1768 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-02-19 Fabio M. Di Nitto <fdinitto@redhat.com> + + Fix build error spotted by gcc-4.4 + #elif with no clause is clearly wrong and continuing when we don't + know the byte order only defers the problem to a point where its much + harder to debug + + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1767 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-02-19 Steven Dake <sdake@redhat.com> + + Whitetank IPC Forward Port. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1766 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-02-18 Steven Dake <sdake@redhat.com> + + Remove redundant statement in totemsrp. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1764 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Use definition instead of magic number. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1763 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Update link for upstream crypto code. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1762 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-02-18 Ryan O'Hara <rohara@redhat.com> + + Add timer_expire_time_get Add timer_expire_time_get corosync API call. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1761 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-02-14 Ryan O'Hara <rohara@redhat.com> + + Add timer_time_get to the corosync API. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1760 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-02-13 Christine Caulfield <ccaulfie@redhat.com> + + Add corosync_cfg_local_get() call to get the local NodeID in libcfg + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1759 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-02-12 Ryan O'Hara <rohara@redhat.com> + + Add TMR_SERVICE to the list of service_types. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1758 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-02-03 Christine Caulfield <ccaulfie@redhat.com> + + Fix "leave" function where the remaining nodes recalculate quorum when a node leaves. Also add a timeout to the leave flag. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1757 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-01-30 Fabio M. Di Nitto <fdinitto@redhat.com> + + fix pkgconfig builddir creation + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1756 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Add .pc file support for corosync libs + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1755 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-01-30 Christine Caulfield <ccaulfie@redhat.com> + + Add quorum_fd_get and votequorum_fd_get prototypes + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1754 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Make cfg_get_node_addrs return CS_OK rather than 0 when it succeeds. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1753 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-01-29 Christine Caulfield <ccaulfie@redhat.com> + + Fix votequorum_getinfo returning the wrong value for expected_votes + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1752 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Remove the last bicapitalised name from cfg + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1751 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-01-27 Christine Caulfield <ccaulfie@redhat.com> + + Don't automatically load the quorum service. + This will, for the time being, unbreak synchronisation. + + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1750 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-01-26 Steven Dake <sdake@redhat.com> + + Fix node masking for 32 bit node ids. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1749 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Allow crypto to work on systems where unsigned long evaluates to 8 bytes. (s390x). + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1746 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-01-26 Christine Caulfield <ccaulfie@redhat.com> + + Add the votequorum service + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1745 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-01-25 Steven Dake <sdake@redhat.com> + + Fix error where entire message was not rejected during startup of a new node resulting in partial delivery of a complete message and segfaulting the executive. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1744 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Fix message rejection problem. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1743 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-01-23 Fabio M. Di Nitto <fdinitto@redhat.com> + + cleanup handling of uid/gid config + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1742 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-01-23 Christine Caulfield <ccaulfie@redhat.com> + + Fix a couple of memory leaks + The objdb occurred because object_find_destroy wasn't implemented! + + The one in confdb occurred because object_find_destroy wasn't called if + object_find_next returned an error the first time it was invoked (ie + there were no subobjects). + + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1741 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-01-23 Fabio M. Di Nitto <fdinitto@redhat.com> + + fix logging reload operation and clean up main init + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1740 fd59a12c-fef9-0310-b244-a6a79926bd2f + + don't keep logsys fd open unless it's required + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1739 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-01-22 Christine Caulfield <ccaulfie@redhat.com> + + Install quorum.h + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1738 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-01-21 Christine Caulfield <ccaulfie@redhat.com> + + Install quorum library + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1737 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-01-20 Steven Dake <sdake@redhat.com> + + Complete poll_stop function. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1735 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Cancel token holding mode when a totem token callback is added to the system. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1734 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-01-20 Christine Caulfield <ccaulfie@redhat.com> + + Add OBJDB_RELOAD_NOTIFY_FAILED which was missing from coroapi + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1733 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-01-19 Christine Caulfield <ccaulfie@redhat.com> + + Make all the bicapitalised names in cfg more sensible. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1732 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-01-16 Fabio M. Di Nitto <fdinitto@redhat.com> + + Clean up tag handling and provide functions to match name with values and viceversa. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1731 fd59a12c-fef9-0310-b244-a6a79926bd2f + + restore the priority setting that was lost + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1730 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-01-15 Fabio M. Di Nitto <fdinitto@redhat.com> + + Remove duplicate code and use the right library call into logsys that also cover cases that were not handled at all. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1729 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Fix small memory leak on config reload operations + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1728 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-01-14 Fabio M. Di Nitto <fdinitto@redhat.com> + + Fix logsys write to file crash. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1727 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-01-14 Christine Caulfield <ccaulfie@redhat.com> + + add corosync_cfg_get_node_addrs() call. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1726 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Add some mussing pthread_mutex_lock() calls. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1725 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-01-08 Christine Caulfield <ccaulfie@redhat.com> + + Build testquorum on Darwin + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1724 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Don't always overwrite /etc/corosync.conf when make install is run. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1723 fd59a12c-fef9-0310-b244-a6a79926bd2f + + If there was a quorum {} section in corosync.conf but no provider specified then we would always report inquorate. + This was wrong, if no provider is specified then we are always quorate. + + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1722 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-01-08 Steven Dake <sdake@redhat.com> + + Patch to allow cpg_membership_get to work properly. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1721 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-01-07 Angus Salkeld <asalkeld@redhat.com> + + Fix coverity bug ID 6: FORWARD_NULL + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1720 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-01-07 Fabio M. Di Nitto <fdinitto@redhat.com> + + Check against the right var and silence a few warnings at build time + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1719 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2009-01-06 Angus Salkeld <asalkeld@redhat.com> + + Fix coverity bug ID 9: OVERRUN_STATIC + CID: 9 + Checker: OVERRUN_STATIC (help) + File: lib/cfg.c + Function: corosync_cfg_service_unload + Description: Overrun of static array + "&(req_lib_cfg_serviceunload).service_name" of size 1024 bytes by + passing it to a function which indexes it with argument "1023" at byte + position 4088 + + The main problem here is the way the service_name is defined: + - char *service_name[256] __attribute__((aligned(8))); + + char service_name[256] __attribute__((aligned(8))); + + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1718 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2008-12-28 Angus Salkeld <asalkeld@redhat.com> + + Fix coverity bug ID 4: remove unused code & fix compile error + In evs_dispatch() the local ignore_dispatch is not used. + So I have removed this code. + + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1717 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Fix coverity bug ID 1: overused local variable + coverity says that in exec/objdb.c: 1075 the found is always == 1 + therefore the code is dead. But this is just a case of an overused + local variable. "found" is used for two different searches. + + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1716 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Fix coverity bug ID 7: add NULL pointer check + Here coverity checks that if in a function a pointer is checked + for NULL then it is checked through out the function. + + So below I have just add some more checks for NULL. + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1715 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Fix coverity bug ID 5 + In poll_timer_add() if you pass in a NULL for the callback function + the pointer will be dereferenced. + + I have moved the check for the NULL up. + + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1714 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2008-12-19 Christine Caulfield <ccaulfie@redhat.com> + + If there is no quorum provider specified, then always return quorate. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1713 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2008-12-18 Christine Caulfield <ccaulfie@redhat.com> + + If we exit with an error, set the returned status code for the shell. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1712 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2008-12-17 Angus Salkeld <asalkeld@redhat.com> + + Don't segfault if the ais group is not found. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1711 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2008-12-17 Christine Caulfield <ccaulfie@redhat.com> + + Add config reload support for logsys + If objdb is reloaded, then we re-parse the logging options. + + This allows logging options to be changed/enabled/disabled without + restarting corosync + + + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1710 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2008-12-12 Christine Caulfield <ccaulfie@redhat.com> + + This patch adds this capability for a limited number of totem keys using the existing reload mechanism. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1709 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2008-12-11 Christine Caulfield <ccaulfie@redhat.com> + + Install quorum.h file + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1708 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2008-12-09 Christine Caulfield <ccaulfie@redhat.com> + + Add another missing file + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1707 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Add some missing files, sorry + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1706 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2008-12-08 Steven Dake <sdake@redhat.com> + + Patch to fix compilation of macosx and linux in some platform configurations. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1705 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2008-12-08 Christine Caulfield <ccaulfie@redhat.com> + + quorum is now an optional loadable module (though I've put it into the defaults in services.c) and can load another module to do the quorum work (eg YKD which I've made more compliant too). All the quorum code has been removed from sync.c. quorum.c is simply a shim later for the coroapi, the main module is in vsf_quorum.c + There are coroapi calls to query quorate status and also to get + notifications when it changes. + + I've included the testquorum.lcrso module in this patch because I think + it's really helpful for testing. It sets the quorum state based on an + objdb variable, this can be set or cleared using corosync-cfgtool + + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1704 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2008-12-02 Steven Dake <sdake@redhat.com> + + Fix deadlock in logsys during startup. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1703 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2008-12-02 Andrew Beekhof <abeekhof@redhat.com> + + Correctly compare local addresses with bindnetaddr + This patch allows whitetank/corosync to behave correctly when the supplied value of bindnetaddr has more precision than the netmask, but is not a full IPv4 address. + + For example, currently, if the netmask is /16 but the user specifies 192.168.1.0, then OpenAIS is unable to determine the correct address and uses the loopback address instead. + + The following patch allows OpenAIS to correctly determine which interface/address to use. + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1702 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2008-12-01 Angus Salkeld <asalkeld@redhat.com> + + change get node_id() to return an unsigned int + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1701 fd59a12c-fef9-0310-b244-a6a79926bd2f + + depending on your ip address, cpg doesn't always send config changes + If you ip addresses are larger than 0xffffff then you will never + get sent group leave notifications. + + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1700 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2008-11-13 Christine Caulfield <ccaulfie@redhat.com> + + Don't crash if we get a message for a service that isn't loaded. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1699 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Make the port numbers into Network Byte Order. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1698 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2008-11-12 Angus Salkeld <asalkeld@redhat.com> + + LINT: fix confd_sa API error. + remove extra parent_object_handle parameter. + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1697 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2008-11-11 Angus Salkeld <asalkeld@redhat.com> + + LINT: fix "Assignment of ssize_t to int" warnings + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1696 fd59a12c-fef9-0310-b244-a6a79926bd2f + + LINT: tweek the lint make rules. + Makefile.inc: add -unrecog (don't complain about things like strdup(). + tools/Makefile: don't use *.c as it complains about duplicate main() functions + + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1695 fd59a12c-fef9-0310-b244-a6a79926bd2f + + LINT: rename the overlay struct so they are uniq. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1694 fd59a12c-fef9-0310-b244-a6a79926bd2f + + LINT: fix or ignore unchecked return values. + If we don't care about the return value then typecase the return + value to void. + Else do something useful with the return value. + + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1693 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2008-11-10 Steven Dake <sdake@redhat.com> + + Fix missing message in delivery of messages under certain circumstances. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1692 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Fix received_flg to contain proper values. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1691 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2008-11-07 Angus Salkeld <asalkeld@redhat.com> + + Add corotype.h and delete saAis.h + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1690 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2008-11-06 Angus Salkeld <asalkeld@redhat.com> + + cleanup the last of the SAF headers and types + This includes the rename of identifiers from corosync to cs. + + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1689 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2008-11-06 Steven Dake <sdake@redhat.com> + + Make width of service 6 bytes instead of 5. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1688 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Null terminate string which resulted in failure of confdb during logging. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1687 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2008-11-04 Angus Salkeld <asalkeld@redhat.com> + + Make lib/ clean up after itself properly. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1686 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2008-11-01 Angus Salkeld <asalkeld@redhat.com> + + fix build error, can't complie if openais not installed. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1685 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Add a top level "make lint" + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1684 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2008-10-31 Christine Caulfield <ccaulfie@redhat.com> + + This patch adds two extra features to the CFG service in corosync, these are taken (conceptually at least) from cman. + 1. corosync_cfg_killnode() this will tell a remote node to exit. + 2. corosync_cfg_tryshutdown() this will do a semi-controlled shutdown in + that it will consult any interested attached daemons if they are willing + to let corosync be shut down. If they all agree then the rest of the + cluster will be informed before the node dies. + + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1683 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2008-10-30 Steven Dake <sdake@redhat.com> + + performance loading service engine first implementation. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1682 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Logsys flight recorder. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1681 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2008-10-30 Angus Salkeld <asalkeld@redhat.com> + + Fix a memory violation in objdb (caught by valgrind) + If the new length is larger then memory will be overwritten. + + I could make this ">=" but we can save memory if the new size is smaller by using "!=". + + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1680 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2008-10-27 Christine Caulfield <ccaulfie@redhat.com> + + Improve the usage message of corosync_objctl. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1679 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Currently if a reload operation fails, any subsystems listening for notifications will get a RELOAD_NOTIFY_START callback but not a RELOAD_NOTIFY_END callback. + This patch adds a RELOAD_NOTIFY_FAILED callback so that interested + parties will know when the reload has finished and that it failed. + + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1678 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2008-10-21 Angus Salkeld <asalkeld@redhat.com> + + remove some new warnings from corosync + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1677 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Remove unused global debug option from the man page. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1676 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2008-10-20 Steven Dake <sdake@redhat.com> + + Remove unneeded totem_timeout_types global define. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1675 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2008-10-13 Christine Caulfield <ccaulfie@redhat.com> + + This is an initial pass at a top-level quorum system. As it stands, this module doesn't provide quorum itself, merely a framework for setting and querying it. I envisage YKD plugging into this rather than straight into sync() eventually. + I've plugged this into the sync() routines rather than replacing them so + that quorum is itself a VSF, rather than a replacement - I'm not sure if + that is best or not. Opinions are welcome. + + I've added an extra enum member to the service_handler so that we can + send IPC messages when the cluster isn't quorate. This will default to + NO (as now) but allows us to query and set quorum when we don't have it + .. a useful feature ! + + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1674 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2008-10-06 Christine Caulfield <ccaulfie@redhat.com> + + Add locking around objdb calls so that reloads and writes are atomic. + Also add a notification callback for reload. Both the start and the stop + are notified so that the user can decide what to do with the flurry of + updates that occur. + + Note than the reload callback notification MUST be registered against + OBJECT_PARENT_HANDLE. Registering it lower down the hierarchy makes no sense. + + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1673 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Fix some compile warnings. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1672 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2008-10-05 Steven Dake <sdake@redhat.com> + + Fix CFLAGS and LDFLAGS overrides to work for DEBUG and RELEASE modes. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1671 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2008-09-25 Steven Dake <sdake@redhat.com> + + Fix makefile error in test directory. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1669 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2008-09-23 Steven Dake <sdake@redhat.com> + + Add evs verify tool and allow Makefile to build in test directory properly. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1668 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2008-09-17 Angus Salkeld <asalkeld@redhat.com> + + Propagate the flow control state between AIS exec and library + This patch causes the flow control state in the library to be set + properly when the flow control is turned off (disabled). Then it can be + read properly by the flow control apis. + This also fixes the case where the application is no longer sending + messages and it has already dispatched all its received messages + before flow control is disabled. + + Also, CPG response messages with a TRY_AGAIN error did NOT contain + a valid flow control state value. This meant the library could get + stuck with flow control enabled (flow control was never enabled + for the EXEC, so no disable event occurred). + This case was hit when a new node was joining - sync_in_process() + resulted in a TRY_AGAIN for error cpg_mcast_joined). + + Also, in message_handler_req_exec_cpg_mcast() the state passed + back to the library defaulted to disabled for messages received + from another node (even if flow control was still enabled) + - this meant if multiple nodes were sending CPG messages, + then the library flow control state flip-flopped between + enabled and disabled. + + Author: Steven Dake <sdake@redhat.com> & + Tim Beale <tim.beale@alliedtelesis.co.nz> + + + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1667 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Add support for AMF (sync_request) + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1666 fd59a12c-fef9-0310-b244-a6a79926bd2f + + If syslog() blocked, node-leave events were incorrectly reported + In some cases, the syslog() call may block. If this happened, the AIS worker + thread would block waiting on the syslog() call. However, the worker thread + is still holding a logsys mutex, which is needed to enqueue any more log + messages from the other AIS threads. So the main AIS thread blocks waiting + on the logsys mutex. This can then cause aisexec on other nodes to detect + the node as leaving the cluster. + + Author: Tim Beale <tim.beale@alliedtelesis.co.nz> + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1665 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2008-09-16 Fabien Thomas <fabien.thomas@netasq.com> + + use getifaddrs to enumerate interface on FreeBSD and Darwin (patch from Mathieu Virbel) + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1664 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2008-09-03 Christine Caulfield <ccaulfie@redhat.com> + + Reinstate key_iter_reset that got removed by mistake in 1660 + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1663 fd59a12c-fef9-0310-b244-a6a79926bd2f + + This patch adds key_increment and key_decrement calls to the objdb and confdb subsystems. + This is useful to provide atomic counters (ag handle numbers) for + long-running (though not persistent) connections. It's not currently + possible via confdb to atomically get a new number from objdb due to the + lack of locking. Doing it via increment operations in the IPC thread + provides enough atomicity to make it useful. Fabio has already + identified a use for these calls. + + It could also provide some form of basic co-operative locking mechanism + for IPC-using processes (not direct objdb calls). + + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1662 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2008-08-27 Christine Caulfield <ccaulfie@redhat.com> + + Fix the names of confdb_object_find_destroy and confdb_object_iter_destroy. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1661 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2008-08-26 Christine Caulfield <ccaulfie@redhat.com> + + Remove the disliked *_from calls from the objdb and recast the confdb library to use the new find_create/find_next/find_destroy API calls instead. + I've kept the libcondfb API the same as before with the single change of + adding a confdb_object_find_destroy to tidy up the find handle after + use. If you don't call this then libcondfb will do it for you when + confdb_finalize is called. + + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1660 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2008-08-20 Angus Salkeld <asalkeld@redhat.com> + + Zero out unused totemsrp my_proc_list entries + When making my_proc_list smaller, ensure that the + now non-used entries are zero-ed out. There are some suspect + assert's that assume that there is always 2 entries in the list. + These fail when my_proc_list is reduced to 1 entry (and the + valid [0] entry is the same as the 'unused' [1] entry). + + Author: Mark Wutzke <mark.wutzke@alliedtelesis.co.nz> + + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1659 fd59a12c-fef9-0310-b244-a6a79926bd2f + + aisexec crash on exit + Cause: + As part of its exit procedure, ais cancels its worker thread then manually + processes any outstanding items that were still in the worker thread's queue. + The worker thread has a low priority so normally it does not execute any + further before ais finishes exiting, but if the main thread's exiting is + delayed for any reason, there is a chance the worker thread could execute and + try to process items which have already been processed and freed by the main + thread - often leading to the worker thread seeing NULL data and ultimately + causing a segmentation fault. + + Fix: + Modified worker_thread_group_exit() so it does a pthread_join() after the + pthread_cancel() call, so that the worker thread always shuts down cleanly + before the main thread does its cleanup. + + Author: Author: Mark McKinstry <mark.mckinstry@alliedtelesis.co.nz> + + + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1658 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Fix to display strings safely in debug messages. + Display strings safely, even if they are invalid, e.g. data in a received + message was corrupted. + + Author: Tim Beale <tim.beale@alliedtelesis.co.nz> + + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1657 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Provide a way to configure (at compile time) message and queue sizes. + This patch makes it possible to override the following #defines: + MESSAGE_SIZE_MAX + MESSAGE_QUEUE_MAX + SIZEQUEUE + FLOW_CONTROL_ENTRIES_ENABLE + + If MESSAGE_SIZE_MAX is defined as 1024*64 (64K) and + MESSAGE_QUEUE_MAX defined as 512 you can change corosync's + memory footprint from ~48M to ~8M + + So if you define MESSAGE_QUEUE_MAX, the queue size will + not be based on the message size any more. + + To use this define the defines on the command line: + make CFLAGS="-DMESSAGE_SIZE_MAX=1024*64 -DMESSAGE_QUEUE_MAX=512" + + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1656 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Fix an assert caused by faulty sort-queue management. + sq.h + - sq_items_release(): When clearing the items_inuse array, ensure that + all of the memory is cleared. items_inuse is a uint array, not a + byte array. + + Author: Mark Wutzke <markw@alliedtelesis.co.nz> + + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1655 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2008-08-15 Steven Dake <sdake@redhat.com> + + Repair typo which caused init script not to start corosync daemon. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1649 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Make rpmlint pass without warnings. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1648 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Set the override for LCRSODIR properly. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1647 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Finish the renaming of openais to corosync in the tree. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1646 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2008-08-14 Steven Dake <sdake@redhat.com> + + Fix build breakage. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1645 fd59a12c-fef9-0310-b244-a6a79926bd2f + + New and improved loc command. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1644 fd59a12c-fef9-0310-b244-a6a79926bd2f + + New LOC command. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1643 fd59a12c-fef9-0310-b244-a6a79926bd2f + + turn on executeable bit for loc. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1642 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Install saAis.h header file. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1641 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Update svn commit scripts so they work properly and have proper permissions. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1640 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Move QUICKSTART to proper directory. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1639 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Few man page cleanups and removal of amf.conf.5. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1638 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Proper rename of openais usage to corosync throughout tree. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1637 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Revert patch 1633 which breaks build. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1636 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Move openais* to corosync* in man pages. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1635 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Build corosync-keygen. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1634 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Change all occurances of openais to corosync. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1633 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2008-08-14 Fabien Thomas <fabien.thomas@netasq.com> + + reorganize include file to match installed tree to build openais without installing corosync; correct some warnings and error under FreeBSD and Darwin + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1632 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2008-08-14 Fabio M. Di Nitto <fdinitto@redhat.com> + + Revert config_verifyconf logic that is unnecessary + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1631 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2008-08-13 Christine Caulfield <ccaulfie@redhat.com> + + Change AIS names to corosync + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1630 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2008-08-13 Fabio M. Di Nitto <fdinitto@redhat.com> + + Add support for reload operations within objdb and plugins. + Use a 2 phase "commit" operation: + 1) Invoke verifyconfig that should catch the errors before the reload operation + 2) Invoke reloadconfig that performs the operation and should _never_ fail + + Implementation note: if step 2 fails, there is no fall back at the moment. + + Fix the IPC table for confdb: + MESSAGE_REQ_CONFDB_XPATH_EVAL_EXPRESSION = 12 was added to include/ipc_confdb.h + without an associated call. Thanks Chrissie for spotting this. + + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1629 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2008-08-12 Steven Dake <sdake@redhat.com> + + Add some totem process group interfaces to the API. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1628 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2008-08-12 Fabio M. Di Nitto <fdinitto@redhat.com> + + objdb: change list_add to list_add_tail when adding keys and objects + service: change openais_service_unlink_all to deal with the new objdb order + + cleanup a few whitespaces + + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1627 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2008-08-06 Steven Dake <sdake@redhat.com> + + Add module load and unload to the exported coroapi. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1626 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2008-08-05 Steven Dake <sdake@redhat.com> + + Add callback notification about changes to the object db and confdb apis. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1625 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2008-08-05 Fabio M. Di Nitto <fdinitto@redhat.com> + + Fix crash in logsys new API + logsys_config_priority_set lacked a check for logsys_single_id that + left logsys_subsys_id uninitialized. + + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1624 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Fix toplevel Makefile install target + - objctl is now called corosync-objctl + - keygen has been renamed corosync-keygen + - install corosync-cfgtool as part of the standard tools now + + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1623 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2008-08-05 Steven Dake <sdake@redhat.com> + + Split openais and corosync tree into two seperate repositories. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1622 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Make mar_name_t an inline function to remove warnings + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1621 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2008-08-04 Steven Dake <sdake@redhat.com> + + Allow msg service test applications to build properly. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1620 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Fix errors in lib linking. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1619 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Add a missing confdb_key_delete function to the confdb api. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1618 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Merge Angus's corosync-objctl tool and move cfgtool to a different directory. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1617 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2008-08-01 Patrick Caulfield <pcaulfie@redhat.com> + + Fix the spelling of 'guarantee' in several places. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1616 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2008-07-24 Steven Dake <sdake@redhat.com> + + Final fixup to build all things properly. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1613 fd59a12c-fef9-0310-b244-a6a79926bd2f + + openais now builds when make install is done from corosync. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1612 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Merge the object iteration repair patch into corosync so openais services load. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1611 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Add files missing from build but in dev repo. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1610 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Building of all service engines now works properly. Install works as well. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1609 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Improve runtime loading of parser and move versions files to corosync. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1608 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Add MESSAGE_SIZE_MAX to coroapi file. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1607 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Make external service engines (openais) work properly. Also fix up make install. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1606 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Patch from Angus to make corosync build for his environment. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1605 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Add API definitions file. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1604 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Merge the API definitions of the objdb into the corosync api definition. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1603 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2008-07-23 Steven Dake <sdake@redhat.com> + + The entire tree builds properly and all services have been ported to the new coroapi.h include header. + The services shipped with corosync are CPG, CFG, CONFDB, and EVS. + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1602 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2008-07-22 Steven Dake <sdake@redhat.com> + + Make from top level directory now works. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1601 fd59a12c-fef9-0310-b244-a6a79926bd2f + + API changes and code to make cfg and cpg service operate properly with corosync. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1600 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2008-07-21 Steven Dake <sdake@redhat.com> + + Cause libraries to build. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1599 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Set default services to load. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1598 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Add the default corosync parser. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1597 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Rename AIS parts to Corosync. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1596 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Rename aispoll to coropoll. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1595 fd59a12c-fef9-0310-b244-a6a79926bd2f + + corosync/exec builds. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1594 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Remove depends in Makefile. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1593 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Initial makefile for corosync plugin service engines. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1592 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Move services around to service directory. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1591 fd59a12c-fef9-0310-b244-a6a79926bd2f + + move README.amf into openais directory. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1590 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Remove unnecesssary files. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1589 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Add makefile and loc infrastructure to openais directory. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1588 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Add license file to openais tree. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1587 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Move mismove to proper location. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1586 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Move test, lib, exec, and include files that are openais specific into openais directory. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1585 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Put conf directory in openais directory. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1584 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Move test directories and remaining loc files to test directory. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1583 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Initial move of corosync and openais trees into seperate directories. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1582 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Test queue group tracking feature. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1581 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Add ability to track changes to queue groups in the messaqge service. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1580 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2008-07-14 Steven Dake <sdake@redhat.com> + + Allow setting of the logsys priority to one lower then was already specified. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1579 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Revert incorrect patch. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1578 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Allow setting of lower priority which is currently disabled. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1577 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Allow users of logsys to disable output of logging LOG_LEVEL_DEBUG messages via log_mode_set. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1576 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2008-07-11 Patrick Caulfield <pcaulfie@redhat.com> + + * Adds documentation for the LOG_MODE_NOSUBSYS mode flag, * Adds documentation for the LOG_MODE_SHORT_FILELINE mode flag, and * Fixes (typo) 'declartion' -> 'declaration' + -- Lon + + + + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1575 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2008-07-11 Steven Dake <sdake@redhat.com> + + Fix error in a previous logsys patch. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1574 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2008-07-07 Patrick Caulfield <pcaulfie@redhat.com> + + Add a missing object_find_reset() call. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1573 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2008-07-03 Steven Dake <sdake@redhat.com> + + Add init/config entry points for those that dont with to use macros in logsys. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1572 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2008-07-02 Patrick Caulfield <pcaulfie@redhat.com> + + Add cpg_groups_get call to libcpg. + This call causes a complete list of active groups and their + membership lists to be sent to a callback function. + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1571 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2008-07-02 Steven Dake <sdake@redhat.com> + + Add two new modes LOG_MODE_SHORT_FILELINE and LOG_MODE_NOSUBSYS. LOG_MODE_SHORT_FILELINE strips the leading path from the file name in a debug output. LOG_MODE_NOSUBSYS removes a global variable and provides the ability to set or unset this via config_mode_set. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1570 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2008-07-01 Patrick Caulfield <pcaulfie@redhat.com> + + this patch fixes a segfault/crash in confdb_write. + If the operation is succesful there is no need to set error_string. If error_string is not set, don't try to access it or we crash. + + At the same time perform the same check in libconfdb when we receive the reply. + + Fabio + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1569 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2008-06-24 Steven Dake <sdake@redhat.com> + + Allow syslog priority configurations per subsystem in logsys. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1568 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Remove warnings of unused variables in main.c + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1566 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Allow make in the exec directory to work even if root/lcr isn't yet built. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1565 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Add #include assert.h to some AMF files. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1564 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Forward port of the synchronization engine into trunk. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1563 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Fix a ton of bugs in totem by forward porting the whitetank totem code into trunk. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1562 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Remove totemip.h reference from file. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1561 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Remove totemip reference from file. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1560 fd59a12c-fef9-0310-b244-a6a79926bd2f + + remove totemip.h reference from file. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1559 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Fix unlock_algorithm in lock service. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1558 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Improve the async version of locking library patch from Xinwei Hu. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1557 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Patch from Xinwei Hu to clean up test locking program. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1556 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2008-06-20 Steven Dake <sdake@redhat.com> + + Allow user to retrieve logsys mode. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1555 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Remove extra unneeded configuration option from logsys. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1554 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Use logsys_facility_id_get to do the string conversion instead of doing it in the openais configuration parser. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1553 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2008-06-13 Steven Dake <sdake@redhat.com> + + Message service implemntation - more apis now supported. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1552 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2008-05-20 Steven Dake <sdake@redhat.com> + + Fix linking of other projects against logsys on ppc64. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1550 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Remove exit when logsys files can't be created. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1549 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2008-05-14 Steven Dake <sdake@redhat.com> + + Fix loading of multiple objects. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1547 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2008-05-12 Steven Dake <sdake@redhat.com> + + Repair invalid commit. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1545 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Add ckpt service back in from incorrect patch that was committed found during tesitng of rpm of 0.83-1.fc10. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1544 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Change all email addresses that were sdake@mvista.com to sdake@redhat.com. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1541 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Repair loading of external services. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1540 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Remove executable permission from flow.c + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1539 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2008-05-09 Steven Dake <sdake@redhat.com> + + Patch to remove segfault on the exiting of a service. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1538 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Patch to allow controlled exit of a service. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1537 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2008-05-07 Patrick Caulfield <pcaulfie@redhat.com> + + Expose confdb write to the library. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1536 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2008-05-06 Patrick Caulfield <pcaulfie@redhat.com> + + Add LDFLAGS to libconfdb linking + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1535 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2008-05-05 Steven Dake <sdake@redhat.com> + + Execute a test of the makefile system from Angus + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1534 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Apply suggestion from Andrew for srcdir functionality. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1533 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2008-05-02 Steven Dake <sdake@redhat.com> + + Allow make from the exec directory. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1532 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2008-04-30 Patrick Caulfield <pcaulfie@redhat.com> + + Allow libconfdb to run standalone (without aisexec) + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1531 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Add writeback call to objdb + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1530 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2008-04-29 Steven Dake <sdake@redhat.com> + + Fix build error. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1529 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2008-04-28 Steven Dake <sdake@redhat.com> + + load and unload service engines at runtime. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1528 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Patch to add new api to logsys to get priority names from subsystem names. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1527 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Change initialization order for logsys logging to files to work properly. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1526 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2008-04-23 Steven Dake <sdake@redhat.com> + + Fix building on OSX + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1525 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Fix syscall usage for keygen application + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1523 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2008-04-23 Patrick Caulfield <pcaulfie@redhat.com> + + Fix logsys_config_priority_set() so that it sets the priority of the local subsystem and not always "MAIN". + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1522 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2008-04-22 Steven Dake <sdake@redhat.com> + + Build on latest glibc. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1520 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2008-04-21 Steven Dake <sdake@redhat.com> + + Patch to reinitialize logsys internal variables after a fork for correct operation. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1519 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2008-04-17 Patrick Caulfield <pcaulfie@redhat.com> + + Add man pages for confdb functions. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1518 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Fix some typos in the CPG man pages + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1517 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2008-04-16 Patrick Caulfield <pcaulfie@redhat.com> + + Add confdb, a library to access the configuration object database. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1516 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Fix locking in logsys. + Patch from Fabio M. Di Nitto <fabbione@fabbione.net> + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1515 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2008-03-10 Patrick Caulfield <pcaulfie@redhat.com> + + Add some new calls into objdb. + These allow replacing/removing keys, and deleting a whole object subtree, + iterator functions to enumerate all objects/keys on an object, + and a dump call for debugging. + + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1505 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2008-01-08 Steven Dake <sdake@redhat.com> + + Patch to install liblogsys + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1495 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Remove closing of ttys that slipped in improperly. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1494 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2007-12-10 Steven Dake <sdake@redhat.com> + + srcdir is not set when realpath & abspath don't work + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1492 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Force logging to stderr if the -f flag is specified. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1491 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Allow multiple config plugins to be loaded at start time and set the config object database objects. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1490 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2007-11-28 Steven Dake <sdake@redhat.com> + + fix install broken when O=<DIR> is used + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1489 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Patch to make sure make clean works as advertised. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1488 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Properly daemonize and dup file descriptors to /dev/null. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1487 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Make sure to unlock the handle database on a failure condition. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1485 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Patch to set system from field properly in retransmitted messages. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1484 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Remove & when regular reference works properly. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1483 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Patch to not increment the ring seq id on the first operational ring. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1482 fd59a12c-fef9-0310-b244-a6a79926bd2f + + make install now works properly on systems which produce wierd uname results + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1481 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2007-10-25 Fabien Thomas <fabien.thomas@netasq.com> + + add missing objdb for static build + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1476 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2007-10-22 Steven Dake <sdake@redhat.com> + + Patch to provide generic init script that is generically useful for most distributions or can be used as a starting point for making a distribution custom init script. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1475 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Patch to close all open files on background run operation. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1474 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Fix missing commit from timer.c in trunk. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1472 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Endian convert downlist messages from cpg. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1470 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2007-10-16 Fabien Thomas <fabien.thomas@netasq.com> + + correct ifdef that must be ifndef because under FreeBSD alloca.h is in stdlib.h + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1468 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2007-10-10 Patrick Caulfield <pcaulfie@redhat.com> + + Remove some includes from .h files so they can be installed. Also install flow.h & ipc.h for external services. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1467 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Fix openais.conf example and man page to match the new logsys directives. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1466 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2007-10-02 Steven Dake <sdake@redhat.com> + + Fix problem where adding a timer in a timer callback would lock system and also timer additions were not protected by mutex because of backwards pthread_equal comparison. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1463 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2007-09-28 Steven Dake <sdake@redhat.com> + + segfault does not use source.conn unless the originating request is local. The actual code tries to dereference pointers created on another node. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1462 fd59a12c-fef9-0310-b244-a6a79926bd2f + + lock_algo queues lock requests rather than ignoring them if an exclusive lock is held on a resource. This led to stale processes trying to acquire an exclusive lock forever. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1461 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Patch to fix dependencies in build of test programs. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1460 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Fix linking of library objects. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1459 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2007-09-27 Steven Dake <sdake@redhat.com> + + Allow override of the LCRSO directory from the Makefiles or command line + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1458 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Fix static libs installation logic inversion + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1457 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Makefile system improvements from Angus Salkeld + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1456 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2007-09-20 Patrick Caulfield <pcaulfie@redhat.com> + + Install logsys.h rather than print.h + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1454 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2007-09-15 Steven Dake <sdake@redhat.com> + + Fix reference counting in LCR code. Also fix problem with inability to compile from the exec directory because PREFIX wasn't defined for lcr_ifact.c. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1451 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Allow missing spots in the synchronization engine + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1448 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Fixes the following problems: 1) the encapsulated and not encapsulated values for multicast messages are now enumerated instead of magic number. 2) the endian detector is now set for new encapsulated messages intended for transmission. previously these messages would use whichever endian detector value happened to be in memory which could be a) correct endian b) incorrect endian from another machine byte order message c) junk values. 3) The retransmission flag is not set by default on new originated tokens in the recovery state. Instead it is set based upon whether the node actually can retransmit any messages. 4) some workaround code was removed that was necessary to make the system work when #3 was incorrect 5) the my_install_seq and my_aru fields are compared based upon a window instead of static comparison because it could be that the my_aru is 0xFFFFFF5 where my_install_seq is 5. In this case (after a lot of messages are sent) the comparison would return the incorrect result in the recovery phase of the algorithm. 6) The queue chosen for adding messages to the retransmission queue is now set based upon the encapsulated bit rather then the current state of the state machine. 7) the encapsulated bit is set properly in an endian conversion operation for a multicast message header. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1447 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2007-09-11 Steven Dake <sdake@redhat.com> + + Add missing files from the ais utils exporting patch. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1445 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2007-09-09 Steven Dake <sdake@redhat.com> + + Calculate the default path based on the project value of PREFIX + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1444 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Ensure DESTDIR and PREFIX are properly used in Makefiles + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1443 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Expose utils to the user + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1442 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Now that -l is set correclt yuse #include <header.h> instead of using quotes. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1441 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Static libraries become out of date on Darwin once they are copied or moved + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1440 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Use makefile loops where possible + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1439 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Provide information as to why a plugin refused to load + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1438 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Add extra brackets to clarify scope. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1437 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Fix build dependencies + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1436 fd59a12c-fef9-0310-b244-a6a79926bd2f + + If iface_ver0_p is not reset, then as long as the first plugin loads then all subsequent plugins will report success. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1435 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Missing stdlib.h from lcr_ifact.c. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1434 fd59a12c-fef9-0310-b244-a6a79926bd2f + + HZ not always defined on all Linux systems. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1433 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Patch to allow CFLAGS and LDFLAGS modifications to take effect + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1432 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Logsys testing system. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1431 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Fixes for the logsys system. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1430 fd59a12c-fef9-0310-b244-a6a79926bd2f + + The man page for the logsys logging system. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1429 fd59a12c-fef9-0310-b244-a6a79926bd2f + + The logsys logging system. Read logsys_overview.8. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1428 fd59a12c-fef9-0310-b244-a6a79926bd2f + + totem srp merge from whitetank + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1427 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Patch to log security warnings when invalid identifier is used in message header for a totem message. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1425 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Fix problem in synchronization engine which results in possible failures of the synchronization engine. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1424 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2007-08-24 Steven Dake <sdake@redhat.com> + + Patch to allocate event dispatch data in saEvtInitialize instead of directly on the stack for small thread-stack sized dispatch functions. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1421 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2007-08-11 Steven Dake <sdake@redhat.com> + + Patch to not overwrite defualt configuration file or amf.conf file when executing make install + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1420 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Allow make doxygen to work properly + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1418 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Patch to add amf_strdup instead of malloc and then copy for amf service. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1417 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2007-08-08 Steven Dake <sdake@redhat.com> + + Fix minor leaks caused by not calling pthread_mutex_destroy throughout the tree. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1412 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Patch to fix compile warning on mac platforms. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1411 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2007-07-02 Steven Dake <sdake@redhat.com> + + Add the testcpg2 file missing from a previous commit. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1405 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2007-07-02 Fabien Thomas <fabien.thomas@netasq.com> + + remove warnings under Darwin for missing includes and too many parameters in TRACE2 + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1404 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2007-06-25 Patrick Caulfield <pcaulfie@redhat.com> + + Clear pid when we leave a process group + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1399 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2007-06-25 Steven Dake <sdake@redhat.com> + + Fix bug where if checkpoint section is expired about the same time as a checkpoint is deleted, a warning would be displayed. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1398 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Update testckpt program to properly test checkpoint system. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1397 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Add cpg_local_get api to cpg service + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1391 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2007-06-24 Steven Dake <sdake@redhat.com> + + Add IP address takeover as an AMF component + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1388 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2007-06-23 Steven Dake <sdake@redhat.com> + + Add passive monitoring support to AMF. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1386 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2007-06-14 Patrick Caulfield <pcaulfie@redhat.com> + + Add man pages for cpg_context_* and fix library exports to include them too. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1385 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2007-06-13 Patrick Caulfield <pcaulfie@redhat.com> + + Install the timer.h file so it can be used by external services and remove a dependency on tlist.h + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1384 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Currently saLckResourceUnlockAsync leaves the lockid in the handle database even when the lock has been unlocked. This can cause exec crashes if the lock is unlocked twice. + This patch adds an extra field to the res_lib_lck_resourceunlockasync structure + so that the library can remove the lock from the handle database when the lock + is unlocked successfully, as well as code to do it, obviously. + + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1383 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2007-06-12 Fabien Thomas <fabien.thomas@netasq.com> + + repair BSD/Darwin build by moving HZ constant in tlist.h + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1381 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2007-06-05 Patrick Caulfield <pcaulfie@redhat.com> + + Cast away a compile warning + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1380 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2007-06-05 Steven Dake <sdake@redhat.com> + + Remove this_ip from the source tree and replace with accessor functions. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1379 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Change timers to add duration and absolute timers. Use nanoseconds since epoch to track timers. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1378 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2007-05-31 Patrick Caulfield <pcaulfie@redhat.com> + + Add get/set context API calls to the cpg service. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1377 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2007-05-30 Patrick Caulfield <pcaulfie@redhat.com> + + Don't try and remove a lock from a list if it's not on one, but DO remove it from the resources list when it gets unlocked. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1376 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2007-05-22 Steven Dake <sdake@redhat.com> + + Sanitize the ETCDIR usage in the Makefiles. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1375 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Use rync -a when cp -a is not available on MAC OSX platform install + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1374 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2007-05-18 Patrick Caulfield <pcaulfie@redhat.com> + + This patch fixes the marshalling of lock names in libSaLck, they were copied using memcpy, but the alignment of a mar_name_t is not necessarily the same as SaNameT. This patch changes memcpy() to marshall_to_mar_name_t(). + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1373 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2007-05-17 Steven Dake <sdake@redhat.com> + + on 32 bit platforms, the message source conn info could have uninitialized values. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1371 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2007-05-05 Patrick Caulfield <pcaulfie@redhat.com> + + In trunk, totemip.h and totem.h call for "../include/swab.h" - this works fine when building openais itself but causes problems when installed as those files will not be in the right place. + So, I've moved these includes out of totemip.h and totem.h and into the .c files + that call them. + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1370 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2007-04-25 Steven Dake <sdake@redhat.com> + + Fix section iteration size comparison + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1367 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Print Unknown Time if the time is unknown of an event. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1366 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Change tab alignment on checkpoint write operation to match coding style guidelines + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1365 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Fixes problem where if attributes list is zero, library would segfault + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1362 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2007-04-22 Steven Dake <sdake@redhat.com> + + change references to evs to cpg to match API + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1361 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2007-04-21 Steven Dake <sdake@redhat.com> + + Patch from Angus to fix return code of saAmfResponse if the handle was invalid. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1360 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2007-03-21 Steven Dake <sdake@redhat.com> + + Fix documentation errors in cpg service. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1358 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2007-03-14 Steven Dake <sdake@redhat.com> + + Solaris port patch to fix a few problems from last big patch. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1355 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2007-03-12 Steven Dake <sdake@redhat.com> + + Patch to allow BSD/Linux systems to compile with latest Solaris porting patch. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1354 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2007-03-06 Steven Dake <sdake@redhat.com> + + Patch from Renaud to report some broken Solaris porting from past. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1353 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2007-01-26 Hans Feldt <hans.feldt@ericsson.com> + + This patch improves AMF's behaviour for handling component instantiation level. AMF is complemented to handle termination and instantiation with respect to instantiation level also for the following scenarios: - SU restart - termination/instantiation errors during component/SU restart - instantiation error during cluster start up + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1352 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2007-01-25 Hans Feldt <hans.feldt@ericsson.com> + + Was writing to random mem using an uninitialized pointer + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1351 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2007-01-23 Steven Dake <sdake@redhat.com> + + Display the names of the configuration files used by openais. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1350 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Add two notifications about things to avoid to ensure proper operation of the parser. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1349 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Fixes from Zoltan regarding AMF mispellings and type errors. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1348 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2007-01-18 Lon Hohberger <lhh@redhat.com> + + - improves the inclosed dokumentation in amfsu,amfsg and amnode. - improves error handling caused by the INSTANTIATE or CLEANUP command while recovering with component_restart or su_restart + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1347 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2006-12-21 Lon Hohberger <lhh@redhat.com> + + 1 The patch contains mainly updates of the header documentation in the amf_files 2 Correction of the misspelling in lib/cfg.c + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1346 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2006-12-18 Steven Dake <sdake@redhat.com> + + Fix unaligned access for ia64 arch. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1343 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Fix typo in pthread_mutex_destroy. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1342 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Execute pthread destroy in queue_free in trunk. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1341 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2006-12-12 Steven Dake <sdake@redhat.com> + + Fix mutex leak on various platforms. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1336 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Remove leak when pthread mutex isn't released + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1335 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Fix leak by forward porting a change already in whitetank. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1333 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Change timing parameters for trunk to something more reasonable for a busy network. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1332 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Convert some spaces to tabs that was already in the whitetank branch. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1331 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Fix leak in uid and gid determination. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1328 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Fix flow control problem in trunk. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1327 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Add rundir patch to /var/lib/openais. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1326 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2006-12-12 Patrick Caulfield <pcaulfie@redhat.com> + + Fix ordering of join messages + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1324 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2006-12-11 Lon Hohberger <lhh@redhat.com> + + Correct not initialized value of amf_comp in amf_comp_find_from_conn_info () + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1322 fd59a12c-fef9-0310-b244-a6a79926bd2f + + This patch contians: + - AMF handles a component report of injurious health. + + - AMF handles saAmfHealthcheckConfirm() SA_AIS_ERR_FAILED_OPERATION + so that if it's a recent recovery ongoing amf does nothing but if it's + no immediate recovery in progress, AMF invokes the recovery action + specified by the component when the health check is started If + the individual recommendation was SA_AMF_NO_RECOMMENDATION, + then AMF uses the configured recovery action for the component + (saAmfCompRecoveryOnError). If this recommendation also is + SA_AMF_NO_RECOMMENDATION, then AMF makes a component restart or + component/SU fail over counts on the value of + saAmfCompDisableRestart and saAmfSUFailover. + + - Handling of cleanup of a component and health check response hardened. + + + - Time supervision and check return value of clc-cli CLEANUP command. + + + - Handle 'recommended recovery' specified by a component in an error + report. The potential recovery action to choose + implemented is - component restart - and - node fails over. + + - The attribute saAmfCompDisableRestart is now recognizable which means + that if the component specifies 'Component restart' and restart is + disabled + then the SU in which the component is contained shall fall over. + + - The attribute saAmfSUFailover will not be recognized. SU will always + fail + over as a single entity. + + - A component can report an error on another component than itself. + + + - Implementation 'Instantiation Level' according to chapter 3.9.2 in the + AMF specification. + - Implementation of the escalation levels, component restart, SU + restart, SU fail over and Node fail over. + + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1321 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2006-12-06 Hans Feldt <hans.feldt@ericsson.com> + + Corrected amf.c bug that could cause segv + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1320 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2006-12-05 Hans Feldt <hans.feldt@ericsson.com> + + Correction to segv handler Added abort handler + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1318 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2006-12-04 Hans Feldt <hans.feldt@ericsson.com> + + - Use of sync_request() in SYNC service - sync_abort() callback implemented + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1317 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2006-11-23 Fabien Thomas <fabien.thomas@netasq.com> + + handle case where POLLHUP or POLLERR are not supported by OS + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1311 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2006-11-17 Hans Feldt <hans.feldt@ericsson.com> + + Cleaning up and preparing for later patch. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1310 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2006-11-16 Fabien Thomas <fabien.thomas@netasq.com> + + set default downcheck value to 1000ms + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1309 fd59a12c-fef9-0310-b244-a6a79926bd2f + + remove invalid code / warnings detected by Intel compiler + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1308 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2006-11-13 Steven Dake <sdake@redhat.com> + + Print information about when we enter the gather state and what state the membership protocol is in when the token is lost. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1304 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Forward port of IPC code from whitetank branch to fix known defects. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1303 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Flushed printing for trunk branch. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1302 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Improve behavior of IPC flow control for CPG service during configuration changes. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1301 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2006-11-10 Steven Dake <sdake@redhat.com> + + Update checkpoint service from all qualifications that have occured in whitetank branch. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1299 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Recovery algorithms described in this document. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1298 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2006-11-10 Lon Hohberger <lhh@redhat.com> + + improved cluster_applications_are_starting_sgs + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1297 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2006-11-08 Hans Feldt <hans.feldt@ericsson.com> + + removed compiler warning in amfcomp.c + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1292 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2006-11-08 Lon Hohberger <lhh@redhat.com> + + This patch contains several corrections concerning SU and Node fail over and some hardening concerning health check handling. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1291 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2006-11-07 Patrick Caulfield <pcaulfie@redhat.com> + + 2.6.19 kernel headers do not include IFA_RTA so we provide it. Patch from Fabio Massimo Di Nitto + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1290 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2006-11-04 Steven Dake <sdake@redhat.com> + + Forward port of flow control work from whitetank branch. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1289 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Updated readme.devmap file + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1287 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2006-10-27 Hans Feldt <hans.feldt@ericsson.com> + + * Improvement of SU fail over to handle remove of those standby assignments that doesn't directly is associated to the failing over SU's active assignments in other SU's * Improvement of Node fail over to handle remove of those standby assignments that doesn't directly is associated to the failing over Node SU's active assignments in other SU's. + * Improvement of SU fail over to handle si assignments to spare SU:s + + * Improvement of Node fail over to handle si assignments to spare SU:s + + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1285 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2006-10-24 Hans Feldt <hans.feldt@ericsson.com> + + AMF healthcheck keylen was not compared before matching key values + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1281 fd59a12c-fef9-0310-b244-a6a79926bd2f + + - sync_abort is called if there is a new config change during synchronization + - a new function sync_request() that can be called by a user to execute + synchronization on request of a specified service. + + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1280 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2006-10-20 Hans Feldt <hans.feldt@ericsson.com> + + Changes to testamf1.c to have two healthchecks running at the same time. One of type 'AMF invoked' and one of type 'component invoked'. testamf1.c code got a bit restructured at the same time. + Changes in amf.conf to complement testamf1 + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1274 fd59a12c-fef9-0310-b244-a6a79926bd2f + + I found some (copy paste I guess) errors in the AMF library. It was the reason for why component invoked healthchecks did not work at all. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1273 fd59a12c-fef9-0310-b244-a6a79926bd2f + + A couple of errors was found when I did unit (component) testing of amf.c using CUnit. With this patch, amf.c can handle a full totem send queue. This is not easily reproducable with function test. + amf.c is also prepared for further component testing with this patch. + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1272 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2006-10-13 Lon Hohberger <lhh@redhat.com> + + Patch contains: + A mechanism to defer and recall simultaneous + events in the state machines for amf_cluster, + amf_application and amf_sg. + + The implication of this defer and recall mechanism is + that it's now possible to to recover from e.g. several + simultaneous SU failures in an ordered serialized manner. + + The events that could be deferred/recalled so far is + SG_FAILOVER_NODE_EV,SG_START_EV,SG_FAILOVER_SU_EV, + CLUSTER_SYNC_READY_EV,APPLICATION_START_EV and + APPLICATION_ASSIGN_WORKLOAD_EV. + + Files involved: + + Index: exec/amfnode.c + Index: exec/amfsg.c + Index: exec/amfutil.c + Index: exec/amfapp.c + Index: exec/amfcomp.c + Index: exec/amfcluster.c + Index: exec/amf.h + + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1266 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2006-10-12 Hans Feldt <hans.feldt@ericsson.com> + + This simple patch solves a problem we see when testing AMF. If a node leaves and joins the cluster quickly (within one second is default), the config change messages will not indicate that the node left and rejoined. The patch introduces a short delay in main() to make sure the token_timeout expires. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1259 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2006-10-09 Steven Dake <sdake@redhat.com> + + Enable commit tokens to be processed properly in all circumstances. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1255 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Fix subset set operation to work properly. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1254 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Remove some debbugging code from totemsrp impacting performance. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1253 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2006-10-04 Lon Hohberger <lhh@redhat.com> + + The patch contains: + The instantiaton of the component is performed with some new steps: + + 1. SU invoke Comp to instantiate + 2. Comp multicast a new event + MESSAGE_REQ_EXEC_AMF_COMPONENT_INSTANTIATE + 3. Comp receive the new event + MESSAGE_REQ_EXEC_AMF_COMPONENT_INSTANTIATE + 4. If the Comp is within the SU hosted on the node. The + + component invokes + + the clc_cli instantiate script to start the component + + and start a timer + + to supervise the start and registration of the component. + 5. If the instantiation time elapse before the component has + registered himself + Comp is sending a new multicasted event + MESSAGE_REQ_EXEC_AMF_COMPONENT_INSTANTIATE_TMO. + 6. Comp receive + + MESSAGE_REQ_EXEC_AMF_COMPONENT_INSTANTIATE_TMO event. + + 7. The Comp presence state is set to + SA_AMF_PRESENCE_INSTANTIATION_FAILED + 8. When all Components are in presence state + + SA_AMF_PRESENCE_INSTANTIATED or + + SA_AMF_PRESENCE_INSTANTIATION_FAILED the start or restart will + continue with + the assignment of load. + + This implemntation means that the complete instantiation procedure + never will be endlessly waiting for a register. The + + instantiation will + + either turn out in a component instantiation failure or a success. + + + Hardening of the cluster start use case: + + 1. A clearer separation of the responsibilities between + + amf_cluster and + + amf_application. + + 2. A clearer interface and separation between amf_main (amf.c) and + amf_cluster. + + 3. A clearer interface and separation between amf_cluster + + and amf_node. + + + 4. A clearer separation of the responsibilities between amf_node and + amf_application. + + + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1251 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2006-09-29 Hans Feldt <hans.feldt@ericsson.com> + + The configuration attribute 'saAmfSGNumPrefInserviceSUs' was not considered by AMF during initial start. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1250 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Two configuration attributes for SG objects were not handled correctly by the config parser. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1249 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2006-09-28 Hans Feldt <hans.feldt@ericsson.com> + + Patches from Mathieu.Marie@sun.com: 2- On Solaris, the SA components executed have no names. 3- When killing the testamf1 component, it makes the aisexec process crash on both of my nodes. 4- max priority for RR on solaris is 59. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1247 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2006-09-25 Hans Feldt <hans.feldt@ericsson.com> + + An update of README.amf to match current state of the implementation. README.amf now also includes a detailed list of what is currently NOT implemented. + README.amf includes now, as before, a "demo example". + + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1244 fd59a12c-fef9-0310-b244-a6a79926bd2f + + - Fix for bug: 'default section created when syncing' - Section count synced correctly + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1243 fd59a12c-fef9-0310-b244-a6a79926bd2f + + global_ckpt_id fix #2 ckpt dump function + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1242 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2006-09-20 Hans Feldt <hans.feldt@ericsson.com> + + Correction to a problem when a cluster consisting of several nodes starts initially in an order such that at least two nodes start after at least one node has been started and its SUs has been instantiated. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1241 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2006-09-12 Hans Feldt <hans.feldt@ericsson.com> + + Created + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1240 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2006-09-11 Hans Feldt <hans.feldt@ericsson.com> + + Fix for global_ckpt_id not synced + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1239 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2006-09-06 Hans Feldt <hans.feldt@ericsson.com> + + - ckpt_id was not synced. - debug printout of list reduced + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1238 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2006-09-05 Hans Feldt <hans.feldt@ericsson.com> + + 1. Improvement to manage more than one SG within an Application and to asymmetrically distribute the SG:s among the Nodes. 2. strcmp bug fixes several *_find functions. 3. Minor bug fixes. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1237 fd59a12c-fef9-0310-b244-a6a79926bd2f + + - "No need for DNS or /etc/hosts" + The call to gethostbyaddr() has been removed. This has been replaced by a + protocol where each node multicasts its hostname (obtained with gethostname()). + + - "Logical AMF nodes" + + The AMF node name is no longer a hostname. The saAmfNodeClmNode + configuration attribute of the AMF node is now the hostname. This config + attribute is now mandatory. The change to amf.conf file shows required changes. + + - Some other AMF sync bug fixes + + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1236 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2006-09-01 Hans Feldt <hans.feldt@ericsson.com> + + Added file and line of caller, useful for troubleshooting. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1235 fd59a12c-fef9-0310-b244-a6a79926bd2f + + - enable the global debug flag again, individual 'logger' directives might be used to disable a certain logger source. - when DEBUG compiled it does not use the new printer threads (printouts are not buffered) - man page update - openais.conf update + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1234 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2006-08-28 Hans Feldt <hans.feldt@ericsson.com> + + Allow AMF to handle health check responses while syncing. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1233 fd59a12c-fef9-0310-b244-a6a79926bd2f + + 1. Improvement of the use case 'Amf node leave spontaneously' 2. Improvement of the use case 'Amf node join' 3. Improvement to manage more than one SG within an Application. 4. Improvement to manage an arbitrary number of Csi-assignments associated to the Csi + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1232 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2006-08-28 Fabien Thomas <fabien.thomas@netasq.com> + + add missing clean for libcfg + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1231 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2006-08-24 Fabien Thomas <fabien.thomas@netasq.com> + + correct fd leak on error case + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1229 fd59a12c-fef9-0310-b244-a6a79926bd2f + + correct broken POLLHUP, POLLERR under BSD + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1228 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2006-08-24 Hans Feldt <hans.feldt@ericsson.com> + + AMF sync improvements: change assert to return in mcast rec. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1227 fd59a12c-fef9-0310-b244-a6a79926bd2f + + testamf1.c improvements + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1226 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2006-08-23 Fabien Thomas <fabien.thomas@netasq.com> + + return SA_AIS_ERR_INVALID_PARAM when vector ptr is NULL or len equal to 0 + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1225 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2006-08-21 Fabien Thomas <fabien.thomas@netasq.com> + + doc was not updated when switching command line options to lowercase + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1222 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2006-08-18 Fabien Thomas <fabien.thomas@netasq.com> + + do not include alloca.h under BSD; alloca is in stdlib.h + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1221 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2006-08-17 Hans Feldt <hans.feldt@ericsson.com> + + AMF sync #2 + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1220 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2006-08-17 Fabien Thomas <fabien.thomas@netasq.com> + + add command line support with: launch as a foreground application, do not set priority + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1219 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2006-08-16 Steven Dake <sdake@redhat.com> + + Add scalability to 128 nodes by adding new parameter to protocol which is a random timeout bounded by a configuration parameter when sending join messages. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1214 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Return ERR_TIMEOUT if timeout value is zero in saEvtChannelOpen + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1211 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Fix make install to install clm shared object files properly. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1208 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Improve recovery code to produce correct printf notice outputs. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1207 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Fix debug output for testckpt service. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1206 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2006-08-11 Hans Feldt <hans.feldt@ericsson.com> + + - New sync state machine, implemented and described in amf.c - One AMF node reads the AMF config file (IMM style) - One AMF node syncs others AMF nodes - One AMF object is serialized and sent as one message - Serialization/deserialization of most objects is trivial (memcpy) except for component and csi-attributes objects which have variable size arrays/strings. - Depth first AMF object tree traversal preserves relations when syncing - Ordered lists of SUs and SIs - Constructors/destructor per class - Serializers/deserializers per class - Config-change changes sync state - Sync callbacks executes the sync - "Use case" tracing for sync using the SYNCTRACE macro (trace6) - Sync master is initially the winner of a timeout race and if the master leaves the cluster, the node with the lowest node ID becomes new master. - amf_malloc implements an AMF central malloc routine with error handling. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1200 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2006-08-11 Patrick Caulfield <pcaulfie@redhat.com> + + fixe a bug in cpg where get_group() will return the wrong group info structure if there is a hash collision. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1199 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2006-08-08 Steven Dake <sdake@redhat.com> + + Fix checkpoint header file error + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1178 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2006-08-05 Steven Dake <sdake@redhat.com> + + Committed a bunch of changes for testing scalability - reverting patch + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1177 fd59a12c-fef9-0310-b244-a6a79926bd2f + + non-blocking syslog and file logging support + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1176 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Solaris port for openais + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1175 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2006-08-03 Steven Dake <sdake@redhat.com> + + Make sure sync_activate is called only once per service handler. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1174 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2006-08-02 Hans Feldt <hans.feldt@ericsson.com> + + Removes the hardcoded limit of environment variables and argvs from components, now unlimited. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1172 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2006-08-01 Hans Feldt <hans.feldt@ericsson.com> + + - Handling of HUP and other poll errors improved in saAmfDispatch. - Termination of testamf1 when saAmfDispatch returns an error. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1171 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2006-07-29 Steven Dake <sdake@redhat.com> + + Patch so realloc reverts to old buffer if reallocation fails. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1170 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Fix lock marshalling. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1169 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2006-07-26 Steven Dake <sdake@redhat.com> + + Endian conversion for evs service. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1168 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Endian cleanup for ykd. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1167 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Cleanup log_printf to use gnu attributes to do automatic type checking. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1166 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Endian conversion for the lock service. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1165 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Use memb_ring_id_copy for alignment purposes on 64 aligned arches and keep the port id in host byte order until it is used in the totem protocol stack. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1164 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Add endian cleanup fixes. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1163 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Clean up endian swabbing for cpg service. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1162 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Fix where setsockopt is bound to in totemnet. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1161 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Cleanup comparisons in lcr_ifact and use strtok_r instead of junky parser. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1160 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Add errno.h include since it was removed from swab.h. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1159 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Remove bunch of unused includes from swab.h. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1158 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Fix processor count in evs interface. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1157 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Endian cleanup for the clm service. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1156 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2006-07-24 Steven Dake <sdake@redhat.com> + + Allow build type of COVERAGE for code coverage analysis + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1152 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2006-07-21 Steven Dake <sdake@redhat.com> + + Ensure make install works with recent libcfg changes. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1151 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2006-07-21 Patrick Caulfield <pcaulfie@redhat.com> + + Add a 'family' parameter to totemip_parse so it can be told to look for either IPv4 or IPv6 addresses, or both. + As we get the (unambiguous) multicast address first, we can make sure we always + look for the right type of node address afterwards. + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1150 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2006-07-21 Steven Dake <sdake@redhat.com> + + Increase IPC thread stack size from 100k to 200k to accomodate larger data structures in ipc message handlers (for the CLM service). + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1149 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Remove TODO for swabbing conn data structure + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1148 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Validate IO Vector elements in a saCkptCheckpointWrite operation + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1147 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Remove TODO comment that has long been fixed in the code. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1146 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Correct malloc of checkpoint iteration size from 500 bytes to max section id size bytes for the created checkpoint + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1145 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Reduce memory usage in large configurations by dynamically allocating fragmentation assembly buffer. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1144 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Remove marshall TODO items as they are not needed + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1143 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Remove unnecessary exit from testevs + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1142 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2006-07-20 Steven Dake <sdake@redhat.com> + + Remove debug printf in totemsrp + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1141 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Don't segfault if unauthorized user connects + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1140 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Make checkpoint service work according to specifications with regards to the unlink operation. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1139 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2006-07-19 Steven Dake <sdake@redhat.com> + + Remove compile warning from cfgtool commit. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1138 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Add support for reenabling a failed redundant ring and printing ring status through the test/opeanis-cfgtool application. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1137 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2006-07-19 Patrick Caulfield <pcaulfie@redhat.com> + + Send the new joinlists using the sync service, so it happens atomically. This should fix some odd sequencing bugs. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1136 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2006-07-18 Patrick Caulfield <pcaulfie@redhat.com> + + printing ipv6 addresses often needs more than a 32 byte buffer. THis could causes a crash with sone ipv6 installations. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1135 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2006-07-18 Steven Dake <sdake@redhat.com> + + Support for ia64 arch builds. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1133 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2006-07-17 Steven Dake <sdake@redhat.com> + + Fix synchronization not working properly. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1132 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Event marshalling patch for 32/64/endian support. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1131 fd59a12c-fef9-0310-b244-a6a79926bd2f + + If version field is NULL as passed to saClmInitialize, return INVALID_PARAM + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1130 fd59a12c-fef9-0310-b244-a6a79926bd2f + + If TRACK_CURRENT is specified in CLM service and notify buffer is null, return tracking data in callback as per specification. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1129 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Remove debug printf in track stop operation + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1128 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Check for invalid handles first in API calls. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1127 fd59a12c-fef9-0310-b244-a6a79926bd2f + + If the max section size is less then the read size, return INVALID_PARAM. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1126 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Return INVALID_PARAM when section read is larger then checkpoint section + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1125 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2006-07-16 Steven Dake <sdake@redhat.com> + + CheckpointRead wasn't checking the active replica was set. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1124 fd59a12c-fef9-0310-b244-a6a79926bd2f + + The creation attributes set bit wasn't set from the library to executive message handlers causing significant problems with open was called from a app. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1123 fd59a12c-fef9-0310-b244-a6a79926bd2f + + The open flags are used before they are verified to be valid. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1122 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2006-07-14 Steven Dake <sdake@redhat.com> + + Proper barrier operation as requested. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1121 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Add support for s390 and s390x architectures. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1120 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2006-07-13 Steven Dake <sdake@redhat.com> + + Fix library renames to 2.0.0 as needed by distros. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1119 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2006-07-12 Steven Dake <sdake@redhat.com> + + Update to checkpoint service to use new APIs as rest of services do. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1118 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2006-07-11 Steven Dake <sdake@redhat.com> + + Fix broken timers when release type set to RELEASE + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1117 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Remove dead definition of struct queue + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1116 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Missing commit from previous rename of saServiceConnectTwo + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1115 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Rename saConnectServiceTwo to saConnectService + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1114 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Fix typo in saMsg.h header file. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1113 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Rev versions to 2.0 and update versions script for all services + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1112 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2006-07-07 Steven Dake <sdake@redhat.com> + + The member list, joined list, and left list in configuration changes was not valid. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1111 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2006-07-07 Fabien Thomas <fabien.thomas@netasq.com> + + remove commited conflict + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1110 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2006-07-07 Patrick Caulfield <pcaulfie@redhat.com> + + testcpg -i shows node ids as IP addresses. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1109 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2006-07-07 Hans Feldt <hans.feldt@ericsson.com> + + - Error escalation improved, SU failover recovery action added - Most runtime attributes in the inf. model calculated in runtime from more fundamental information. (improves consistency) - sg_assign_si can now recalculate workloads considering existing assignments - Logging improvements, similar to what is required as notification in AMF spec. - CLC-CLI INSTANTIATE now exits aisexec when it fails (should later be sent as an NTF alarm) - CLC-CLI CLEANUP correctly handles already terminated processes - testamf1.c printouts removed for normal operation - Iterator functions for SI/CSI assignments + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1108 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2006-07-07 Steven Dake <sdake@redhat.com> + + Make sure RELEASE version detaches from tty + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1105 fd59a12c-fef9-0310-b244-a6a79926bd2f + + The testcpg tool now prints IP addresses instead of a hex value indicating the node id. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1103 fd59a12c-fef9-0310-b244-a6a79926bd2f + + The recent endian/32/64 changes broke cpg callbacks. The left list address was incorrectly calculated. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1102 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2006-07-06 Steven Dake <sdake@redhat.com> + + The totem rrp incorrectly increased the wrong failure counter. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1101 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2006-06-30 Steven Dake <sdake@redhat.com> + + marshall of cpg_join name field is wrong. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1100 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Rework of the timer system to allow timers to be added in dispatch handlers. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1099 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2006-06-29 Steven Dake <sdake@redhat.com> + + Rewrite of the checkpoint benchmark using threads tool + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1098 fd59a12c-fef9-0310-b244-a6a79926bd2f + + set serialize lock to proper function. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1097 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Rework of IPC layer once again + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1096 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2006-06-28 Steven Dake <sdake@redhat.com> + + Fix problem where AMF locks up system if two or more components are members of the same service unit. Also fixes problem where AMF asserts if two or more components are specified in a service unit. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1095 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Fix 32/64 endian for all services from a previous missed commit. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1094 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Fix double free problem in ipc by reworking libais_disconnect to match previous rewritten model in picacho. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1092 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2006-06-27 Hans Feldt <hans.feldt@ericsson.com> + + AMF changes: - Revised cluster start - Includes Steven's "amf invalid write patch" - Includes "components not started with 0.76" patch - New timer API use backed out of AMF (temporary) + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1091 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2006-06-26 Steven Dake <sdake@redhat.com> + + Finally remove all references to ais_amf.h and replace with saAmf.h. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1090 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Corrected timer deadlock that occurs when a timer add or delete operation occurs within a timer expiration event. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1089 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Removed ais_amf.h and instead point all refs to saAmf.h + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1088 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2006-06-25 Steven Dake <sdake@redhat.com> + + Remove dead file + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1087 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2006-06-23 Steven Dake <sdake@redhat.com> + + Missed commit of marshall file for some reason. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1086 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Make cpg 32/64 userland safe and endian safe. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1085 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2006-06-22 Patrick Caulfield <pcaulfie@redhat.com> + + Fix message alignment in CPG. we now unpack the message in the same way as we pack it. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1084 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2006-06-22 Steven Dake <sdake@redhat.com> + + Change makefile to install swab from correct place + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1081 fd59a12c-fef9-0310-b244-a6a79926bd2f + + New make release in top level makefile + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1077 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2006-06-21 Steven Dake <sdake@redhat.com> + + Modify AMF to use new timer.c/timer.h routines properly + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1076 fd59a12c-fef9-0310-b244-a6a79926bd2f + + 32/64/mixed endian support for checkpoint service. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1074 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Fix for early logging from Hans. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1073 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Fix error where pathlist buffer is overrun resulting in segfault + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1072 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2006-06-20 Hans Feldt <hans.feldt@ericsson.com> + + Refactoring of AMF into several files (based on classed in inf. model). A central header file (amf.h) keeps all the definitions and prototypes needed. + New things apart from that: + - some doxygen html generated from AMF e.g. each file has a description + - saAmfHAStateGet() now works + - component invoked healthchecks implemented (but not tested) + + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1071 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2006-06-20 Steven Dake <sdake@redhat.com> + + Fix off by one error in totemsrp. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1070 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2006-06-19 Steven Dake <sdake@redhat.com> + + Missed timer commit. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1069 fd59a12c-fef9-0310-b244-a6a79926bd2f + + missed commit + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1068 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2006-06-16 Steven Dake <sdake@redhat.com> + + deferred timer system so that timers may be deferred during synchronization. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1067 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Fix dependencies and install all header files for external service handlers. New defination required to build external service handlers. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1066 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Allow CFLAGS and LDFLAGS to be overridden through the environment or command line. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1065 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2006-06-06 Steven Dake <sdake@redhat.com> + + Remove warnings in AMF executive service. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1061 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Update TODO file with cluster membership 32/64/endian work being completed. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1060 fd59a12c-fef9-0310-b244-a6a79926bd2f + + 32/64/endian everything should work now for openais clm service. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1059 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2006-05-31 Hans Feldt <hans.feldt@ericsson.com> + + - (Re-)introduction of event based multicast messages (not all yet) - Use of Distinguished Names (DN) in API and multicast messages - CSI resassignment properly handled (by using restarting state) - State 'setter' functions with uniform printouts - Simple 'assign SU to host' algorithm: - based on saAmfSUHostedByNode config attribute - see config file for example - Debug print runtime attributes upon user request: $ pkill -USR2 aisexec - Object-oriented naming of functions started (but not finished) - testamf1.c updated with some new tests - Minor fix in print.h and print.c - AMF can be started on two nodes (example config file needs modification for this) + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1058 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2006-05-29 Steven Dake <sdake@redhat.com> + + Set to SCHED_RR:1 to match ipc layer + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1057 fd59a12c-fef9-0310-b244-a6a79926bd2f + + sched_setscheduler was passing wrong argument + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1056 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2006-05-27 Steven Dake <sdake@redhat.com> + + Update TODO to match 2006 project priorities. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1055 fd59a12c-fef9-0310-b244-a6a79926bd2f + + This sanitizes the makefiles in several ways * .so and .so.1 files are linked to library.so.1.0.0 and installed with make install * renames all build targets to library.so.1.0.0 from library.so.1.0 * puts ld.so.conf.d files in the correct place * allows not installing static libraries by using make install STATICLIBS=NO + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1054 fd59a12c-fef9-0310-b244-a6a79926bd2f + + This patch checks the result of read operations on a socket which can return errors or 0. Now if those cases happen, the operation is ignored. This part of the code needs more attention later to handle short reads. This removes a warning when fortify source is defined to the compiler. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1053 fd59a12c-fef9-0310-b244-a6a79926bd2f + + This patch does the following things: * changes the default search path for lcrso files to /usr/libexec/lcrso * checks the result of getcwd which can fail and return an error - in that case handle the error appropriately * changes a comment that was incorrectly stating only the cwd was being searched for lcrso files + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1052 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Under load, it was observed that the token could be lost because the totem protocol was not being scheduled above the other I/O processes. This patch reinstalls the sched_setscheduler call which for some reason was commented out. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1051 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2006-05-26 Steven Dake <sdake@redhat.com> + + defect 1270 Fix checkpoint read operation which would return invalid operation in some circumstances. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1050 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Remove scandir error=%s printf since it spews a bunch of errors when the aisexec is run after a make install + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1049 fd59a12c-fef9-0310-b244-a6a79926bd2f + + sanitize make install in Makefile + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1048 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Fix segfault if rrp_mode: MODE isn't set in configuration file. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1047 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Remove warning about memb_set_print not being used. This is only useful for debugging. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1046 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Remove deliver_fn which is not the ipc delivery function handler but the executive multicasted messages delivery function. This was inadvertantly copied and pasted from main.c + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1045 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Properly process the ld.so.conf file if it has includes. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1044 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Remove warning about unsigned/signed passed to strcpy + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1043 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Modified initscript to not start by default on redhat systems + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1042 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Return unsigned char as needed by gcc 4.1 + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1041 fd59a12c-fef9-0310-b244-a6a79926bd2f + + code analysis found a memset overwrote a data structure. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1040 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2006-05-25 Patrick Caulfield <pcaulfie@redhat.com> + + Add missing endian conversion to memb_merge_detect + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1039 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2006-05-23 Patrick Caulfield <pcaulfie@redhat.com> + + Remove poinless man-page. bug fix CPG example. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1038 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2006-05-22 Steven Dake <sdake@redhat.com> + + commit for redundant ring take 4 was only done from exec directory missing all of the commits for the rest of the directories. This commit will now allow the tree to compile. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1035 fd59a12c-fef9-0310-b244-a6a79926bd2f + + First take at doxygen support for openais APIs. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1034 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2006-05-19 Steven Dake <sdake@redhat.com> + + Endian fixes for the recent redundant ring protocol work plus the cluster membership API support. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1033 fd59a12c-fef9-0310-b244-a6a79926bd2f + + The redundant ring take 4 patch. This includes modes for active, passive, and none. Read openais.conf.5 for information regarding how to configure redundant ring. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1032 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Patch to allow system to work if no ld.so.conf is present. ld.so.conf is optional and may not be present on a system. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1031 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2006-05-19 Patrick Caulfield <pcaulfie@redhat.com> + + Don't crash if we get an unathenticated connection from a library. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1030 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Allow the syslog facility type to be set in the configuration file. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1029 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2006-05-17 Patrick Caulfield <pcaulfie@redhat.com> + + Move CPG_SERVICE into service_types where it belongs. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1028 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Close ld.so.conf file descriptor when finished with it. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1027 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2006-05-17 Hans Feldt <hans.feldt@ericsson.com> + + Introduction of SA Forum information model for AMF as specified in SAI-Overview-B.02.01.pdf. Other AMF changes as specified in SAI-AIS-AMF-B.02.01. + Summary: + + - SA Forum B.02 Information model for AMF + - groups.conf renamed to amf.conf + - amf.conf syntax changed heavily to follow SA Forum specs. + - AMF works when daemon. + - linux lists removed from AMF + - component cmd environment variables support + - component argv support + - multi value csi attributes + + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1026 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2006-05-15 Patrick Caulfield <pcaulfie@redhat.com> + + getaddrinfo() doesn't actually set errno, it has its own error variable, so returning -errno is not useful (it may be zero even if getaddrinfo failed). + So, simply return -1 if getaddrinfo fails, to indicate a name resolution + or badly formed address. + + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1025 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2006-05-11 Steven Dake <sdake@redhat.com> + + Environment variable cleanup, documentation of environment variables in man pages, and rename of one of the environment variables used to specify the main openais configuration file. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1024 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2006-05-10 Fabien Thomas <fabien.thomas@netasq.com> + + fix compile under darwin: sched_setscheduler does not exist + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1023 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2006-05-10 Hans Feldt <hans.feldt@ericsson.com> + + - Preprocessor flags to control user, group and directory for configuration files removed. + - Environment variables for the same thing added: + OPENAIS_AISPARSER_FILE + OPENAIS_AMF_CONFIG_FILE + OPENAIS_TOTEM_AUTHKEY_FILE + + - Make depend target in exec makefile updated with missing source files. + + + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1022 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2006-05-03 Hans Feldt <hans.feldt@ericsson.com> + + - printouts buffered before log_setup() has been called, flushed at early exit. - rests of old logging removed from all code (#define LOG_SERVICE...). - line feed added if not in message. - new trace() function added so that trace macros adds minimum of code and runtime penalties to user code. - ENTER_ARGS macro changed to ENTER. ENTER macro now requires arguments. - openais.conf.5 man page updated with logger directives. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1021 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2006-05-02 Patrick Caulfield <pcaulfie@redhat.com> + + Cope with >32 groups on a node that goes down. Add a missing endian conversion. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1020 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2006-04-30 Steven Dake <sdake@redhat.com> + + Fix comile failures for BSD/Darwin port + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1019 fd59a12c-fef9-0310-b244-a6a79926bd2f + + add vsf none option for those that don't want a virtual synchrony filter + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1018 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2006-04-28 Steven Dake <sdake@redhat.com> + + Fix up mutexes to avoid deadlocks + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1017 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2006-04-28 Patrick Caulfield <pcaulfie@redhat.com> + + A misplaced close brace, caused cpg to only return the first node in the list went several went down. + Also, replaced totemip_equal() calls with nodeid comparisons as CPG works + entirely on nodeIDs anyway. + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1016 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2006-04-27 Steven Dake <sdake@redhat.com> + + Remove prio commented out code + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1015 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Add invalid handle definition + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1014 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Remove priority from aispoll since we now use the kernel scheduler for priorities for polling + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1013 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Add IPC files from missing previous commit + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1012 fd59a12c-fef9-0310-b244-a6a79926bd2f + + This patch reworks IPC to use threads instead of the main poll loop + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1011 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Fix segfault because list was not reinitialized after its entry was deleted and it would later be deleted by closing the ipc. the + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1010 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2006-04-26 Hans Feldt <hans.feldt@ericsson.com> + + test commit, one line amf.c change in clc_cli_cleanup + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1009 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2006-04-25 Fabien Thomas <fabien.thomas@netasq.com> + + Remove warnings under Darwin + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1008 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2006-04-25 Steven Dake <sdake@redhat.com> + + Fix scanning of LCRSOs not working on various systems + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1007 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Patch to ensure backlogs are never negative which would cause problems with the flow control algorithm and protocol in general. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1006 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Allow running with BUILD_DYNAMIC set to zero. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1005 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2006-04-24 Steven Dake <sdake@redhat.com> + + Patch from Hans to clean up some error handling in main.c when service handlers do the wrong thing. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1002 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Patch from Hans to clean up main error handling a little bit + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1001 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Clean out private key memory area in case of parser override is used + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1000 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Patch from Hans to fix segfault in loading of LCR components + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@999 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2006-04-21 Steven Dake <sdake@redhat.com> + + More make install work to install all necessary files + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@998 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2006-04-20 Mark Haverkamp <markh@osdl.org> + + Updated copyright dates. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@997 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2006-04-19 Steven Dake <sdake@redhat.com> + + Make install now works along with different search paths for openais's lcrsos. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@996 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2006-04-18 Steven Dake <sdake@redhat.com> + + Patch from Hans to significantly improve the logging functionality read openais.conf.5 for info on how the new logging works. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@995 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2006-04-16 Steven Dake <sdake@redhat.com> + + Remove segfault when object database can't be loaded + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@994 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Remove segfaults when object database can't be loaded for some reason. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@993 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2006-04-15 Steven Dake <sdake@redhat.com> + + remove -DDEBUG from release build + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@992 fd59a12c-fef9-0310-b244-a6a79926bd2f + + defect 1201 cleanup poll_dispatch_delete in trunk + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@991 fd59a12c-fef9-0310-b244-a6a79926bd2f + + remove warnings form totemrrp and also fix bug where send_flush wasn't being called for the active replication algorithm + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@990 fd59a12c-fef9-0310-b244-a6a79926bd2f + + remove printf on evs join because groups may be binary data and crash executive + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@989 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Fix warning about unsigned int passed to orf_token_rtr for flow control count + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@988 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Fix warning regarding unsigned int for node_id + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@987 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Fix object_priv_get to actually call object_priv_get instead of object_priv_set + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@986 fd59a12c-fef9-0310-b244-a6a79926bd2f + + cleanup warning in service.c because unsigned char * is passed to atoi instead of char * + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@985 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Add missing vsf.h from previous commit + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@984 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2006-04-14 Steven Dake <sdake@redhat.com> + + fix fc5 segfault correctly by removing code that violates strict aliasing rules. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@983 fd59a12c-fef9-0310-b244-a6a79926bd2f + + scale part 3 componentize YKD dynamic linear voting algorithm + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@982 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2006-04-13 Steven Dake <sdake@redhat.com> + + Improvement of the rrp_algo data structure to support only running totemnet api calls on the appropriate totemnet interfaces. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@981 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Workaround possible optimizer bug in gcc 4.1 by forcing a function not to inline. This would cause segfaults on fc4. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@980 fd59a12c-fef9-0310-b244-a6a79926bd2f + + move nodeid from interface section to totem section + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@979 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2006-04-10 Patrick Caulfield <pcaulfie@redhat.com> + + - Fix BUILD_DYNAMIC=0 (add amfconfig.o to SERV_OBJS) - add objdb->object_find_reset() before looking for user/group names. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@978 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Split the logging config options into three keys: to_file, to_stderr & to_syslog + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@977 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2006-04-09 Steven Dake <sdake@redhat.com> + + defect 1191 Add more support for the redundant ring protocol. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@976 fd59a12c-fef9-0310-b244-a6a79926bd2f + + defect 1190 scale to 128 nodes more effectively by dynamically sending partial structures in the commit token ahd memb_join messages. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@975 fd59a12c-fef9-0310-b244-a6a79926bd2f + + defect 1139 reorg of code to better support creating external service handlers + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@972 fd59a12c-fef9-0310-b244-a6a79926bd2f + + defect 1170 another fix for the assertion in memb_recovery_enter + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@971 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2006-04-07 Patrick Caulfield <pcaulfie@redhat.com> + + Use the tmp variable in the right iterator loop ! With debug enabled, that's a guaranteed crash in cpg when a node leaves. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@970 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2006-04-06 Patrick Caulfield <pcaulfie@redhat.com> + + Use objdb for configuration. All components now get a reference to the objdb rather than openais_config. + The default config object "aisparser" reads openais.conf as before, but can + be overridden by an environment variable. + + Bug 1132 + + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@969 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2006-04-06 Steven Dake <sdake@redhat.com> + + defect 1170 remove extra debug exit(1 + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@968 fd59a12c-fef9-0310-b244-a6a79926bd2f + + defect 1170 Fix recovery protocol to avoid assertion in memb_state_recovery_enter + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@967 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2006-04-04 Steven Dake <sdake@redhat.com> + + defect 205 implement totem single ring protocol flow control algorithm + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@966 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2006-04-03 Patrick Caulfield <pcaulfie@redhat.com> + + Set the object value length too. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@965 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2006-03-31 Steven Dake <sdake@redhat.com> + + Fix typo is clc_cli_script + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@963 fd59a12c-fef9-0310-b244-a6a79926bd2f + + defect 1172 checkpoint service asserts under load during configuration changes + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@962 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2006-03-31 Fabien Thomas <fabien.thomas@netasq.com> + + defect 1178: use synchronous lock structure on reply + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@961 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2006-03-29 Steven Dake <sdake@redhat.com> + + defect 1153 Fix segfault with sync service if syncronization is interrupted during recovery. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@960 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2006-03-28 Muni Bajpai <muni.osdl@gmail.com> + + defect 1192 Fixes the issue of ckpt sections getting reordered and also fixes the issue of synchronizing ckpt while under the retention timer. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@959 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2006-03-28 Patrick Caulfield <pcaulfie@redhat.com> + + Call a service's config_init_fn() as soon as it is loaded. Then call exec_init_fn() after other initialisation has happened. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@958 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2006-03-27 Steven Dake <sdake@redhat.com> + + patch from Hans to support amf B types + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@957 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2006-03-24 Steven Dake <sdake@redhat.com> + + enhancement 1145 Patch from Lars to implement csi attribute setting in config file and delivered via callback. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@956 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Patch from Hans to fix up the configurable /var/run and /etc/ais directory support. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@955 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2006-03-24 Fabien Thomas <fabien.thomas@netasq.com> + + Bug 1130: add totempg log; remove warnings; add DPRINT macro + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@954 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2006-03-23 Steven Dake <sdake@redhat.com> + + objdb merge add missing service.c file + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@953 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2006-03-18 Steven Dake <sdake@redhat.com> + + defect 1139 merge object database and do a general refactor of the code + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@952 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2006-03-17 Steven Dake <sdake@redhat.com> + + Patch from Hans This patch (against r950) makes it possible to change the directory where aisexec searches for configuration files. Pretty much in line with the possibility to specify user and group. Just do: + make OPENAIS_CONFDIR=/tmp/ais + + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@951 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2006-03-16 Steven Dake <sdake@redhat.com> + + Patch from Hans Feldt This small patch (against r948) adds variable CPPFLAGS to all make rules that compiles `.c' files into `.o' files. + This makes it possible to set CPPFLAGS on the command line as in: + + $ make CPPFLAGS=-DAMFDEBUG + + Editing the makefile when prototyping is then not needed. + + Another reason is that some of the openais C files are built using the + implicit rule for C files (which uses CPPFLAGS). The change makes rules + consistent with the implicit rule. + + It also adds a few missing files to the clean make target. + + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@950 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2006-03-15 Muni Bajpai <muni.osdl@gmail.com> + + Fix the innacurate dataSize in the Checkpoint Read response reported by Bjorn. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@949 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2006-03-08 Steven Dake <sdake@redhat.com> + + defect 1113 Checkpoint iteration is totally broken. This patch makes checkpoint iteration work properly for multiple checkpoint iterators and now is compliant with the specifications for the trunk version. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@948 fd59a12c-fef9-0310-b244-a6a79926bd2f + + defect 1117 binding to localhost doesn't work. This patch reenables that functionality. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@947 fd59a12c-fef9-0310-b244-a6a79926bd2f + + defect 1120 The AMF code doesn't detect invalid healthcheck keys and crashes when an invalid healthcheck key is specified. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@946 fd59a12c-fef9-0310-b244-a6a79926bd2f + + defect 1116 The IPC code spins in recvmsg in the library resulting in poor performance and deadlock in the AMF service. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@945 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2006-03-07 Fabien Thomas <fabien.thomas@netasq.com> + + repair OPENAIS_COVERAGE, OPENAIS_PROFILE + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@944 fd59a12c-fef9-0310-b244-a6a79926bd2f + + use sched_get_priority_max to set the maximum priority + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@943 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2006-03-07 Muni Bajpai <muni.osdl@gmail.com> + + defect 1115 added support for reinitializing synchrony to support ongoing sync during a re-configuration. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@942 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2006-03-06 Muni Bajpai <muni.osdl@gmail.com> + + defect 1115 fix faulty check. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@941 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2006-03-06 Patrick Caulfield <pcaulfie@redhat.com> + + Add man pages for the libcpg functions. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@940 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Fix testcpg.c so it actually works. + in exec/cpg: Don't regard a process as joined until all all nodes have + received the message. + Don't send other nodes' processes in a joinlist message! + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@939 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2006-03-06 Muni Bajpai <muni.osdl@gmail.com> + + bug 1115. Fixes the synchronization algorithm which was skipping services. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@938 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2006-03-05 Muni Bajpai <muni.osdl@gmail.com> + + Bug Fix for memory leak in ckpt section management. Bug 1112 + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@937 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2006-03-03 Patrick Caulfield <pcaulfie@redhat.com> + + Add cpg (closed process groups) component. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@936 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2006-03-03 Steven Dake <sdake@redhat.com> + + defect 981 This patch fixes a problem where the synchronization engine would not work cross endian. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@935 fd59a12c-fef9-0310-b244-a6a79926bd2f + + defect 981 This patch fixes a problem where ykd would not work cross endian + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@934 fd59a12c-fef9-0310-b244-a6a79926bd2f + + defect 981 This patch fixes a problem where totempg would not work cross-endian. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@933 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2006-03-02 Muni Bajpai <muni.osdl@gmail.com> + + reverting fix to man page as only 0.72 is broken with last byte zero in bindnetaddress + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@932 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2006-03-01 Muni Bajpai <muni.osdl@gmail.com> + + Remove the reference to the use of 0 as last byte in the bindnetaddr + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@931 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2006-02-21 Steven Dake <sdake@redhat.com> + + defect 1099 move "ais" init script to mvlcge add redhat init script from Bjorn + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@927 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Fabien's patch for the BSD/Darwin port. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@926 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2006-02-15 Steven Dake <sdake@redhat.com> + + Patch from Patrick This patch restores the functionality in previous versions where the node address could be specified as a network address in openais.conf + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@925 fd59a12c-fef9-0310-b244-a6a79926bd2f + + enhancement 1049 Patch from Patrick This simple patch stops a potential DoS. If a library tries to access a component that is not loaded into the exec then it will crash trying to deref ais_service_handlers[ service ] + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@924 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2006-02-11 Steven Dake <sdake@redhat.com> + + enhancement 1088 This replaces MSG_DONTWAIT with an fcntl to O_NONBLOCK to be more portable for the BSD port since BSD doesn't support MSG_DONTWAIT properly. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@923 fd59a12c-fef9-0310-b244-a6a79926bd2f + + defect 981 big endian and little endian in the same network causes infinite loop. This patch fixes that problem for the totem layer only. Other components are not resolved. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@922 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2006-02-10 Steven Dake <sdake@redhat.com> + + Get rid of junk debug statement + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@921 fd59a12c-fef9-0310-b244-a6a79926bd2f + + defect 1088 First patch for porting to BSD systems. This patch removes the WAITALL flag entirely from the library handlers, as it appears there may be some portability problems with this flag. The code already handles partial reads anyway, so it was not necessary. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@920 fd59a12c-fef9-0310-b244-a6a79926bd2f + + defect 1066 original 1066 fix introduced new bug found with saftest + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@918 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Some versions of GCC were optimizing out the static ctor section. This patch makes the ctor non-static so it is not optimized out. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@917 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Cleanup of dynamic loading to allow using the same interface factory code for statically linked components. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@916 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2006-02-02 Steven Dake <sdake@redhat.com> + + Patch from Patrick to enable configuring the list of dynamic service handlers in the configuration file. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@915 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2006-02-01 Steven Dake <sdake@redhat.com> + + 1049 make all service handlers dynamically loadable or compilable statically use the BUILD_DYNAMIC flag in the makefile to set dynamic loading or static compile. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@914 fd59a12c-fef9-0310-b244-a6a79926bd2f + + defect 1066 memory leak in saCkptSectionIterationInitialize + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@912 fd59a12c-fef9-0310-b244-a6a79926bd2f + + defect 1065 memory leak in checkpoint iteration when IterationNext has a failure condition (like NO_MORE_SECTIONS) + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@910 fd59a12c-fef9-0310-b244-a6a79926bd2f + + defect 1068 bug in saHandleDestroy could cause extra put on handle when the check is invalid + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@909 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2006-01-25 Mark Haverkamp <markh@osdl.org> + + defect 1049 Fix compile error in testlck and testmsg. Use SA_AIS_OK. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@906 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2006-01-25 Steven Dake <sdake@redhat.com> + + enhancement 1049 enhance services so dynamic service handlers are more easily possible + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@905 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2006-01-24 Mark Haverkamp <markh@osdl.org> + + defect 1048 - make_event uses wrong handle database + Correct calls to saHandleDestroy to use the correct handle database. + + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@903 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2006-01-24 Steven Dake <sdake@redhat.com> + + defect 1046 SaErrorT in trunk branch, but only SaAisErrorT should be used + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@902 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2006-01-22 Steven Dake <sdake@redhat.com> + + defect 1045 totempg is not thread safe, and AMF requires threads to instantiate components + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@898 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2006-01-20 Steven Dake <sdake@redhat.com> + + This is a major rework of the service handling code. Now service handlers can be dynamically loaded via the live component replacement service. Sync handlers are also dynamically contributed. + It is possible to build using either dynamic loading via LCR or static + linking of the entire executive. This is controlled by the BUILD_DYNAMIC + configuration option in the Makefile. + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@892 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2006-01-16 Steven Dake <sdake@redhat.com> + + remove old files that are no longer needed. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@891 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2006-01-14 Steven Dake <sdake@redhat.com> + + Small man page cleanup + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@890 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2006-01-11 Mark Haverkamp <markh@osdl.org> + + defect 1030 + Check return pointer from malloc for NULL. Back out any previous malloc + to eliminate memory leaks. Return proper status. + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@887 fd59a12c-fef9-0310-b244-a6a79926bd2f + + defect 1030 This fixes the event handle leak on failure, the malloc check for hl, removes the redundant memset when creating a handle, and makes sure that the put of the channel handle is a valid handle. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@886 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2006-01-07 Steven Dake <sdake@redhat.com> + + defect 1024 YKD algorithm doesn't always work when new_message_queue is full. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@885 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2006-01-05 Mark Haverkamp <markh@osdl.org> + + Fix for bug 1023. Fixes a problem where the dispatcher can lose track of available events if it gets SA_ERR_TRY_AGAIN from the exec. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@883 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2006-01-03 Steven Dake <sdake@redhat.com> + + Add information about the event and amf directive in the openais.conf.5 man page. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@882 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Delete empty files. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@881 fd59a12c-fef9-0310-b244-a6a79926bd2f + + enhancement 1020 adds missing file from commit + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@880 fd59a12c-fef9-0310-b244-a6a79926bd2f + + enhancement 1020 Adds AMF B.01.01 support - still needs alot of work + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@879 fd59a12c-fef9-0310-b244-a6a79926bd2f + + enhancement 1019 Modify YKD to select primary component and execute the synchronization operation only in the main partition. In the non-primary partition, no new requests are allowed - they are all returned with the error code SA_AIS_ERR_TRY_AGAIN. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@878 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2006-01-02 Steven Dake <sdake@redhat.com> + + defect 1006 on 64 bit platforms, the timer is not properly cleared resulting in segfaults + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@876 fd59a12c-fef9-0310-b244-a6a79926bd2f + + enhancement 1007 need way to install openais into user selectable directories + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@874 fd59a12c-fef9-0310-b244-a6a79926bd2f + + enhancement 1018 Add YKD dynamic voting algorithm to executive code + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@873 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2005-12-27 Steven Dake <sdake@redhat.com> + + defect 999 clm library doesn't exit from poll when executive crashes + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@870 fd59a12c-fef9-0310-b244-a6a79926bd2f + + enhancement 989 improve process group membership interface in totem_pg + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@869 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2005-12-22 Steven Dake <sdake@redhat.com> + + lock service locks up under certain conditions this patch fixes that problem from Mark + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@868 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2005-12-20 Steven Dake <sdake@redhat.com> + + defect 993 ckpt-rd.c and ckpt-wr.c in the test directory don't run with the latest code. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@866 fd59a12c-fef9-0310-b244-a6a79926bd2f + + defect 998 Sometimes the default section isn't synchronized + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@864 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2005-12-08 Steven Dake <sdake@redhat.com> + + defect 982 Fixes ckpt list corruption on failure to allocate checkpoint replica + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@862 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2005-12-06 Steven Dake <sdake@redhat.com> + + defect 988 The totem SRP handle is passed up the entire stack is not needed past certain functions. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@860 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2005-12-05 Steven Dake <sdake@redhat.com> + + fix documentation error from specification which identifies SaLckResourceLockAsync as the function name in some places but saLckResourceLockAsync in other places. We settled on saLck since it matches the rest of the specifications. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@859 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2005-12-01 Steven Dake <sdake@redhat.com> + + shared object name incorrectly set for the lock service to libSaLCK instead of libSaLck. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@858 fd59a12c-fef9-0310-b244-a6a79926bd2f + + fix documentation error from specification which identifies SaLckResourceLockAsync as the function name in some places but saLckResourceLockAsync in other places. We settled on saLck since it matches the rest of the specifications. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@857 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2005-11-30 Steven Dake <sdake@redhat.com> + + defect 979 This enhancement adds support for IPV6 to the trunk of openais. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@856 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Fix defect 974 There was an infinite loop problem in the fix for defect 974 + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@854 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2005-11-25 Steven Dake <sdake@redhat.com> + + defect 932 This patch adds token sequence number and global sequence number rollover support. A window is used to ensure comparisons are done properly. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@852 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2005-11-23 Steven Dake <sdake@redhat.com> + + defect 974 checkpoint service segfaults during synchronization because iteration item is deleted and iteration continues in unsafe fashion. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@850 fd59a12c-fef9-0310-b244-a6a79926bd2f + + defect 969 processor_count_set is called in the wrong place causing the protocol to fail to receive. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@848 fd59a12c-fef9-0310-b244-a6a79926bd2f + + defect 968 Heartbeat failure detection man page updates + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@846 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2005-11-22 Mark Haverkamp <markh@osdl.org> + + Fix for Bug 875. Cleans up a channel that actually opened but the library request timed out. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@844 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2005-11-18 Steven Dake <sdake@redhat.com> + + defect 965 Fix synchronization service lockup if the new_message_queue is full + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@842 fd59a12c-fef9-0310-b244-a6a79926bd2f + + defect 956 fix assertion where new_message_queue is overflowed when a message is pending in the fragmentation queue. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@839 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2005-11-18 Mark Haverkamp <markh@osdl.org> + + Fix for BUG 955. The base event ID needed to be set to one. event zero was being detected as already delivered and thrown away. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@837 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2005-11-18 Steven Dake <sdake@redhat.com> + + defect 968 Improve worst-case failure detection time using active healthchecking + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@836 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2005-10-27 Steven Dake <sdake@redhat.com> + + defect 914 fix gcc 4 specific compile warnings and compile errors + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@834 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2005-10-04 Steven Dake <sdake@redhat.com> + + defect 909 c++ keywords are used in the internal implementation of list.h + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@832 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2005-09-29 Mark Haverkamp <markh@osdl.org> + + Fix compiler warnings when HZ is defined to be a long. Bugzilla #904 + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@830 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2005-09-29 Steven Dake <sdake@redhat.com> + + defect 903 First cut at a distributed locking service. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@829 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2005-09-26 Steven Dake <sdake@redhat.com> + + defect 898 don't need to copy message to fragmentation data buffer if message can be multicasted as is. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@827 fd59a12c-fef9-0310-b244-a6a79926bd2f + + defect 897 fix new_message_queue can be overwritten + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@825 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2005-09-22 Steven Dake <sdake@redhat.com> + + defect 896 Ruppert reported there was a missing typecast + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@822 fd59a12c-fef9-0310-b244-a6a79926bd2f + + defect 895 Ruppert reported that there is code that doesn't do anything but should. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@821 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2005-09-21 Steven Dake <sdake@redhat.com> + + reduce maximum message size since 253000 is beyond the max. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@818 fd59a12c-fef9-0310-b244-a6a79926bd2f + + remove extraneous debug printf + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@816 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2005-09-20 Steven Dake <sdake@redhat.com> + + defect 892 Fix performance degradation when sending 10-15 messages per second because of a large seqno_unchanged_const. Also, seqno_unchanged_const does not have a configurable option and this patch adds that support. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@814 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2005-09-06 Steven Dake <sdake@redhat.com> + + defect 856 - CHANGES and CHANGES_ONLY have identical effect with saClmClusterTrack() + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@812 fd59a12c-fef9-0310-b244-a6a79926bd2f + + defect 855 - implement view numbers and report them correctly as per specs + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@811 fd59a12c-fef9-0310-b244-a6a79926bd2f + + defect 854 - invalid return value displayed in test program + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@810 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2005-08-30 Steven Dake <sdake@redhat.com> + + defect 841 Rabbe reported that cluster track callback operations dont work properly. This patch fixes that problem. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@809 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2005-08-29 Steven Dake <sdake@redhat.com> + + defect 839 The timer interval can be set to less then the platform timing interval. This could result in negative timer values configured by the user which confuse the totem protocol. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@808 fd59a12c-fef9-0310-b244-a6a79926bd2f + + defect 828 assert in totemsrp_avail occurs with certain test cases. The code was rounding down to zero when calculating the number of messages required. This patch adds one in all cases so no roundoff occurs. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@807 fd59a12c-fef9-0310-b244-a6a79926bd2f + + defect 840 J Seltzer reported that closed checkpoints in the TRY_AGAIN state are not closed in the executive but are closed in the library. This patch fixes that problem. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@806 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2005-08-26 Steven Dake <sdake@redhat.com> + + defect 837 Muni reported the token retransmission timer doesn't need to be reset when receiving a retransmission + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@805 fd59a12c-fef9-0310-b244-a6a79926bd2f + + defect 833 Rabbe reported that the encoding of the ipv4 address in SaClmNodeAddressT is incorrect + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@804 fd59a12c-fef9-0310-b244-a6a79926bd2f + + defect 824: replace network directive with totem directive in default configuration file + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@803 fd59a12c-fef9-0310-b244-a6a79926bd2f + + defect 823 Typo in openias conf manpage reported by Rabbe + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@802 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2005-08-19 Mark Haverkamp <markh@osdl.org> + + Fix for bug 825. SaEvtChannelClose needed to handle SA_AIS_ERR_TRY_AGAIN so that the eci_closing would be cleared before returning. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@800 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2005-08-18 Steven Dake <sdake@redhat.com> + + This sets the receive and send transmission buffers to a larger size to avoid overruns of the multicast buffer. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@799 fd59a12c-fef9-0310-b244-a6a79926bd2f + + This fixes an off by one in queue_avail which resulted in an assertion during testing. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@798 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2005-08-17 Steven Dake <sdake@redhat.com> + + defect 501 this patch fixes short reads and writes between the library and executive + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@797 fd59a12c-fef9-0310-b244-a6a79926bd2f + + enhancement 813 Rename ais_types.h header file to be more compliant with sa forum + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@796 fd59a12c-fef9-0310-b244-a6a79926bd2f + + defect 822 checkpoint synchronization has serious bug after saftest fixups + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@795 fd59a12c-fef9-0310-b244-a6a79926bd2f + + enhancmement 821 Global reorganization of totem code and also many feature enhancments These include: need to specify whether authentication is enabled or dislabed in config file need to specify frame size in config file need redundant ring placeholder need to specify version field of totem need to support large frame sizes need to break out threading code from totemsrp need to break out network code from totemsrp need to break out parser code from parse.c and some others + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@794 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2005-08-13 Steven Dake <sdake@redhat.com> + + Patch from Russell Bryant to fix up gcc 4 warnings + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@793 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2005-08-11 Mark Haverkamp <markh@osdl.org> + + The current event service code will start rejecting received events after 4gig because it thinks that they are duplicates. This update fixes that problem. Now I am keeping a full 64 bit id for checking for duplicate/re-sends, etc. separate from the event ID. I also check that a new event ID is not in use by a retained event. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@792 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2005-08-05 Mark Haverkamp <markh@osdl.org> + + Add a check field to the handle structure to make it less likely to get a random valid handle. Fix a couple bugs in the event service that this change exposed. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@791 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2005-08-02 Mark Haverkamp <markh@osdl.org> + + Fix for BUG 803. We need to complete a library call even if the channel requested for unlink has been deleted previous to processing an unlink request. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@790 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2005-07-30 Steven Dake <sdake@redhat.com> + + fixes segfault when ctrl-c pressed with new totemmrp code + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@789 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2005-07-29 Steven Dake <sdake@redhat.com> + + fixes a missed merge in the totemmrp mergeup + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@788 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Fix a few compile warnings. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@787 fd59a12c-fef9-0310-b244-a6a79926bd2f + + defect 796 fix saClmClusterTrack to operate according to specs. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@786 fd59a12c-fef9-0310-b244-a6a79926bd2f + + defect 793 dont return SA_AIS_ERR_NOT_EXIST when tracking started with SA_TRACK_CURRENT only + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@785 fd59a12c-fef9-0310-b244-a6a79926bd2f + + defect 792 saClmTrackStop not returning SA_AIS_ERR_NOT_EXIST + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@784 fd59a12c-fef9-0310-b244-a6a79926bd2f + + defect 790 if sectionDescriptor is null in iteration next call, segfault occurs + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@783 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Add infrastructure support for multiring to totem library Make totemsrp support multiple instances of a running protocol within one app. Rename libtotem to libtotem_pg because of a name conflict with some movie player + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@782 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2005-07-27 Mark Haverkamp <markh@osdl.org> + + Move the check of subscription ID in lib_evt_event_subscribe before processing the filters. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@781 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Fix for bug 776. Don't require retained events to expire before deleting the channel on unlink. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@780 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2005-07-27 Steven Dake <sdake@redhat.com> + + defect 784 readSize is not properly set after return from checkpoint read operation. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@779 fd59a12c-fef9-0310-b244-a6a79926bd2f + + defect 785 ckptbenchth is completely broken. This patch fixes it to operate properly. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@778 fd59a12c-fef9-0310-b244-a6a79926bd2f + + defect 788 ckptbench returns error 7 at 20000 byte size writes. The benchmark program improperly creates the checkpoint parameters. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@777 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2005-07-27 Mark Haverkamp <markh@osdl.org> + + Fix for bug 773. Not quite the full fix, but the best we can do for now. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@776 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Fix for bug 774. Check malloc return before accessing pointer. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@775 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Fix for bug 782. Receved events may not be modified. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@774 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2005-07-26 Steven Dake <sdake@redhat.com> + + defect 777 fix reference counting bugs in aispoll + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@773 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2005-07-25 Mark Haverkamp <markh@osdl.org> + + Update saEvtEventPublist to return the correct error code when the event data size in too big. Bug 768. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@772 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2005-07-15 Steven Dake <sdake@redhat.com> + + defect 754 tests dont build because makefile damaged + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@771 fd59a12c-fef9-0310-b244-a6a79926bd2f + + defect 752 fix reference counting in checkpoint library + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@770 fd59a12c-fef9-0310-b244-a6a79926bd2f + + defect 751 when ckptSectionIterationNext iterates all sections, SA_AIS_ERR_NO_SECTIONS not being returned. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@769 fd59a12c-fef9-0310-b244-a6a79926bd2f + + defect 750 in saCkptIterationFinalize if no active replica set, return error + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@768 fd59a12c-fef9-0310-b244-a6a79926bd2f + + defect 749 Make handle put work properly for IterationFinalize + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@767 fd59a12c-fef9-0310-b244-a6a79926bd2f + + defect 748 rename sectioniterator to sectioniteration in executive and library + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@766 fd59a12c-fef9-0310-b244-a6a79926bd2f + + defecct 747 in saCkptSectionIterationInitialize if sectionsChosen invalid, return INVALID_PARAM + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@765 fd59a12c-fef9-0310-b244-a6a79926bd2f + + defect 746 return INVALID_PARAM in saCkptSectionIterationInitialize if address is NULL + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@764 fd59a12c-fef9-0310-b244-a6a79926bd2f + + defect 745 in saCkptSectionCreate if initialData == NULL return INVALID_PARAM + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@763 fd59a12c-fef9-0310-b244-a6a79926bd2f + + defect 744 return SA_AIS_ERR_EXIST in saCkptSectionCreate if maxSections == 1 + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@762 fd59a12c-fef9-0310-b244-a6a79926bd2f + + defect 743 in saCkptCheckpointSectionCreate return SA_AIS_ERR_NO_SPACE if current sections == maxSections + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@761 fd59a12c-fef9-0310-b244-a6a79926bd2f + + defect 742 error not returned in saCkptSectionCreate if sectionCreationAttributes == NULL + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@760 fd59a12c-fef9-0310-b244-a6a79926bd2f + + defect 741 saCkptCheckpointOpenAsync doesn't return error when checkpointSize > maxSections * maxSectionsSize + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@759 fd59a12c-fef9-0310-b244-a6a79926bd2f + + defect 740 if open callback isn't set on saCkptCheckpointOpenAsync, return SA_AIS_ERR_INIT + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@758 fd59a12c-fef9-0310-b244-a6a79926bd2f + + defect 739 saCkptCheckpointOpenAsync callback doesn't return error as per spec + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@757 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2005-07-13 Steven Dake <sdake@redhat.com> + + defect 718 if no active replica is not set do not set expiration time and return error. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@756 fd59a12c-fef9-0310-b244-a6a79926bd2f + + defect 717 if checkpoint is not writeable in durationset, return error + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@755 fd59a12c-fef9-0310-b244-a6a79926bd2f + + defect 716 in durationtimeset if sectionId is null, return error + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@754 fd59a12c-fef9-0310-b244-a6a79926bd2f + + defect 715 synchronize open missing break in dispatch causing checkpointsyncasync callback not to be called. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@753 fd59a12c-fef9-0310-b244-a6a79926bd2f + + defect 714 if checkpoint doesn't have write permissions in section delete, return error + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@752 fd59a12c-fef9-0310-b244-a6a79926bd2f + + defect 713 if active replica not set in section delete, return error + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@751 fd59a12c-fef9-0310-b244-a6a79926bd2f + + defect 712 if sectionId is null in sectiondelete, return INVALID_PARAM + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@750 fd59a12c-fef9-0310-b244-a6a79926bd2f + + defect 711 if no active replica set in checkpoint write, error not returned + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@749 fd59a12c-fef9-0310-b244-a6a79926bd2f + + defect 710 if ioVector == NULL in checkpoint read error should be returned + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@748 fd59a12c-fef9-0310-b244-a6a79926bd2f + + defect 709 if synchronize async called, but no callback set, error not returned + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@747 fd59a12c-fef9-0310-b244-a6a79926bd2f + + defect 708 checkpoint synchronize async call not implemented + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@746 fd59a12c-fef9-0310-b244-a6a79926bd2f + + defect 707 if checkpoint synchronize executedd with timeout=0, TIMEOUT error not returned + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@745 fd59a12c-fef9-0310-b244-a6a79926bd2f + + defect 706 replica is not set based upon open flags as per specification + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@744 fd59a12c-fef9-0310-b244-a6a79926bd2f + + defect 705 if synchronize executed on a checkpoint that was created WR_ALL_REPLICAS return error. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@743 fd59a12c-fef9-0310-b244-a6a79926bd2f + + defect 704 if checkpoint is opened without read permissions, checkpoint synchronize should return SA_AIS_ERR_ACCESS. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@742 fd59a12c-fef9-0310-b244-a6a79926bd2f + + defect 703 checkpoint synchronize calls do not check if active replica set + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@741 fd59a12c-fef9-0310-b244-a6a79926bd2f + + defect 702 checkpoint synchronize missing executive handler + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@740 fd59a12c-fef9-0310-b244-a6a79926bd2f + + defect 684 return INVALID_PARAM in checkpoint read if dataSize greater then maxSections * maxsectionsSize. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@739 fd59a12c-fef9-0310-b244-a6a79926bd2f + + defect 683 if active replica not set, checkpointread should return SA_AIS_ERR_NOT_EXIST + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@738 fd59a12c-fef9-0310-b244-a6a79926bd2f + + defect 682 null iovector caues checkpointRead to segfault + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@737 fd59a12c-fef9-0310-b244-a6a79926bd2f + + defect 681 if null paramter passed to checkpoint service as iovector element, allocate the io vector element + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@736 fd59a12c-fef9-0310-b244-a6a79926bd2f + + defect 680 ckptsectionoverwrite should return INVALID if dataSize greater then maxSections * maxSectionsSize + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@735 fd59a12c-fef9-0310-b244-a6a79926bd2f + + defect 677 SectionOverwrite with null sectionId segfaults + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@734 fd59a12c-fef9-0310-b244-a6a79926bd2f + + defect 676 sectionoverwrite doesn't return correct error when checkpoint section doesn't exist + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@733 fd59a12c-fef9-0310-b244-a6a79926bd2f + + defect 675 section overwrite with null dataBuffer parameter locks up + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@732 fd59a12c-fef9-0310-b244-a6a79926bd2f + + defect 734 cleanup include files and exports from libraries + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@731 fd59a12c-fef9-0310-b244-a6a79926bd2f + + defect 732 req_amf_componentregister used instead of req_lib_amf_componentregister. There is no definition for req_amf_componentregister. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@730 fd59a12c-fef9-0310-b244-a6a79926bd2f + + defect 731 error - saSendReceiveReply instead of error = function + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@729 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2005-07-07 Mark Haverkamp <markh@osdl.org> + + Check for reserved event ID and return SA_AIS_ERR_INVALID_PARAM. Bug 694 + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@728 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2005-07-01 Mark Haverkamp <markh@osdl.org> + + Wait to return status to the library until the clear request was received over the network so that the publish and receipt of the event is in sync with the time clear request. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@727 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2005-06-30 Steven Dake <sdake@redhat.com> + + defect 673 fix checkpoint unlink not cleaning up checkpoints. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@726 fd59a12c-fef9-0310-b244-a6a79926bd2f + + defect 502 fix assert when packet added in multicast message handler. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@725 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Remove some warnings from the compile. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@724 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2005-06-30 Mark Haverkamp <markh@osdl.org> + + Error comparing unsigned to less than zero. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@723 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2005-06-29 Steven Dake <sdake@redhat.com> + + Enables test caes in saftest to pass by returning failure return codes in both callback and return function. This may have to change later if a later errata changes this functionality. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@722 fd59a12c-fef9-0310-b244-a6a79926bd2f + + defect 669 token retransmits dont work under heavy load. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@721 fd59a12c-fef9-0310-b244-a6a79926bd2f + + defect 656 libraries not built with position independent code. This causes x86_64 not to build. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@720 fd59a12c-fef9-0310-b244-a6a79926bd2f + + defect 655 invalid checkpoint open flags should return ERR_BAD_FLAGS + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@719 fd59a12c-fef9-0310-b244-a6a79926bd2f + + defect 654 wrong error code returned when checkpointSize > maxSections * maxSectionsSize in checkpoint open. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@718 fd59a12c-fef9-0310-b244-a6a79926bd2f + + defect 653 saCkptCheckpointOpen segfaults if null parameter passed in checkpointName + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@717 fd59a12c-fef9-0310-b244-a6a79926bd2f + + defect 652 saCkptCheckpointOpen segfaults if null parameter passed to checkpointHandle + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@716 fd59a12c-fef9-0310-b244-a6a79926bd2f + + defect 651 - saCkptCheckpointUnlink segfaults if checkpointName attribute is null + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@715 fd59a12c-fef9-0310-b244-a6a79926bd2f + + defect 646 - wrong return code in checkpoint open + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@714 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2005-06-28 Steven Dake <sdake@redhat.com> + + Patch from Muni Bajpai to improve synchronization after a merge. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@713 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2005-06-27 Mark Haverkamp <markh@osdl.org> + + saEvtEventAttributesSet needs to check that the priority value passed in is valid. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@712 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2005-06-27 Steven Dake <sdake@redhat.com> + + Patch from Szakacsits Szabolcs to improve error detection in parsing configuration files. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@711 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2005-06-24 Mark Haverkamp <markh@osdl.org> + + The channel open functions need to check for bad flags. + I set the newly created event elements to the default + values in the B spec. + + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@710 fd59a12c-fef9-0310-b244-a6a79926bd2f + + I discovered that our SaAisErrorT is incorrect. I have included a patch to fix that. The SA_AIS_ERR_BAD_CHECKPOINT code doesn't exist. I replaced it with SA_AIS_ERR_BAD_OPERATION. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@709 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2005-06-23 Mark Haverkamp <markh@osdl.org> + + The A spec required patterns to be set but the B spec doesn't. Fix lib/evt.c and test/testevt.c + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@708 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2005-06-22 Mark Haverkamp <markh@osdl.org> + + This fixes some B spec related parameter checks + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@707 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Some fixes to the event service based on the saftest event tests results. + The changes may affect applications currently using the event service. + + 1. Timeout value to the saEvtChannelOpen call was updated to use + SA_TIME_MAX instead of 0 for infinite timeout. + + 2. added cleanup in the library to remove associated events when a + channel is closed, and remove associated channels when finalize is + called. + + 3. Added some new checking args for NULL and returning the correct error + code. + + 4. fixed dispatch to return correct status with SA_DISPATCH_ONE and no + available poll data. + + 5. Makefile had bad dependency for evt library build. + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@706 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2005-06-17 Steven Dake <sdake@mvista.com> + + defect 643 saClmNodeGet timeout parameter of 0 should return SA_AIS_ERR_TIMEOUT + (Logical change 1.224) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@705 fd59a12c-fef9-0310-b244-a6a79926bd2f + + clm.c: defect 643 saClmNodeGet timeout parameter of 0 should return SA_AIS_ERR_TIMEOUT + BKrev: 42b31c07wymW-ntnqdOvHrTrCDEEhA + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@704 fd59a12c-fef9-0310-b244-a6a79926bd2f + + defect 642 fix segfault when null clusterNode parameter passed to saClusterNodeGet + (Logical change 1.223) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@703 fd59a12c-fef9-0310-b244-a6a79926bd2f + + clm.c: defect 642 fix segfault when null clusterNode parameter passed to saClusterNodeGet + BKrev: 42b31bd8J6eYpNHnpFWwHWc3waURXw + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@702 fd59a12c-fef9-0310-b244-a6a79926bd2f + + clm.c: defect 641 NodeGetAsync called with no nodeget callback should return SA_AIS_ERR_INIT + BKrev: 42b31ba3yncxyr2C6XoRwB_9yMdvRA + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@701 fd59a12c-fef9-0310-b244-a6a79926bd2f + + defect 641 NodeGetAsync called with no nodeget callback should return SA_AIS_ERR_INIT + (Logical change 1.222) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@700 fd59a12c-fef9-0310-b244-a6a79926bd2f + + defect 640 fix wrong error code when null version parameter passed to saClmInitialize + (Logical change 1.221) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@699 fd59a12c-fef9-0310-b244-a6a79926bd2f + + clm.c: defect 640 fix wrong error code when null version parameter passed to saClmInitialize + BKrev: 42b31b73Cok4gPBc42AbPIksg9Rw2w + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@698 fd59a12c-fef9-0310-b244-a6a79926bd2f + + clm.c: defect 639 fix segfault if null callback parameter passed to saClmInitialize + BKrev: 42b31b3dnxjnqS8cEzAPHPJmbMdVEw + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@697 fd59a12c-fef9-0310-b244-a6a79926bd2f + + defect 639 fix segfault if null callback parameter passed to saClmInitialize + (Logical change 1.220) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@696 fd59a12c-fef9-0310-b244-a6a79926bd2f + + defect 638 fix segfault if clmHandle is null to saClmInitialize + (Logical change 1.219) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@695 fd59a12c-fef9-0310-b244-a6a79926bd2f + + clm.c: defect 638 fix segfault if clmHandle is null to saClmInitialize + BKrev: 42b31b12gslEYBvbGYQJgGi6uFw8hg + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@694 fd59a12c-fef9-0310-b244-a6a79926bd2f + + clm.c: defect 637 Fix saClmFinalize will block with threads + BKrev: 42b31ad2mqut41t3GjnF-5BmQYDkOA + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@693 fd59a12c-fef9-0310-b244-a6a79926bd2f + + defect 637 Fix saClmFinalize will block with threads + (Logical change 1.218) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@692 fd59a12c-fef9-0310-b244-a6a79926bd2f + + defect 636 fix saClmDispatch blocks on invalid dispatch flags + (Logical change 1.217) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@691 fd59a12c-fef9-0310-b244-a6a79926bd2f + + clm.c: defect 636 fix saClmDispatch blocks on invalid dispatch flags + BKrev: 42b31aa7DNo7fwD1STjEtZQflKEaCw + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@690 fd59a12c-fef9-0310-b244-a6a79926bd2f + + clm.c: defect 635 saClmSelectionObjectGet crashes if selection object pointer is null + BKrev: 42b31a7e1tftUaCVpz36dDVxSI0wBA + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@689 fd59a12c-fef9-0310-b244-a6a79926bd2f + + defect 635 saClmSelectionObjectGet crashes if selection object pointer is null + (Logical change 1.216) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@688 fd59a12c-fef9-0310-b244-a6a79926bd2f + + defect 634 saCkptDispatch blocks if invalid dispatch flag is set + (Logical change 1.215) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@687 fd59a12c-fef9-0310-b244-a6a79926bd2f + + ckpt.c: defect 634 saCkptDispatch blocks if invalid dispatch flag is set + BKrev: 42b31a459dDwB00enI3nSeayQwFODA + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@686 fd59a12c-fef9-0310-b244-a6a79926bd2f + + defect 633 saCkptInitialize crashes if callbacks parameter is null + (Logical change 1.214) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@685 fd59a12c-fef9-0310-b244-a6a79926bd2f + + ckpt.c: defect 633 saCkptInitialize crashes if callbacks parameter is null + BKrev: 42b31a19Ti58H5PxsI2NaDivhyz-fQ + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@684 fd59a12c-fef9-0310-b244-a6a79926bd2f + + ckpt.c: Fix segfault when address of checkpoint handle is null to the initialize function + BKrev: 42b319e8cJKg9zY0XT9um2oqVst5Ug + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@683 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Fix segfault when address of checkpoint handle is null to the initialize function + (Logical change 1.213) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@682 fd59a12c-fef9-0310-b244-a6a79926bd2f + + ckpt.c: defect 631 Fix segfault if null pointer passed to selection object address of saCkptSelectionObjectGet + BKrev: 42b319acUTulJHw99ALuUlMGTcgL1g + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@681 fd59a12c-fef9-0310-b244-a6a79926bd2f + + defect 631 Fix segfault if null pointer passed to selection object address of saCkptSelectionObjectGet + (Logical change 1.212) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@680 fd59a12c-fef9-0310-b244-a6a79926bd2f + + ckpt.c: defect 630 if a checkpoint is unlinked then opened it should return SA_AIS_ERR_NOT_EXIST + BKrev: 42b31972GC0d7zd0Xw4yt4RcQrxcCg + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@679 fd59a12c-fef9-0310-b244-a6a79926bd2f + + defect 630 if a checkpoint is unlinked then opened it should return SA_AIS_ERR_NOT_EXIST + (Logical change 1.211) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@678 fd59a12c-fef9-0310-b244-a6a79926bd2f + + ckpt.c: defect 629 Return error if checkpoint has been unlinked on retentation duration set + BKrev: 42b3192dcHnUOXNAKirryjp4WHDl9g + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@677 fd59a12c-fef9-0310-b244-a6a79926bd2f + + defect 629 Return error if checkpoint has been unlinked on retentation duration set + (Logical change 1.210) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@676 fd59a12c-fef9-0310-b244-a6a79926bd2f + + defect 628 saCkptCheckpointStatusGet test case 13 from saftest fails + (Logical change 1.209) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@675 fd59a12c-fef9-0310-b244-a6a79926bd2f + + ckpt.c, ckpt.h: defect 628 saCkptCheckpointStatusGet test case 13 from saftest fails + BKrev: 42b318f7gBulPAY6sscL0tMMMi9jMw + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@674 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Makefile, ckpt.c: defect 627 Fix API crash when second parameter of saCkptCheckpointStatusGet is null + BKrev: 42b318bd2NjZ6GGEcjf0mUQr9yL1EA + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@673 fd59a12c-fef9-0310-b244-a6a79926bd2f + + defect 627 Fix API crash when second parameter of saCkptCheckpointStatusGet is null + (Logical change 1.208) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@672 fd59a12c-fef9-0310-b244-a6a79926bd2f + + defect 611 add some manual pages to openais + (Logical change 1.207) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@671 fd59a12c-fef9-0310-b244-a6a79926bd2f + + defect 577 Implement token holding mode + (Logical change 1.207) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@670 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Makefile, index.html: defect 611 add some manual pages to openais openais_overview.8, openais.conf.5: new file Many files: defect 577 Implement token holding mode + BKrev: 42b31834M2cICKgskYf4EnywBr9Fiw + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@669 fd59a12c-fef9-0310-b244-a6a79926bd2f + + (Logical change 1.207) + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@668 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Initial revision + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@667 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2005-06-15 Mark Haverkamp <markh@osdl.org> + + Merge markh@bk.osdl.org:/var/bk/openais into markh1.pdx.osdl.net:/home/localmarkh/views/BK/openais_work + 2005/06/15 14:09:09-07:00 osdl.net!markh + Fix version handling code to be B spec compliant. + BUG 623. + + BKrev: 42b09916lexB-dFgQMudnN6k_mmmkw + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@666 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Fix version handling code to be B spec compliant. BUG 623. + (Logical change 1.206) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@665 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Auto merged + 2005/06/15 14:09:08-07:00 osdl.net!markh + Fix version handling code to be B spec compliant. + BUG 623. + + (Logical change 1.206) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@664 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Move the closing of file descriptors from the destructor to the finalize function. This allows threads waiting on poll to wake up and release handle references. + BKrev: 42b097dceYknwQw6iUHoWmtoiZRCAQ + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@663 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Move the closing of file descriptors from the destructor to the finalize function. This allows threads waiting on poll to wake up and release handle references. + (Logical change 1.205) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@662 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2005-06-13 Mark Haverkamp <markh@osdl.org> + + Fixes to patterns and filters for B API spec support. + (Logical change 1.204) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@661 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Fixes to patterns and filters for B API spec support. + BKrev: 42ade79b0MPjVuydg8XjvOCQs9MTkw + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@660 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2005-06-07 Steven Dake <sdake@mvista.com> + + totempg.c: defect 604 report fragmentation messages missing. + BKrev: 42a61064-RatmX2Oh0W-yAQkVrhuLA + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@659 fd59a12c-fef9-0310-b244-a6a79926bd2f + + defect 604 report fragmentation messages missing. + (Logical change 1.203) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@658 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2005-06-06 Steven Dake <sdake@mvista.com> + + defect 600 Qian Zhang reported defect 599 which was a missing pthread_mutex_unlock. Patch attached to fix it. + (Logical change 1.202) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@657 fd59a12c-fef9-0310-b244-a6a79926bd2f + + (Logical change 1.202) + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@656 fd59a12c-fef9-0310-b244-a6a79926bd2f + + clm.c: defect 600 Qian Zhang reported defect 599 which was a missing pthread_mutex_unlock. Patch attached to fix it. + BKrev: 42a4b379jtJP5rnRmyVL92o1PyIDDw + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@655 fd59a12c-fef9-0310-b244-a6a79926bd2f + + clm.c: defect 599 Qian Zhang reported defect 599 which was a missing pthread_mutex_unlock. Patch attached to fix it. + BKrev: 42a4b337flt6FdzG6hqwbxOqSyl59w + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@654 fd59a12c-fef9-0310-b244-a6a79926bd2f + + defect 599 Qian Zhang reported defect 599 which was a missing pthread_mutex_unlock. Patch attached to fix it. + (Logical change 1.201) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@653 fd59a12c-fef9-0310-b244-a6a79926bd2f + + ipc_ckpt.h, testckpt.c, ckptbench.c, util.c, ckpt.c: defect 595 There are various bugs with saCkptCheckpointOpenAsync that result in it crashing the executive, library, or just failing the saftest conformance suite. + BKrev: 42a4afd8Fg5CFXDzyZ_v5qo_ad-Guw + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@652 fd59a12c-fef9-0310-b244-a6a79926bd2f + + defect 595 There are various bugs with saCkptCheckpointOpenAsync that result in it crashing the executive, library, or just failing the saftest conformance suite.. + (Logical change 1.200) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@651 fd59a12c-fef9-0310-b244-a6a79926bd2f + + defect 595 There are various bugs with saCkptCheckpointOpenAsync that result in it crashing the executive, library, or just failing the saftest conformance suite. + (Logical change 1.200) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@650 fd59a12c-fef9-0310-b244-a6a79926bd2f + + ckpt.c: The selection object get in sync with openAsync doesn't work. + BKrev: 42a4ae24bww-nX_J3YlTL9lMO3KZvQ + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@649 fd59a12c-fef9-0310-b244-a6a79926bd2f + + The selection object get in sync with openAsync doesn't work. + (Logical change 1.199) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@648 fd59a12c-fef9-0310-b244-a6a79926bd2f + + ckpt.c, ipc_ckpt.h: defect 592 If ActiveReplicaSet is called, the correct return values are not returned, causing failures in the saf test suite. + BKrev: 42a4ade8M7A9p_GJDKQGsWWbJxc41w + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@647 fd59a12c-fef9-0310-b244-a6a79926bd2f + + defect 592 If ActiveReplicaSet is called, the correct return values are not returned, causing failures in the saf test suite. + (Logical change 1.198) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@646 fd59a12c-fef9-0310-b244-a6a79926bd2f + + defect 591 If checkpoint open is called, but checkpoint close isn't called before saCkptFinalize is called, the reference count of the checkpoints gets out of kilter. + (Logical change 1.197) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@645 fd59a12c-fef9-0310-b244-a6a79926bd2f + + ckpt.c: defect 591 If checkpoint open is called, but checkpoint close isn't called before saCkptFinalize is called, the reference count of the checkpoints gets out of kilter. + BKrev: 42a4ada5nUMOYQy74W2MQ1eTlNNC0g + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@644 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2005-05-27 Steven Dake <sdake@mvista.com> + + (Logical change 1.196) + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@643 fd59a12c-fef9-0310-b244-a6a79926bd2f + + adds evs_membership_get api + (Logical change 1.196) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@642 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Many files: adds evs_membership_get api evs_membership_get.3: new file + BKrev: 42964fab28riN6pUGbG3uqbjbAjKcA + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@641 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Initial revision + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@640 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2005-05-27 Mark Haverkamp <markh@osdl.org> + + Allow services to use the openais.conf file for setting custom options. Evt now allows the maximum delivery queue size and the resume size to be set in openais.conf + (Logical change 1.195) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@639 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Allow services to use the openais.conf file for setting custom options. Evt now allows the maximum delivery queue size and the resume size to be set in openais.conf + BKrev: 42964b6eDjhuwHSUD_2OVfOPwqZf3w + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@638 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Allow services to use the openais.conf file for setting custom options. + (Logical change 1.195) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@637 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2005-05-25 Miyotaka Sakai <sakai@unknown.org> + + Failover doesn't happen when CTL-Z and process kill + (Logical change 1.194) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@636 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2005-05-25 Mark Haverkamp <markh@osdl.org> + + Merge markh@bk.osdl.org:/var/bk/openais into markh1.pdx.osdl.net:/home/localmarkh/views/BK/openais_work + 2005/05/18 01:03:02+09:00 sakai!sakai + amf.c: + Failover doesn't happen when CTL-Z and process kill + + BKrev: 4294e4525GqfTV54xRLGWs-383Stsg + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@635 fd59a12c-fef9-0310-b244-a6a79926bd2f + + More updates to make event conform to B spec. + BKrev: 4294e431odUeu4s7HWbqMRrsByv4rQ + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@634 fd59a12c-fef9-0310-b244-a6a79926bd2f + + More updates to make event conform to B spec. + (Logical change 1.193) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@633 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Fix memory leak. + BKrev: 4294e345EM8L82mcgFGtNXNOOrANVg + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@632 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Fix memory leak. + (Logical change 1.192) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@631 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2005-05-04 Mark Haverkamp <markh@osdl.org> + + Added a description of the timeout section of openais.conf + (Logical change 1.191) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@630 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Add support for user specified timeouts from openais.conf + BKrev: 427901a7TTHofqEBWm_tyZgxLVSn8g + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@629 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Add support for user specified timeouts from openais.conf + (Logical change 1.191) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@628 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2005-04-29 Steven Dake <sdake@mvista.com> + + defect 529 dont ignore commit token which was causing strange semantics. + (Logical change 1.190) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@627 fd59a12c-fef9-0310-b244-a6a79926bd2f + + totemsrp.c: defect 529 dont ignore commit token which was causing strange semantics. + BKrev: 4272a2cfQng6C3XBRPdeo8GZx7KIlQ + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@626 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2005-04-22 Steven Dake <sdake@mvista.com> + + Many files: defect 512 - some ais header file defines are wrong. + BKrev: 4269467fUqljxZ1cZm7rYtXJgozkZQ + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@625 fd59a12c-fef9-0310-b244-a6a79926bd2f + + defect 512 - some ais header file defines are wrong. + (Logical change 1.189) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@624 fd59a12c-fef9-0310-b244-a6a79926bd2f + + totemsrp.c: defect 498 - reduce network traffic from merge detection + BKrev: 42694604csBxR35HgvFh1cX-WdsjPw + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@623 fd59a12c-fef9-0310-b244-a6a79926bd2f + + defect 498 - reduce network traffic from merge detection + (Logical change 1.188) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@622 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2005-04-21 Steven Dake <sdake@mvista.com> + + testckpt.c, ckpt.c, ipc_ckpt.h: defect 323 - defect 410 - CheckpointOpenAsync and Dispatch not working + BKrev: 4267f1b1iKpaZFwASGi0Hpg6NPVlvA + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@621 fd59a12c-fef9-0310-b244-a6a79926bd2f + + defect 323 - defect 410 - CheckpointOpenAsync and Dispatch not working + (Logical change 1.187) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@620 fd59a12c-fef9-0310-b244-a6a79926bd2f + + defect 505 - fix uncompilable with gcc 2.95 + (Logical change 1.186) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@619 fd59a12c-fef9-0310-b244-a6a79926bd2f + + ckpt-wr.c, evt.c, ckpt.c, amf.c: defect 505 - fix uncompilable with gcc 2.95 + BKrev: 4266fa7e2AAxpdYH2FJH4NEZ75Hc9w + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@618 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2005-04-21 Mark Haverkamp <markh@osdl.org> + + Defect 501. + Fix some mutex and error return problems. + + (Logical change 1.185) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@617 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Defect 501. + Fix some mutex and error return problems. + + BKrev: 4266d40eIENsfJQEvDM6MjMDhFcqLA + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@616 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2005-04-20 Mark Haverkamp <markh@osdl.org> + + For defect 501. Fix possible stale pointers in async lists if an application disconnects before its command has been fully processed. + (Logical change 1.184) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@615 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Merge markh@bk.osdl.org:/var/bk/openais into markh1.pdx.osdl.net:/home/localmarkh/views/BK/openais_work + 2005/04/20 14:43:05-07:00 osdl.net!markh + For defect 501. + Fix possible stale pointers in async lists if an application + disconnects before its command has been fully processed. + + BKrev: 4266cda65e-fXv0kW4Qe-4Fr4Sbrww + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@614 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2005-04-18 Steven Dake <sdake@mvista.com> + + evs.c: defect 42 - evs service doesn't send config change on evs_initialize + BKrev: 4264263fzzgV2yL8rAEqgs69wjGnZA + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@613 fd59a12c-fef9-0310-b244-a6a79926bd2f + + defect 42 - evs service doesn't send config change on evs_initialize + (Logical change 1.183) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@612 fd59a12c-fef9-0310-b244-a6a79926bd2f + + totemsrp.c: Fix assert when recovery fails and messages are accepted in the gather state. + BKrev: 42641035MxBKYwCZ1zOkFr_h-WES3Q + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@611 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Fix assert when recovery fails and messages are accepted in the gather state. + (Logical change 1.182) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@610 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2005-04-16 Steven Dake <sdake@mvista.com> + + totemsrp.c: Fixes a condition which would result in a proc set and failed set being equal which would force the algorithm to never reach consensus in the membership algorithm. + BKrev: 42604e9fCBYactncuQuguPZ_IEfQsQ + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@609 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Fixes a condition which would result in a proc set and failed set being equal which would force the algorithm to never reach consensus in the membership algorithm. + (Logical change 1.181) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@608 fd59a12c-fef9-0310-b244-a6a79926bd2f + + totem packet size changed from 1408 to 1404 because a field was added to the mcast header. + (Logical change 1.180) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@607 fd59a12c-fef9-0310-b244-a6a79926bd2f + + add some sort queue functions. + (Logical change 1.180) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@606 fd59a12c-fef9-0310-b244-a6a79926bd2f + + turn off random dropping of packets by default. + 2005/04/15 16:27:14-07:00 mvista.com!sdake + Major fixes to the recovery phase of the totem protocol. The + remainder of the protocol remains unchanged. + The protocol now properly adds the right messages to the right + queues during recovery. The protocol properly handles failures + in the recovery state. + + (Logical change 1.180) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@605 fd59a12c-fef9-0310-b244-a6a79926bd2f + + totemsrp.c: turn off random dropping of packets by default. totemsrp.h: totem packet size changed from 1408 to 1404 because a field was added to the mcast header. sq.h: add some sort queue functions. totemsrp.c: Major fixes to the recovery phase of the totem protocol. The remainder of the protocol remains unchanged. The protocol now properly adds the right messages to the right queues during recovery. The protocol properly handles failures in the recovery state. totempg.c: add an assert to catch a weird case. + BKrev: 42604e5bSfwCdUnySrgU1nlV7yDYNQ + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@604 fd59a12c-fef9-0310-b244-a6a79926bd2f + + add an assert to catch a weird case. + (Logical change 1.180) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@603 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2005-04-15 Steven Dake <sdake@mvista.com> + + crypto.c: autodetect endian and wordsize with gnuisms + BKrev: 42602efdZ8LfQwIHBFrdtsjrK3BtCg + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@602 fd59a12c-fef9-0310-b244-a6a79926bd2f + + autodetect endian and wordsize with gnuisms + (Logical change 1.179) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@601 fd59a12c-fef9-0310-b244-a6a79926bd2f + + evs.c: fix defect 477 - header size calculated incorrectly results in assert + BKrev: 42602cf5j6Zi2RZtyz9xB83lZW9R6g + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@600 fd59a12c-fef9-0310-b244-a6a79926bd2f + + fix defect 477 - header size calculated incorrectly results in assert + (Logical change 1.178) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@599 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Merge sdake@bk.osdl.org:/var/bk/openais into persist.az.mvista.com:/home/sdake/openais + 2005/04/15 13:48:35-07:00 mvista.com!sdake + Makefile, util.h, util.c, evt.c, evs.c, clm.c, ckpt.c, amf.c: + defect 188 missed initial checkin + + BKrev: 426028b9DQDC6BgUEBBsQmVJmhyxOg + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@598 fd59a12c-fef9-0310-b244-a6a79926bd2f + + defect 188 missed initial checkin + (Logical change 1.177) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@597 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2005-04-15 Mark Haverkamp <markh@osdl.org> + + Test updates to handle SA_AIS_ERR_TRY_AGAIN return codes. + (Logical change 1.176) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@596 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Merge markh@bk.osdl.org:/var/bk/openais into markh1.pdx.osdl.net:/home/localmarkh/views/BK/openais_work + 2005/04/15 13:01:00-07:00 osdl.net!markh + Test updates to handle SA_AIS_ERR_TRY_AGAIN return codes. + + BKrev: 42601e9aBWGIREypBcTjO5NC8bK8uA + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@595 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2005-04-15 Steven Dake <sdake@mvista.com> + + defect 188 - use two fds instead of one fd for I/Os to executive + (Logical change 1.175) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@594 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Many files: defect 188 - use two fds instead of one fd for I/Os to executive testevsth.c: test evs threading + BKrev: 42601124xiPxCobiccGpS7CZ62Ol7w + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@593 fd59a12c-fef9-0310-b244-a6a79926bd2f + + (Logical change 1.175) + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@592 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Initial revision + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@591 fd59a12c-fef9-0310-b244-a6a79926bd2f + + defect 478 - remove extra parameter to config change. + (Logical change 1.174) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@590 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Many files: defect 478 - remove extra parameter to config change. + BKrev: 42600ff6Tg7hfUjwYnckeK8uBxBGrg + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@589 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2005-04-11 Steven Dake <sdake@mvista.com> + + Fix defect 456 when checkpoint expirse, the executive crashes if no bind address was specified + (Logical change 1.173) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@588 fd59a12c-fef9-0310-b244-a6a79926bd2f + + main.c: Fix defect 456 when checkpoint expirse, the executive crashes if no bind address was specified + BKrev: 425aed2d6P3dBt_7UO1Cv6d5kt4haQ + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@587 fd59a12c-fef9-0310-b244-a6a79926bd2f + + add default section to testcase + (Logical change 1.172) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@586 fd59a12c-fef9-0310-b244-a6a79926bd2f + + add default section to testcase. + (Logical change 1.172) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@585 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Add default section support to checkpoints. + (Logical change 1.172) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@584 fd59a12c-fef9-0310-b244-a6a79926bd2f + + (Logical change 1.172) + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@583 fd59a12c-fef9-0310-b244-a6a79926bd2f + + testckpt.c, ckpt-rd.c, ckpt-wr: add default section to testcase. ckpt.c: Add default section support to checkpoints. + BKrev: 425aeb47Mb_N8HKGtX_BdmRGaLP-Jg + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@582 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2005-04-08 Steven Dake <sdake@mvista.com> + + ckpt.c: Patch from Muni and Mark to properly calculate the header size field so that the totem delivery assertion doesn't assert when using ckpt services. + BKrev: 4256f3d0FFsh6CwpsXs-w4_225C4Wg + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@581 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Patch from Muni and Mark to properly calculate the header size field so that the totem delivery assertion doesn't assert when using ckpt services. + (Logical change 1.171) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@580 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2005-04-06 Mark Haverkamp <markh@osdl.org> + + Make sure that the message count in the message matches the actual length of the message. + BKrev: 42543a7aj_fChUtiZ_ZWH0wdZ6JN3Q + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@579 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Make sure that the message count in the message matches the actual length of the message. + (Logical change 1.170) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@578 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2005-04-05 Mark Haverkamp <markh@osdl.org> + + Merge markh@bk.osdl.org:/var/bk/openais into markh1.pdx.osdl.net:/home/localmarkh/views/BK/openais_work + 2005/04/05 08:56:39-07:00 osdl.net!markh + Replace assert with a return. This will allow the custer to continue + to run. This happens when a joining node receives a message from a node + that it doesn't know about yet. This is a temporary fix for now. + + BKrev: 4252b541e1CWSNFoD816nTIzzKKPDg + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@577 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Replace assert with a return. This will allow the custer to continue to run. This happens when a joining node receives a message from a node that it doesn't know about yet. This is a temporary fix for now. + (Logical change 1.169) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@576 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2005-04-05 Steven Dake <sdake@mvista.com> + + Patch from Miyotaka Sakai to fix access to free area defect 426. + (Logical change 1.168) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@575 fd59a12c-fef9-0310-b244-a6a79926bd2f + + totemsrp.c: Patch from Miyotaka Sakai to fix access to free area defect 426. + BKrev: 4251ef0dubnPmmnqD-elKTQ_vgpq9Q + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@574 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2005-04-01 Steven Dake <sdake@mvista.com> + + change around this_ip to better support ifup/ifdown + (Logical change 1.167) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@573 fd59a12c-fef9-0310-b244-a6a79926bd2f + + add some support functions relating to this_ip + (Logical change 1.167) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@572 fd59a12c-fef9-0310-b244-a6a79926bd2f + + add ifup/ifdown binding to totem single ring protocol + (Logical change 1.167) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@571 fd59a12c-fef9-0310-b244-a6a79926bd2f + + minor improvements to the ckpt tests + (Logical change 1.167) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@570 fd59a12c-fef9-0310-b244-a6a79926bd2f + + testckpt.c: minor improvements to the ckpt tests totemsrp.h, totemsrp.c: add ifup/ifdown binding to totem single ring protocol main.h, main.c: add some support functions relating to this_ip clm.c, ckpt.c, amf.c: change around this_ip to better support ifup/ifdown + BKrev: 424dbb0bUeDXpnbGn8TxJlPYWRvT6A + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@569 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2005-03-31 Miyotaka Sakai <sakai@unknown.org> + + fix not to transit state when process terminate + (Logical change 1.166) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@568 fd59a12c-fef9-0310-b244-a6a79926bd2f + + amf.c: fix not to transit state when process terminate + BKrev: 424b286648uPUwF_B-hMgKOF5Mgwzw + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@567 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2005-03-30 Steven Dake <sdake@mvista.com> + + Updated with comments from Michael Howard added evt and evs service tests to quickstart information added text about running as root removed default route setup instructions since they are no longer needed. + (Logical change 1.165) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@566 fd59a12c-fef9-0310-b244-a6a79926bd2f + + QUICKSTART: Updated with comments from Michael Howard added evt and evs service tests to quickstart information added text about running as root removed default route setup instructions since they are no longer needed. + BKrev: 424b198bYLqB2blTRdYtgLgjFmHjIA + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@565 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Merge sdake@bk.osdl.org:/var/bk/openais into persist.az.mvista.com:/home/sdake/openais + 2005/03/29 15:03:30-07:00 mvista.com!sdake + testckpt.c: + Create section after section is unlinked in test code. + ckpt.c: + Patch from Muni Bajpai to not setup a cleanup handler for a + checkpoint when a checkpoint open fails. Patch also fixes up + checkpoint iterators so they do not crash on process exit. + + BKrev: 4249da03fKPlzZG0QP8eZriaAtoM-w + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@564 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Patch from Muni Bajpai to not setup a cleanup handler for a checkpoint when a checkpoint open fails. Patch also fixes up checkpoint iterators so they do not crash on process exit. + (Logical change 1.164) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@563 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Create section after section is unlinked in test code. + (Logical change 1.164) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@562 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2005-03-29 Miyotaka Sakai <sakai@unknown.org> + + fix configuration change + (Logical change 1.163) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@561 fd59a12c-fef9-0310-b244-a6a79926bd2f + + amf.c: fix configuration change + BKrev: 424889eehbHC-A5YNtbXzaEzVMhcVQ + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@560 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2005-03-28 Steven Dake <sdake@mvista.com> + + Remove extra debug printf. + (Logical change 1.162) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@559 fd59a12c-fef9-0310-b244-a6a79926bd2f + + totemsrp.c: Remove extra debug printf. + BKrev: 42485391qM7HG2et7RcmNIHInqXxTA + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@558 fd59a12c-fef9-0310-b244-a6a79926bd2f + + defect 368 A report of totemsrp not merging configurations led to this enhancement. + totemsrp.c: + The totem protocol would not previously merge a configuration + until a multicast message was sent. This change sends a special + "merge detect" message if no message has been multicast in some + time from the representative. This merge detect message will + trigger other processors to enter the gather state and form + a new configuration if they were not previously part of the + current configuration. + Makefile: + Build aisexec when libtotem.a changes. + + BKrev: 42484f5453Wf6HN2Gbyg9dznFaQGtw + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@557 fd59a12c-fef9-0310-b244-a6a79926bd2f + + The totem protocol would not previously merge a configuration until a multicast message was sent. This change sends a special "merge detect" message if no message has been multicast in some time from the representative. This merge detect message will trigger other processors to enter the gather state and form a new configuration if they were not previously part of the current configuration. + (Logical change 1.161) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@556 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Build aisexec when libtotem.a changes. + (Logical change 1.161) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@555 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2005-03-28 Mark Haverkamp <markh@osdl.org> + + This update allows retained events from a merging partition to be delivered to applications with the associated channels already open at the time of the merge. + BKrev: 42484b6f0IXKK1Bql-GCaHwTbXg0dQ + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@554 fd59a12c-fef9-0310-b244-a6a79926bd2f + + This update allows retained events from a merging partition to be delivered to applications with the associated channels already open at the time of the merge. + (Logical change 1.160) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@553 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Async open and subscribe needed to check for registered call back functions and retrun an error if there were no assocated callbacks. + BKrev: 42483e43sOS_W8zCqoAZNHTy43FhkA + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@552 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Async open and subscribe needed to check for registered call back functions and retrun an error if there were no assocated callbacks. + (Logical change 1.159) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@551 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2005-03-23 Mark Haverkamp <markh@osdl.org> + + Only dispatch a callback if it is non-null. + (Logical change 1.158) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@550 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Only dispatch a callback if it is non-null. + BKrev: 4241cdbcbgCCwsZLJEXicZZTvGpuGQ + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@549 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2005-03-23 Steven Dake <sdake@mvista.com> + + defect325 - rename saCkptActiveCheckpointSet to saCkptActiveReplicaSet + (Logical change 1.157) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@548 fd59a12c-fef9-0310-b244-a6a79926bd2f + + ckpt.c: defect325 - rename saCkptActiveCheckpointSet to saCkptActiveReplicaSet + BKrev: 4240ac49svEd0Uoaf0zn8-6YXK5akw + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@547 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Makefile: Link to seperate libraries. Provide seperate libraries per service as well as the consolidated libais library. + BKrev: 4240ac15wtabDEmO2ooaShdbFZP-wg + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@546 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Link to seperate libraries. + (Logical change 1.156) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@545 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Provide seperate libraries per service as well as the consolidated libais library. + (Logical change 1.156) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@544 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2005-03-23 Mark Haverkamp <markh@osdl.org> + + Fix an off by one error causing a bad event ID to be sent after a recovery in some cases. + BKrev: 4240a8ba6cGIAgqLoTZNAUZJJOgyrg + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@543 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Fix an off by one error causing a bad event ID to be sent after a recovery in some cases. + (Logical change 1.155) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@542 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2005-03-17 Mark Haverkamp <markh@osdl.org> + + Event service now reconciles open channels and retained events between active merging partitions. + (Logical change 1.154) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@541 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Merge markh@bk.osdl.org:/var/bk/openais into markh1.pdx.osdl.net:/home/localmarkh/views/BK/openais_work + 2005/03/17 14:44:09-08:00 osdl.net!markh + Event service now reconciles open channels and retained events between active + merging partitions. + + BKrev: 423a084c-3ULQ_tcgSf5isGBiqzUWA + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@540 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2005-03-17 Steven Dake <sdake@mvista.com> + + Merge sdake@bk.osdl.org:/var/bk/openais into persist.az.mvista.com:/home/sdake/openais + 2005/03/17 14:25:22-07:00 mvista.com!sdake + ckpt.c: + Change few ERROR loggings to DEBUG loggings from Muni Bajpai. + + BKrev: 4239f5cbSrwx6_k9jxG2_GjW1OoVHQ + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@539 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Change few ERROR loggings to DEBUG loggings from Muni Bajpai. + (Logical change 1.153) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@538 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2005-03-17 Mark Haverkamp <markh@osdl.org> + + Handle possible SA_AIS_ERR_TRY_AGAIN status. + BKrev: 4239c886n6J6MzMfIVjaN1QvFnsfzg + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@537 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Handle possible SA_AIS_ERR_TRY_AGAIN status. + (Logical change 1.152) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@536 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2005-03-17 Steven Dake <sdake@mvista.com> + + Block multicast messages during synchronization. + (Logical change 1.151) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@535 fd59a12c-fef9-0310-b244-a6a79926bd2f + + ckptbench.c: retry writes when it appears the system is blocked, perhaps during a resynchronization. Many files: Block multicast messages during synchronization. + BKrev: 4238c435y6ZGwBr-M4xFHDUJ7HhLaQ + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@534 fd59a12c-fef9-0310-b244-a6a79926bd2f + + retry writes when it appears the system is blocked, perhaps during a resynchronization. + (Logical change 1.151) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@533 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2005-03-16 Steven Dake <sdake@mvista.com> + + cleanup some shared datatypes. + (Logical change 1.150) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@532 fd59a12c-fef9-0310-b244-a6a79926bd2f + + cleanup some shared datatypes + (Logical change 1.150) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@531 fd59a12c-fef9-0310-b244-a6a79926bd2f + + (Logical change 1.150) + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@530 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Mark Haverkamp reported some compile warnings with his compiler. Cleanup those warnings by unifying the datatypes used in totempg and totemsrp into one set of datatypes. + Many files: + cleanup some shared datatypes for the totem protocol. + totem.h: + new file + + BKrev: 423879baJvLZpm8nNaRfQHRfWB2fOA + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@529 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Initial revision + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@528 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Improved synchronization test code from Muni Bajpai. + (Logical change 1.149) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@527 fd59a12c-fef9-0310-b244-a6a79926bd2f + + ckpt-wr.c, ckpt-rd.c: Improved synchronization test code from Muni Bajpai. + BKrev: 4238784c5RBxBXc3aHA68KOVGhAEWw + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@526 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2005-03-15 Steven Dake <sdake@mvista.com> + + Fix bug in sync which caused segfault. + (Logical change 1.148) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@525 fd59a12c-fef9-0310-b244-a6a79926bd2f + + totemsrp.h, totemsrp.c: Allow totemsrp to remove the reference information for a token callback. sync.c: Fix bug in sync which caused segfault. + BKrev: 42371b753plEvd2J96qRpg6mRxki1Q + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@524 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Allow totemsrp to remove the reference information for a token callback. + (Logical change 1.148) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@523 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Add checkpoint reader and writer to test synchronization + (Logical change 1.147) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@522 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Makefile: Add checkpoint reader and writer to test synchronization ckpt-wr.c, ckpt-rd.c: new file + BKrev: 42363081enPpMuQpdvw2e1uqFAqD0A + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@521 fd59a12c-fef9-0310-b244-a6a79926bd2f + + (Logical change 1.147) + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@520 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Initial revision + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@519 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2005-03-14 Steven Dake <sdake@mvista.com> + + Merge sdake@bk.osdl.org:/var/bk/openais into persist.az.mvista.com:/home/sdake/openais + 2005/03/14 15:39:42-07:00 mvista.com!sdake + ipc_gen.h, ipc_ckpt.h, ckpt.c: + Checkpoint synchronization patch from Muni Bajpai. + + BKrev: 423612bc5lRZOqj0qi_o6zXGw1bAwg + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@518 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Checkpoint synchronization patch from Muni Bajpai. + (Logical change 1.146) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@517 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2005-03-11 Mark Haverkamp <markh@osdl.org> + + Update the publish API to return SA_AIS_ERR_TRY_AGAIN to the application instead of handling it in the library. + (Logical change 1.145) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@516 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Update the publish API to return SA_AIS_ERR_TRY_AGAIN to the application instead of handling it in the library. + BKrev: 4231eb69MvlifP_ykH0Nfj693tUWMA + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@515 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2005-03-09 Mark Haverkamp <markh@osdl.org> + + New event service recovery code implementation for totem and the new sync services. + (Logical change 1.144) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@514 fd59a12c-fef9-0310-b244-a6a79926bd2f + + New event service recovery code implementation for totem and the new sync services. + BKrev: 422f73c7NkihQaud_tc4WYQOjavwhg + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@513 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2005-03-09 Steven Dake <sdake@mvista.com> + + Cluster membership synchronization support + (Logical change 1.143) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@512 fd59a12c-fef9-0310-b244-a6a79926bd2f + + clm.c: Cluster membership synchronization support + BKrev: 422f5283JgT5AkInLBoHrZMu0wx2rQ + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@511 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2005-03-02 Steven Dake <sdake@mvista.com> + + Added synchronization base code. Four new APIs are required for a service to support synchronization. sync_init, sync_process, sync_activate, and sync_abort provide the calls into the recovery mechanism. + sync.h, sync.c: + new file + totemsrp.h, totemsrp.c, print.h, print.c, Makefile, main.c, handlers.h: + Synchronization base code added. + ipc_gen.h: + Synchronization base code. + + BKrev: 422639e5L_FEDTWgRgI-w8vKm8zhMQ + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@510 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Synchronization base code. + (Logical change 1.142) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@509 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Synchronization base code added. + (Logical change 1.142) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@508 fd59a12c-fef9-0310-b244-a6a79926bd2f + + (Logical change 1.142) + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@507 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Initial revision + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@506 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2005-02-27 Steven Dake <sdake@broked.org> + + em64t support + (Logical change 1.141) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@505 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Many files: em64t support + BKrev: 42216853DGp9Hwgh8mvnixFj_QMRUQ + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@504 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2005-02-18 Steven Dake <sdake@mvista.com> + + Many files: Pass handle by value instead of address. + BKrev: 4216488aoAf2Eu5qvs7qGxx8rO9zXw + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@503 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Pass handle by value instead of address. + (Logical change 1.140) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@502 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2005-02-17 Steven Dake <sdake@mvista.com> + + Auto merged + 2005/02/16 17:24:12-07:00 mvista.com!sdake + send ring_id through configuration changes patch from Muni Bajpai. + + (Logical change 1.139) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@501 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Merge sdake@bk.osdl.org:/var/bk/openais into persist.az.mvista.com:/home/sdake/openais + 2005/02/16 17:24:48-07:00 mvista.com!sdake + Many files: + send ring_id through configuration changes patch from Muni Bajpai. + clm.c: + mutex bug fixes as reported by Kristen Smith. + + BKrev: 4213e45dnMl87bYQKSfi4_98X352Lg + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@500 fd59a12c-fef9-0310-b244-a6a79926bd2f + + send ring_id through configuration changes patch from Muni Bajpai. + (Logical change 1.139) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@499 fd59a12c-fef9-0310-b244-a6a79926bd2f + + mutex bug fixes as reported by Kristen Smith. + (Logical change 1.139) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@498 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2005-02-16 Mark Haverkamp <markh@osdl.org> + + Look for SA_EVT_EVENTID_LOST when receiving an event. + (Logical change 1.138) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@497 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Set default event ID. + (Logical change 1.138) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@496 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Set lost event ID on dropped events. + (Logical change 1.138) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@495 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Use special event ID for setting the default in a new event and to indicate a lost event. Update subscription test to look for the "lost" event ID. + BKrev: 42128170Q5DcNymwbx8NushEykXwmg + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@494 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2005-02-15 Mark Haverkamp <markh@osdl.org> + + Add unlink function. + (Logical change 1.137) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@493 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Merge markh@bk.osdl.org:/var/bk/openais into markh1.pdx.osdl.net:/home/localmarkh/views/BK/openais_work + 2005/02/15 08:54:34-08:00 osdl.net!markh + Add unlink function. + + BKrev: 42122956O-InvJqb6K70vMTy4gl8yQ + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@492 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2005-02-09 Steven Dake <sdake@mvista.com> + + Increase code coverage by calling more API functions. + (Logical change 1.136) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@491 fd59a12c-fef9-0310-b244-a6a79926bd2f + + testevs.c, testckpt.c: Increase code coverage by calling more API functions. testamf.c: Fix bug in test script which was causing test not to run. Increase code coverage by allowing few more apis to be called. totemsrp.c: Increase code coverage by removing some debug code + BKrev: 42095a88Q0lU2eqEirC1FAZ05pxlmg + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@490 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Fix bug in test script which was causing test not to run. Increase code coverage by allowing few more apis to be called. + (Logical change 1.136) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@489 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Increase code coverage by removing some debug code + (Logical change 1.136) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@488 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2005-02-08 Steven Dake <sdake@mvista.com> + + (Logical change 1.135) + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@487 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Many files: defect 245 - revise checkpoint service to B.01.01. saCkpt.h, ipc_ckpt.h, sa_error.h: new file .del-ais_clm.h~ed02cd4c7506e43: Delete: include/ais_clm.h .del-ais_ckpt.h~b3c15abf536a6fbc: Delete: include/ais_ckpt.h + BKrev: 42092786pSJQ8uC11PWAhWTC1Hwjqw + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@486 fd59a12c-fef9-0310-b244-a6a79926bd2f + + defect 245 - revise checkpoint service to B.01.01. + (Logical change 1.135) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@485 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Delete: include/ais_ckpt.h + }(Logical change 1.135) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@484 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Delete: include/ais_clm.h + }(Logical change 1.135) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@483 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Initial revision + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@482 fd59a12c-fef9-0310-b244-a6a79926bd2f + + totemsrp.c: Add more text output to display what occurs during recovery. Fix recovery bug which results in segfault. fix defect 228 - ring id file deleted causes assert. Fix recovery bug where recovery doesn't complete. Fix assert on commit phase. + BKrev: 42092662LEVSqJlhbISw-Hweb4Cbfg + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@481 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Add more text output to display what occurs during recovery. Fix recovery bug which results in segfault. fix defect 228 - ring id file deleted causes assert. Fix recovery bug where recovery doesn't complete. Fix assert on commit phase. + (Logical change 1.134) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@480 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2005-02-08 Mark Haverkamp <markh@osdl.org> + + Add test for channel open async + (Logical change 1.133) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@479 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Add handler for channel open async + (Logical change 1.133) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@478 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Add handler for channel open async and add a test to testevt for the async channel open function. Bug fix for event retention time clear exec code and added comments when converting nanoseconds to milliseconds. + BKrev: 4208f4048DxJP7FLwfqHo7TfAoEJlA + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@477 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2005-02-04 Mark Haverkamp <markh@osdl.org> + + This fixes a potential problem where, because of a config change, a joining node may not have a previous fragment of a message. It now discards continuations of that message until it is complete and a new message arrives. + (Logical change 1.132) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@476 fd59a12c-fef9-0310-b244-a6a79926bd2f + + This fixes a potential problem where, because of a config change, a joining node may not have a previous fragment of a message. It now discards continuations of that message until it is complete and a new message arrives. + BKrev: 4203ea20pYSrD8ZyY3pxIHSXFSooeg + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@475 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Remove ais_evt.h since its content has been moved. + BKrev: 4203e785HE6cQ-KCAgc-CHHOiZ0tEg + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@474 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Delete: include/ais_evt.h + }(Logical change 1.131) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@473 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Update to B spec API + (Logical change 1.130) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@472 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Update event service to B spec API. + BKrev: 4203e6d8nLXD7EMTNFZNfFwMnzt8mA + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@471 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Conver to B spec API. + (Logical change 1.130) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@470 fd59a12c-fef9-0310-b244-a6a79926bd2f + + update dependencies. + (Logical change 1.130) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@469 fd59a12c-fef9-0310-b244-a6a79926bd2f + + (Logical change 1.130) + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@468 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Update evt to B spec remove event related code and move to ipc_evt.h and saEvt.h + (Logical change 1.130) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@467 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Use B spec include files + (Logical change 1.130) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@466 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Convert to B spec. Add in endian conversion functions. + (Logical change 1.130) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@465 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Moved from ais_msg.h so ais_msg.h doesn't need to be included by evt. + (Logical change 1.130) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@464 fd59a12c-fef9-0310-b244-a6a79926bd2f + + update evt to B spec. remove evt related code and move to ipc_evt.h and saEvt.h + (Logical change 1.130) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@463 fd59a12c-fef9-0310-b244-a6a79926bd2f + + update dependencies + (Logical change 1.130) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@462 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Initial revision + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@461 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2005-02-04 Steven Dake <sdake@mvista.com> + + util.c: Fix merge error in util.c file + BKrev: 4203d35fqEwtXJ4ZtIAnGz5HWpHsEQ + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@460 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Fix merge error in util.c file + (Logical change 1.129) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@459 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Small fix for data types. + (Logical change 1.128) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@458 fd59a12c-fef9-0310-b244-a6a79926bd2f + + util.c: Small fix for data types. + BKrev: 4203d2d97z9HmoblaHq8etKUqRGF0w + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@457 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Update to use 64 bit data types for handles. + (Logical change 1.127) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@456 fd59a12c-fef9-0310-b244-a6a79926bd2f + + testamf1.c, testamf2.c: 64 bit handles. testevs.c, testclm.c, testamfth.c, testamf6.c, testamf4.c, testamf3.c: 64 bit handles evs.h: change data type of handle to 64 bits for evs_handle_t. ais_types.h: remove cluster membership types and put in saClm.h file. ais_msg.h: remove cluster membership code and put in ipc file. util.h, util.c: Update to use 64 bit data types for handles. clm.c: Update cluster membership to B.01.01. print.h: Update print data to new node structure. clm.h, clm.c: Update cluster membership service to B.01.01. saClm.h, ipc_gen.h, ipc_clm.h: new file + BKrev: 4203ce72I415G1q4yQQNjFfAxSJVOA + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@455 fd59a12c-fef9-0310-b244-a6a79926bd2f + + 64 bit handles + (Logical change 1.127) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@454 fd59a12c-fef9-0310-b244-a6a79926bd2f + + remove cluster membership code and put in ipc file. + (Logical change 1.127) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@453 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Update cluster membership service to B.01.01. + (Logical change 1.127) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@452 fd59a12c-fef9-0310-b244-a6a79926bd2f + + (Logical change 1.127) + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@451 fd59a12c-fef9-0310-b244-a6a79926bd2f + + 64 bit handles. + (Logical change 1.127) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@450 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Update print data to new node structure. + (Logical change 1.127) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@449 fd59a12c-fef9-0310-b244-a6a79926bd2f + + remove cluster membership types and put in saClm.h file. + (Logical change 1.127) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@448 fd59a12c-fef9-0310-b244-a6a79926bd2f + + change data type of handle to 64 bits for evs_handle_t. + (Logical change 1.127) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@447 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Update cluster membership to B.01.01. + (Logical change 1.127) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@446 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Initial revision + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@445 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2005-02-01 Steven Dake <sdake@mvista.com> + + fix defect 131 - member element not set in cluster membership service + (Logical change 1.126) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@444 fd59a12c-fef9-0310-b244-a6a79926bd2f + + More fixes for defect 204. From Mark Haverkamp: |Looking at the totempg config change function, I think that leaving |members should have their assembly area reset. I assume that any data |that is there is now invalid, and we wouldn't want it hanging around if |they return. Also, I think that the wrong index was being used to |initialize the assembly area index. + (Logical change 1.126) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@443 fd59a12c-fef9-0310-b244-a6a79926bd2f + + totempg.c: More fixes for defect 204. From Mark Haverkamp: |Looking at the totempg config change function, I think that leaving |members should have their assembly area reset. I assume that any data |that is there is now invalid, and we wouldn't want it hanging around if |they return. Also, I think that the wrong index was being used to |initialize the assembly area index. clm.c: fix defect 131 - member element not set in cluster membership service + BKrev: 41ffe9278sM8ZyWmj_3tmUK0YiqgSQ + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@442 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2005-01-31 Steven Dake <sdake@mvista.com> + + Fix from mark and daniel for small packet sizes in totempg resulting in segfault. + (Logical change 1.125) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@441 fd59a12c-fef9-0310-b244-a6a79926bd2f + + random drop defined to on.. turning off. + (Logical change 1.125) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@440 fd59a12c-fef9-0310-b244-a6a79926bd2f + + totemsrp.c: random drop defined to on.. turning off. totempg.c: Fix from mark and daniel for small packet sizes in totempg resulting in segfault. + BKrev: 41feac34ILMg8MsBZNAXgHefIA22zw + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@439 fd59a12c-fef9-0310-b244-a6a79926bd2f + + totempg.c: Fixes defect 204 : messages not delivered correctly Patch from Mark Haverkamp. + BKrev: 41fe8cbaM4eR7_3dP91qFSahtT23dA + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@438 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Fixes defect 204 : messages not delivered correctly Patch from Mark Haverkamp. + (Logical change 1.124) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@437 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Fix bug in implementation that deviates from specification. + (Logical change 1.123) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@436 fd59a12c-fef9-0310-b244-a6a79926bd2f + + totemsrp.c: Fix bug in implementation that deviates from specification. + BKrev: 41fe8c84mIHGgf3brH_kZTiOR_ACvQ + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@435 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2005-01-29 Steven Dake <sdake@mvista.com> + + bug 214 Fix pthread mutex not unlocked in error path + (Logical change 1.122) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@434 fd59a12c-fef9-0310-b244-a6a79926bd2f + + remove priority fields from evs service. .. + (Logical change 1.122) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@433 fd59a12c-fef9-0310-b244-a6a79926bd2f + + remove priority fields from evs service. + (Logical change 1.122) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@432 fd59a12c-fef9-0310-b244-a6a79926bd2f + + evs_mcast_joined.3: remove priority fields from evs service. .. evs_mcast_groups.3, evs.h, ais_msg.h: remove priority fields from evs service. util.c: bug 214 Fix pthread mutex not unlocked in error path + BKrev: 41fbd660W-BROulgsZt4S6LYD_pcvw + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@431 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2005-01-27 Steven Dake <sdake@mvista.com> + + testevs.c, evsbench.c: Remove priorities from interfaces. evs.c: Remove priorities from evs interfaces. totempg.h, totempg.c, main.c, handlers.h, evt.c, evs.c, clm.c, ckpt.c, amf.c: Remove priorities from all interfaces. + BKrev: 41f943030jN3Y5g5v10371Hgb2007A + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@430 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Remove priorities from evs interfaces. + (Logical change 1.121) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@429 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Remove priorities from interfaces. + (Logical change 1.121) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@428 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Remove priorities from all interfaces. + (Logical change 1.121) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@427 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2005-01-24 Steven Dake <sdake@mvista.com> + + Fix defect 203 commit token asserts + (Logical change 1.120) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@426 fd59a12c-fef9-0310-b244-a6a79926bd2f + + totemsrp.c: Fix defect 203 commit token asserts + BKrev: 41f55007suViMhWrhOICprHxyacUwg + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@425 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2005-01-24 Mark Haverkamp <markh@osdl.org> + + Small fixes. evt: fix member count until recovery code is done. totempg: remove dbug print. + BKrev: 41f546cd0Fq27HJzalqHeE69x99WKg + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@424 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Temp config change code + (Logical change 1.119) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@423 fd59a12c-fef9-0310-b244-a6a79926bd2f + + remove debug print + (Logical change 1.119) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@422 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2005-01-22 Steven Dake <sdake@broked.org> + + Remove random dropping of packets in released version. + (Logical change 1.118) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@421 fd59a12c-fef9-0310-b244-a6a79926bd2f + + totemsrp.c: Remove random dropping of packets in released version. + BKrev: 41f2c58dbLMQ6YcKCJxEwIKRUk7lxw + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@420 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2005-01-22 Steven Dake <sdake@mvista.com> + + update to new totem code + (Logical change 1.117) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@419 fd59a12c-fef9-0310-b244-a6a79926bd2f + + enable some testing code. + (Logical change 1.117) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@418 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Add test.cpp to makefile + (Logical change 1.117) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@417 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Delete: exec/gmi.c + }(Logical change 1.117) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@416 fd59a12c-fef9-0310-b244-a6a79926bd2f + + new benchmark runs for 10 seconds. + (Logical change 1.117) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@415 fd59a12c-fef9-0310-b244-a6a79926bd2f + + update to new crypto code + (Logical change 1.117) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@414 fd59a12c-fef9-0310-b244-a6a79926bd2f + + update to new crypto code. + (Logical change 1.117) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@413 fd59a12c-fef9-0310-b244-a6a79926bd2f + + (Logical change 1.117) + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@412 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Makefile: Add test.cpp to makefile testckpt.c: enable some testing code. evsbench.c, ckptbench.c: new benchmark runs for 10 seconds. test.cpp, rmd.h, totemsrp.h, totemsrp.c, totempg.h, totempg.c, swab.h: new file sq.h, Makefile, evt.c, evs.c, clm.c, amf.c, crypto.c, ckpt.c, aispoll.c: update to new totem code. queue.h, ais_msg.h: update to new totem code parse.h, parse.c, Makefile, main.h: update to new crypto code main.c, handlers.h: update to new crypto code. .del-gmi.h~7d81bcdb10af22b3: Delete: exec/gmi.h .del-gmi.c~df0f77a7b91ff206: Delete: exec/gmi.c + BKrev: 41f2bdd3a_mEhs2wkBZHsD4_aft9vA + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@411 fd59a12c-fef9-0310-b244-a6a79926bd2f + + update to new totem code. + (Logical change 1.117) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@410 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Delete: exec/gmi.h + }(Logical change 1.117) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@409 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Initial revision + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@408 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2005-01-11 Mark Haverkamp <markh@osdl.org> + + add in missing mutex unlock + BKrev: 41e405deOyfzWPCaxv7_aIpgxL5C5g + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@407 fd59a12c-fef9-0310-b244-a6a79926bd2f + + add in missing mutex unlock + (Logical change 1.116) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@406 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Need to specify create because the channel probably doesn't exist anymore. + BKrev: 41e40050NKYAEN3N5kB1-R-klUXqUQ + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@405 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Need to specify create because the channel probably doesn't exist anymore. + (Logical change 1.115) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@404 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2005-01-10 Miyotaka Sakai <sakai@unknown.org> + + amf.c: For Protection Group Tracking Bug + BKrev: 41e29f00Yz2GqTwTyBhpW_zo6WjI1Q + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@403 fd59a12c-fef9-0310-b244-a6a79926bd2f + + For Protection Group Tracking Bug + (Logical change 1.114) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@402 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2005-01-08 Steven Dake <sdake@mvista.com> + + tlist.h: Fix required for previous tlist.c commit. + BKrev: 41e01e1cFsurlTBuApZjiZ3l9RFdBw + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@401 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Fix required for previous tlist.c commit. + (Logical change 1.113) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@400 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Merge sdake@bk.osdl.org:/var/bk/openais into persist.az.mvista.com:/home/sdake/openais + 2005/01/08 02:16:10-07:00 mvista.com!sdake + tlist.c: + Fix use of memory area after free when timer_fn deletes a timer. + The 3 cases are: + 1. timer_fn deletes its own timer + 2. timer_fn deletes next timer after its own timer + 3. timer_fn deletes any other timer + + BKrev: 41dfa4faNWgA_s0fcyzlj-jhOFNKAA + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@399 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Fix use of memory area after free when timer_fn deletes a timer. The 3 cases are: 1. timer_fn deletes its own timer 2. timer_fn deletes next timer after its own timer 3. timer_fn deletes any other timer + (Logical change 1.112) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@398 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2005-01-07 Steven Dake <sdake@broked.org> + + evs.c, clm.c, amf.c: Fix missing unlock in error conditions reported by Kristen Smith + BKrev: 41deef37lfq4PXPbgolOpenG8xUJYg + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@397 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Fix missing unlock in error conditions reported by Kristen Smith + (Logical change 1.111) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@396 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2005-01-07 Kristen Smith <kjsmith@nortelnetworks.com> + + Add missing mutex unlocks in evt dispatch function. + BKrev: 41dec6bdm_JzS8aFCPMDziJhBZprSw + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@395 fd59a12c-fef9-0310-b244-a6a79926bd2f + + I was running into a problem where the evt api appeared to be getting into a deadlock situtation. The problem would occur when I would kill aisexec while my program was running (using EVT and CLM apis). My program is multi-threaded where 1 thread is calling evtDispatch and other threads can be calling evtPublish at various times. The problem I ran into is when I killed aisexec, the evtDispatch would take a lock, but never give it back. At the same time, my sending thread would call evtPublish which would take the lock and hang since evtDispatch never gave up the lock it took. + The fix was to add a few unlocks in evt.c where they appeared to be missing. + Here is the info: + + 1) line 504 in evt.c (lib dir) calls + + pthread_mutex_unlock(&evti->ei_mutex); + goto error_unlock; + + 2) There are subsequent calls to goto error_unlock in later error statements + that do not unlock the mutex before the goto call - the lines are 534 and 541 + + Adding the unlock right before the goto @ 534 and @ 541 fixes the deadlock + for my scenario. + + Kristen Smith + Nortel Networks + + (Logical change 1.110) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@394 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2004-11-29 Steven Dake <sdake@mvista.com> + + Improve code coverage by testing a few more APIs in the AMF. + (Logical change 1.109) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@393 fd59a12c-fef9-0310-b244-a6a79926bd2f + + testamf.c: Improve code coverage by testing a few more APIs in the AMF. + BKrev: 41ab821fPmG01mXBZYuPJWKuOLHj5A + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@392 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2004-11-25 Steven Dake <sdake@mvista.com> + + code coverage work cleanup + (Logical change 1.108) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@391 fd59a12c-fef9-0310-b244-a6a79926bd2f + + fix double ;; which causes gcc 2.95 to fail to compile + (Logical change 1.108) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@390 fd59a12c-fef9-0310-b244-a6a79926bd2f + + testparse.c: code coverage work cleanup evt.c: fix double ;; which causes gcc 2.95 to fail to compile + BKrev: 41a51dc9RLGeGsr9z5GLjSGzFovoKQ + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@389 fd59a12c-fef9-0310-b244-a6a79926bd2f + + correct stack corruption when logging data. + (Logical change 1.107) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@388 fd59a12c-fef9-0310-b244-a6a79926bd2f + + remove extra printf from gmi. + (Logical change 1.107) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@387 fd59a12c-fef9-0310-b244-a6a79926bd2f + + parse.c: correct stack corruption when logging data. gmi.c: remove extra printf from gmi. + BKrev: 41a51930u36bUFf2s34EDiXBXWb-1Q + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@386 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2004-11-24 Steven Dake <sdake@mvista.com> + + Fix compile with gcc 2.95. + (Logical change 1.106) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@385 fd59a12c-fef9-0310-b244-a6a79926bd2f + + gmi.c, amf.c: Fix compile with gcc 2.95. + BKrev: 41a50bf5bDdOboBSLlLamrDIChW6LQ + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@384 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2004-11-12 Steven Dake <sdake@mvista.com> + + evs.c: Kristen Smith reported a bug where evs would return 0.0.0.0 in the source address. This patch fixes that defect 182. + BKrev: 41950c4eWm2WAOmtw1VmnIPUzCirKw + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@383 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Kristen Smith reported a bug where evs would return 0.0.0.0 in the source address. This patch fixes that defect 182. + (Logical change 1.105) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@382 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2004-11-08 somacoma <somacoma@unknown.org> + + Merge + 2004/10/29 00:13:35+02:00 somacoma.net!dns + evt.c: + Fix type-punning warnings with gcc-3.3 and later. + + BKrev: 418eb0e5AwiqPJ0GA8LlrTmNOv1pVQ + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@381 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Fix type-punning warnings with gcc-3.3 and later. + (Logical change 1.104) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@380 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2004-11-06 Steven Dake <sdake@mvista.com> + + Commit timeout wasn't stopped when entering gather state. This patch stops the commit timeout when the gather state is entered. + (Logical change 1.103) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@379 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Merge sdake@bk.osdl.org:/var/bk/openais into persist.az.mvista.com:/home/sdake/openais + 2004/11/06 10:42:19-07:00 mvista.com!sdake + gmi.c: + Commit timeout wasn't stopped when entering gather state. This patch stops + the commit timeout when the gather state is entered. + + BKrev: 418d0d02UJqL-86F2zLxnkruJk2Z7Q + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@378 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2004-11-05 Miyotaka Sakai <sakai@unknown.org> + + Makefile: append keygen.o to clean target amf.c: match function name to coding style + BKrev: 418baa69pjW8OB2yd60kweHMtHG5Fg + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@377 fd59a12c-fef9-0310-b244-a6a79926bd2f + + match function name to coding style + (Logical change 1.102) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@376 fd59a12c-fef9-0310-b244-a6a79926bd2f + + append keygen.o to clean target + (Logical change 1.102) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@375 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2004-11-04 Miyotaka Sakai <sakai@unknown.org> + + implement gmi_token_callback in amf.c + (Logical change 1.101) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@374 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Makefile: get rid of make error amf.c: implement gmi_token_callback in amf.c + BKrev: 418aaf0fKs_99rjhstkG78ZR02mT9g + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@373 fd59a12c-fef9-0310-b244-a6a79926bd2f + + get rid of make error + (Logical change 1.101) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@372 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2004-11-02 Miyotaka Sakai <sakai@unknown.org> + + fix wrong Hastat after node join + (Logical change 1.100) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@371 fd59a12c-fef9-0310-b244-a6a79926bd2f + + fix wrong HaStat after node join + (Logical change 1.100) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@370 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2004-11-02 Steven Dake <sdake@mvista.com> + + Merge persist.az.mvista.com:/home/sdake/openais into persist.az.mvista.com:/export/hadev/openais/defect-174 + 2004/10/31 00:48:17+09:00 sakai!sakai + ais_msg.h: + fix wrong Hastat after node join + amf.c: + fix wrong HaStat after node join + + BKrev: 4187f5f99iXw5l-V34v_kR2YTLDpgg + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@369 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2004-10-30 Steven Dake <sdake@mvista.com> + + Add rlimit code to allow openais to work with linux kernel 2.6.9 or later + (Logical change 1.99) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@368 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Add rlimit code to allow openais to work with linux kernel 2.6.9 or later + BKrev: 4182db2fMpOhxCxRnyhHxC5YOCUhvg + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@367 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2004-10-28 Steven Dake <sdake@mvista.com> + + 64bit safe ais types + (Logical change 1.98) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@366 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Remove specific o files instead of all objects. + (Logical change 1.98) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@365 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Type checking changes for printf's + (Logical change 1.98) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@364 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Fix off by one which oculd cause invalid handle to be used. + (Logical change 1.98) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@363 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Fix off by one which could cause invalid handle to be used. + (Logical change 1.98) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@362 fd59a12c-fef9-0310-b244-a6a79926bd2f + + type safeness printing. + (Logical change 1.98) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@361 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Several fixes by Daniel Stodden. Possible crash on invalid handle fixed in library and executive. Also parser could crash when out of memory occurs. + util.c: + Fix off by one which oculd cause invalid handle to be used. + testevt.c, testckpt.c, subscription.c, evtbench.c: + type safeness printing. + publish.c: + type safeness prnting. + ais_types.h: + 64bit safe ais types + Makefile: + Remove specific o files instead of all objects. + parse.c: + Fix crash in parser. + hdb.c: + Fix off by one which could cause invalid handle to be used. + gmi.c: + remove type-punned pointer warning + ckpt.c, amf.c: + Type checking changes for printf's + + BKrev: 4180200fVk1m035hXoENX87UgLUrKg + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@360 fd59a12c-fef9-0310-b244-a6a79926bd2f + + type safeness prnting. + (Logical change 1.98) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@359 fd59a12c-fef9-0310-b244-a6a79926bd2f + + remove type-punned pointer warning + (Logical change 1.98) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@358 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Fix crash in parser. + (Logical change 1.98) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@357 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2004-10-22 Mark Haverkamp <markh@osdl.org> + + I added some cases to test multiple channel and subscriptions as well as some retained event tests. + (Logical change 1.97) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@356 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Here some updates to the event code. The first are changes to exec/evt.c: 1. manage the base event ID a little better. 2. I also added some private log levels to allow me to selectively turn on debug output in some sections of the code without turning on everything. 3. Remove (EVT) from all the printf calls. + The next is an update to the testevt program. I added some cases to test + multiple channel and subscriptions as well as some retained event tests. + + BKrev: 417978c5I2I15AFzIQ0zITa5_ESuZQ + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@355 fd59a12c-fef9-0310-b244-a6a79926bd2f + + 1. manage the base event ID a little better. 2. I also added some private log levels to allow me to selectively turn on debug output in some sections of the code without turning on everything. 3. Remove (EVT) from all the printf calls. + (Logical change 1.97) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@354 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2004-10-18 Steven Dake <sdake@mvista.com> + + Change logging to include service and description. + (Logical change 1.96) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@353 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Change loggint o include service and description. + (Logical change 1.96) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@352 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Add log print service. + (Logical change 1.96) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@351 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Delete: exec/log/print.c + }(Logical change 1.96) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@350 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Add log service level. + (Logical change 1.96) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@349 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Big update for better logging to file, syslog, or stderr. + print.h: + Change loggint o include service and description. + print.c: + Change logging to include service and description. + parse.h, parse.c: + Change parser to read new configuration file format. + main.c: + Some changes for log services. + gmi.c, evt.c, evs.c, clm.c, ckpt.c: + Add log service level. + amf.c: + Add log print service. + openais.conf: + new file + .del-network.conf~b38a0f011c4341a7: + Delete: conf/network.conf + QUICKSTART: + Updates that explains new configuration file options. + .del-print.h~e83281cecec7f02d: + Delete: exec/log/print.h + .del-print.c~53000a4a22b4cd: + Delete: exec/log/print.c + + BKrev: 41740e46Y1NJgmUMM6WceFwxBVXOVg + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@348 fd59a12c-fef9-0310-b244-a6a79926bd2f + + (Logical change 1.96) + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@347 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Updates that explains new configuration file options. + (Logical change 1.96) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@346 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Change parser to read new configuration file format. + (Logical change 1.96) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@345 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Delete: conf/network.conf + }(Logical change 1.96) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@344 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Delete: exec/log/print.h + }(Logical change 1.96) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@343 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Some changes for log services. + (Logical change 1.96) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@342 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Initial revision + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@341 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2004-10-15 Mark Haverkamp <markh@osdl.org> + + Merge markh@bk.osdl.org:/var/bk/openais into markh1.pdx.osdl.net:/home/localmarkh/views/BK/openais_event + 2004/10/15 07:34:46-07:00 osdl.net!markh + Fix some problems in the open channel recovery code that could cause + remaining nodes to have an incorrect count when a node left the + membership. + + BKrev: 416fe0393RmyVFqRVwmPFENov-OyGw + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@340 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Fix some problems in the open channel recovery code that could cause remaining nodes to have an incorrect count when a node left the membership. + (Logical change 1.95) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@339 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2004-10-15 Steven Dake <sdake@mvista.com> + + Make testevs exit on evs_initialize if the return code is not EVS_OK. + (Logical change 1.94) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@338 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Add handle instance destructor code. Previously it was set to null and was being called which caused a null jump. + (Logical change 1.94) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@337 fd59a12c-fef9-0310-b244-a6a79926bd2f + + testevs.c: Make testevs exit on evs_initialize if the return code is not EVS_OK. evs.c: Add handle instance destructor code. Previously it was set to null and was being called which caused a null jump. + BKrev: 416f1bdbIKOv0YEK2JzYcGImsLWrsA + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@336 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2004-10-12 Mark Haverkamp <markh@osdl.org> + + Fix some compiler warnings with gcc 3.4 + (Logical change 1.93) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@335 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Auto merged + 2004/10/12 14:57:45-07:00 osdl.net!markh + Message type support for tracking open channels + + (Logical change 1.93) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@334 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Auto merged + 2004/10/12 14:57:45-07:00 osdl.net!markh + This takes care of tracking open channels through configuration + changes. The channel structures and data are maintained until the last + instance is closed and there are no unexpired retained events. Then the + data is freed up. + + (Logical change 1.93) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@333 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Merge markh@bk.osdl.org:/var/bk/openais into markh1.pdx.osdl.net:/home/localmarkh/views/BK/openais_event + 2004/10/12 14:57:46-07:00 osdl.net!markh + Handle open channels cluster wide and track opens. Free up channel + data when there are no more references. + + Also, fix some compiler warnings in lib/evt.c + + BKrev: 416c53d279cT2JNVM_jQ5qBjLGe6EQ + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@332 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2004-10-11 Miyotaka Sakai <sakai@unknown.org> + + correct defalut component name + (Logical change 1.92) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@331 fd59a12c-fef9-0310-b244-a6a79926bd2f + + testamf5.c, testamf3.c: correct defalut component name testamf4.c: correct defalut component name + BKrev: 416a4e740QCv2KoVOb0lbFRJYINodA + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@330 fd59a12c-fef9-0310-b244-a6a79926bd2f + + correct defalut component name + (Logical change 1.92) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@329 fd59a12c-fef9-0310-b244-a6a79926bd2f + + main.c, handlers.h, evt.c, evs.c, clm.c, ckpt.c, amf.c: exec_dump_fn support as SIGUSR2 handler to easy to debug + BKrev: 416a3b42053878SDRpbH_G7EUB4rAQ + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@328 fd59a12c-fef9-0310-b244-a6a79926bd2f + + exec_dump_fn support as SIGUSR2 handler to easy to debug + (Logical change 1.91) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@327 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2004-10-05 Steven Dake <sdake@mvista.com> + + Auto merged + 2004/10/04 16:08:46-07:00 mvista.com!sdake + Remove unneeded debug printf + + (Logical change 1.90) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@326 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Change req_header to res_header to match rest of library, especially for out of order queued messages. + (Logical change 1.90) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@325 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Merge sdake@bk.osdl.org:/var/bk/openais into persist.az.mvista.com:/home/sdake/openais + 2004/10/04 16:10:02-07:00 mvista.com!sdake + testamf.c: + Change testamf to just test protection group tracking + and componentcapabilitymodelget. + amf.c: + Change req_header to res_header to match rest of + library, especially for out of order queued messages. + Remove unneeded debug printf + + BKrev: 416301fc-l-UbKOcLV0FMuNqzCEQIw + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@324 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Auto merged + 2004/10/04 16:09:33-07:00 mvista.com!sdake + Change testamf to just test protection group tracking + and componentcapabilitymodelget. + + (Logical change 1.90) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@323 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2004-10-05 Miyotaka Sakai <sakai@unknown.org> + + amf.h, main.c, amf.c: add Amfcomponent state dump mechanism + BKrev: 4162c542Q_AtRTLkaWtprRi7H3ew7w + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@322 fd59a12c-fef9-0310-b244-a6a79926bd2f + + add Amfcomponent state dump mechanism + (Logical change 1.89) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@321 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2004-10-02 Miyotaka Sakai <sakai@unknown.org> + + add surpressing health check printf message + (Logical change 1.88) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@320 fd59a12c-fef9-0310-b244-a6a79926bd2f + + testamf.c: add to reduce health check printf message testamf6.c, testamf5.c, testamf4.c, testamf3.c, testamf2.c, testamf1.c: add to reduce health check printf message + BKrev: 415e7532j5RNbHSwQl4tF2HzMJjayQ + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@319 fd59a12c-fef9-0310-b244-a6a79926bd2f + + add suppressing healthcheck pritf message + (Logical change 1.88) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@318 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2004-10-02 Steven Dake <sdake@mvista.com> + + Fix a bunch of errors in node get and async node get. + (Logical change 1.87) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@317 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Increase code coverage of clm code. + (Logical change 1.87) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@316 fd59a12c-fef9-0310-b244-a6a79926bd2f + + testclm.c: Increase code coverage of clm code. clm.c, ais_msg.h: Fix a bunch of errors in node get and async node get. + BKrev: 415e032aF1mVsl5HqRqEZTGL5S90VA + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@315 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2004-09-29 Miyotaka Sakai <sakai@unknown.org> + + get rid of compile warning + (Logical change 1.86) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@314 fd59a12c-fef9-0310-b244-a6a79926bd2f + + testckpt.c: get rid of compile warning + BKrev: 415a0e3b7pcmfNPh8_SQDhuaxhArpQ + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@313 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2004-09-28 Mark Haverkamp <markh@osdl.org> + + Auto merged + 2004/09/28 11:29:35-07:00 mvista.com!sdake + Configuration change support from Miyotaka Sakai. + + (Logical change 1.85) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@312 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Merge markh@bk.osdl.org:/var/bk/openais into markh1.pdx.osdl.net:/home/localmarkh/views/BK/openais_event + 2004/09/28 11:29:45-07:00 mvista.com!sdake + parse.h, amf.c: + Configuration change support from Miyotaka Sakai. + + BKrev: 4159bb79gTMIV1ezWSXqMb61zwoXkg + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@311 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Auto merged + 2004/09/28 11:29:17-07:00 mvista.com!sdake + Configuration change support from Miyotaka Sakai. + + (Logical change 1.85) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@310 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Moved the SaNameTisNNameT function to util.c and called it name_match. + (Logical change 1.84) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@309 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Replace SaNameTisNameT with name_match from util.[ch] + (Logical change 1.84) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@308 fd59a12c-fef9-0310-b244-a6a79926bd2f + + evt code updated to handle cluster config changes better. Now, when a node joins, it is sent any retained events that have time left on them. Also, if the joining node had been a part of the cluster in the past, it is sent the next event ID that it should use so as to not generate duplicate event IDs. Channel open requests are now completed in the exec handler, with channel close code to follow later. + (Logical change 1.84) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@307 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Mostly event service updates to handle recovery after a configuration change. (Selecting next event ID and sending retained events to the joiner). + BKrev: 4159ad7atHUdo0CF1QjlYHOM-fjAvQ + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@306 fd59a12c-fef9-0310-b244-a6a79926bd2f + + testparse.c needs util.o now. + (Logical change 1.84) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@305 fd59a12c-fef9-0310-b244-a6a79926bd2f + + (Logical change 1.84) + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@304 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Remove some old TODO comments. + (Logical change 1.84) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@303 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Added util.[ch] for time and SaNameT match functions. Also updated dependencies. + (Logical change 1.84) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@302 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Updates for evt to handle recovery after a config change. + (Logical change 1.84) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@301 fd59a12c-fef9-0310-b244-a6a79926bd2f + + added a semi-quiet mode. + (Logical change 1.84) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@300 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Initial revision + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@299 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2004-09-28 Steven Dake <sdake@mvista.com> + + Add token callback for recovery routines. + (Logical change 1.83) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@298 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Add token callback for recovery. + gmi.h: + Add token callback functions to header. + gmi.c: + Add token callback for recovery routines. + + BKrev: 4159aa0ejs1nwJhT7hT1XL-gr9wv2Q + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@297 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Add token callback functions to header. + (Logical change 1.83) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@296 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2004-09-24 Mark Haverkamp <markh@osdl.org> + + Check to see that the message can be sent before proceeding. + (Logical change 1.82) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@295 fd59a12c-fef9-0310-b244-a6a79926bd2f + + add assert around clmNodeJoinSend since the call to gmi_mcast can return a failure now. + (Logical change 1.82) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@294 fd59a12c-fef9-0310-b244-a6a79926bd2f + + add assert around gmi_mcast calls since it can return a failure now. + BKrev: 4154791ch3ag3FHVGxaUfrVFsvN3sQ + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@293 fd59a12c-fef9-0310-b244-a6a79926bd2f + + add assert around gmi_mcast since it can return a failure now. + (Logical change 1.82) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@292 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2004-09-24 Steven Dake <sdake@mvista.com> + + testparse.c: Fix commit error in changeset 1.77. + BKrev: 41534ab0cY4dYHQw-qoPHLMpXQTAAQ + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@291 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Fix commit error in changeset 1.77. + (Logical change 1.81) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@290 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Allow getSaNameT to be compiled in for application reporting. + (Logical change 1.80) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@289 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Add sectione xpiration and get checkpoint durations working properly. + (Logical change 1.80) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@288 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Clean up duration and expiration functions. + (Logical change 1.80) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@287 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Finalize expiration of sections and checkpoints. + (Logical change 1.80) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@286 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Test expiration timer. + (Logical change 1.80) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@285 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Fix build error with -DDEBUG set. + (Logical change 1.80) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@284 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Add final support for duration timers on checkpoints and expiration timers. This cleans up memory leaks that could occur because checkpoints are expected to cleanup with the expiration and duration timers. + testckpt.c: + Test expiration timer. + ckptbenchth.c: + Reduce number of threads so runs with valgrind operate faster. + ckpt.c: + Clean up duration and expiration functions. + ais_types.h: + Add sectione xpiration and get checkpoint durations working properly. + ais_msg.h: + Add section expiration and get checkpoint durations working properly. + ckpt.h, ckpt.c: + Finalize expiration of sections and checkpoints. + print.c: + Allow getSaNameT to be compiled in for application reporting. + evs.c: + Fix build error with -DDEBUG set. + + BKrev: 41534a3dcm_0gpB32jNbsek3bGYwXQ + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@283 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Reduce number of threads so runs with valgrind operate faster. + (Logical change 1.80) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@282 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Add section expiration and get checkpoint durations working properly. + (Logical change 1.80) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@281 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2004-09-23 Steven Dake <sdake@mvista.com> + + Store handle address in timer structure. When timer expires, wipe out the handle address's value, since the timer is no longer valid. This allows double frees, or frees on handles that haven't been added. One note of caution: a handle cannot be moved into another variable and be expected to work properly for double frees. + (Logical change 1.79) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@280 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Change define for timer handle. + (Logical change 1.79) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@279 fd59a12c-fef9-0310-b244-a6a79926bd2f + + tlist.h: Change interface to allow storing of handle address in timer structure. aispoll.h, aispoll.c: Change define for timer handle. tlist.c: Store handle address in timer structure. When timer expires, wipe out the handle address's value, since the timer is no longer valid. This allows double frees, or frees on handles that haven't been added. One note of caution: a handle cannot be moved into another variable and be expected to work properly for double frees. + BKrev: 4152267afe09VjiyO_78GrWKiND_oQ + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@278 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Change interface to allow storing of handle address in timer structure. + (Logical change 1.79) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@277 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2004-09-22 Steven Dake <sdake@mvista.com> + + Fix annoying build failure because of code coverage increases. + (Logical change 1.78) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@276 fd59a12c-fef9-0310-b244-a6a79926bd2f + + testparse.c: Fix annoying build failure because of code coverage increases. + BKrev: 4151d91edCQRlmhK78LajPaUV35NyQ + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@275 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2004-09-21 Steven Dake <sdake@mvista.com> + + Add retainined events while also cleaning up memory leakage that occurs because of a lack of retained events. + (Logical change 1.77) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@274 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Add duration timer support. ckpt.h: Add retained checkpoints timer to checkpoint structure. ckpt.c: Add retained checkpoints while also cleaning up memory leakage that occurs because of a lack of retained events. + BKrev: 414f7d20vmWMyWW9eWJST5Ew5sw_yw + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@273 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Add retained events timer to checkpoint structure. + (Logical change 1.77) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@272 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Get rid of valgrind warning and possible segfault. + (Logical change 1.76) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@271 fd59a12c-fef9-0310-b244-a6a79926bd2f + + gmi.c: Get rid of valgrind warning and possible segfault. + BKrev: 414f7c5cf4HwWODMiTAI2PCkLX1fnw + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@270 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Missed merge of these two files from last changeset. + (Logical change 1.75) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@269 fd59a12c-fef9-0310-b244-a6a79926bd2f + + handlers.h, gmi.h: Missed merge of these two files from last changeset. + BKrev: 414f573d4f7iW8ZMEKLNAImK24Vn3g + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@268 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2004-09-18 Steven Dake <sdake@mvista.com> + + Add recovery plug support to evs. l + (Logical change 1.74) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@267 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Add recovery plug support to amf. + (Logical change 1.74) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@266 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Add recovery plug support to openais. This allows messages that are recovery messages to be blocked until recovery completes. All low/medium/high messages cannot be transmitted until all processors have unplugged themselves. If a configuration change occurs, the plugs are invalidated and the recovery starts again. + Makefile: + Remove two build errors with extra object file included that is not needed. + main.c: + Add recovery plug support. + gmi.c: + Add recovery plug support to group messaging. + evt.c: + Add recovery plug support to evt. + evs.c: + Add recovery plug support to evs. + l + clm.c: + Add recovery plug support to clm. + ckpt.c: + Add recovery plug support to ckpt. + amf.c: + Add recovery plug support to amf. + + BKrev: 414bddd7HCsNs1rz-sJV92mB6fupCw + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@265 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Add recovery plug support to clm. + (Logical change 1.74) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@264 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Add recovery plug support to group messaging. + (Logical change 1.74) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@263 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Add recovery plug support to evt. + (Logical change 1.74) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@262 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Add recovery plug support. + (Logical change 1.74) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@261 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Remove two build errors with extra object file included that is not needed. + (Logical change 1.74) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@260 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Add recovery plug support to ckpt. + (Logical change 1.74) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@259 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2004-09-16 Steven Dake <sdake@mvista.com> + + gmi.c: Bug 44. Fixes assertion in executive when running ckptbenchth. + BKrev: 4148dc42NSqyi9F4s6exhsVarsF10Q + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@258 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Bug 44. Fixes assertion in executive when running ckptbenchth. + (Logical change 1.73) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@257 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2004-09-15 Steven Dake <sdake@mvista.com> + + main.c: Call poll_destroy when executing ais_done. This increases code coverage from 66.9% to 82.3%. + BKrev: 4148ac12oFAraidHBF8lhdpMgBXc1w + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@256 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Call poll_destroy when executing ais_done. This increases code coverage from 66.9% to 82.3%. + (Logical change 1.72) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@255 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Increase code coverage from 19.4% to 100% by adding defines to remove debug print code in production builds. Also removed function by ifdef that is never used in the project. + (Logical change 1.71) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@254 fd59a12c-fef9-0310-b244-a6a79926bd2f + + print.c: Increase code coverage from 19.4% to 100% by adding defines to remove debug print code in production builds. Also removed function by ifdef that is never used in the project. + BKrev: 4148a813APgP44Mw4XR-P--e0qYzTw + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@253 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Increased code coverage of tlist.c from 74.5% to 95.9%. + (Logical change 1.70) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@252 fd59a12c-fef9-0310-b244-a6a79926bd2f + + tlist.c: Increased code coverage of tlist.c from 74.5% to 95.9%. + BKrev: 4148a64akC3-Hr8RMOSHHChVWBYM5Q + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@251 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Remove unused code. + (Logical change 1.69) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@250 fd59a12c-fef9-0310-b244-a6a79926bd2f + + crypto.h: Remove unused code. crypto.c: Remove unused code and change some error detection to assertions. This increases code covergae from 80.2% to 92.7% with no change in functionality. + BKrev: 4148a3f73A3zw2reb3HkDh6RWIrcag + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@249 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Remove unused code and change some error detection to assertions. This increases code covergae from 80.2% to 92.7% with no change in functionality. + (Logical change 1.69) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@248 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2004-09-10 Steven Dake <sdake@mvista.com> + + BUG 37. Fix several leaks during configuration changes. Also fixes a possible assert with many large messages being sent from multiple processors at the same time. + (Logical change 1.68) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@247 fd59a12c-fef9-0310-b244-a6a79926bd2f + + gmi.c: BUG 37. Fix several leaks during configuration changes. Also fixes a possible assert with many large messages being sent from multiple processors at the same time. + BKrev: 4140fd9dwjk3xOLpFw3Ivhp0_f_oYw + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@246 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2004-09-08 Steven Dake <sdake@mvista.com> + + Merge sdake@bk.osdl.org:/var/bk/openais into persist.az.mvista.com:/home/sdake/openais + 2004/09/08 01:11:43-07:00 mvista.com!sdake + Code coverage support in build environment and test programs. + + Many files: + Add signal handler so code coverage records coverage + Makefile: + Add code coverage build options and make clean target + + BKrev: 413ebecc_2LPT2fuaQZhw9BymLz6bQ + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@245 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Add signal handler so code coverage records coverage + (Logical change 1.67) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@244 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Add code coverage build options and make clean target + (Logical change 1.67) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@243 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2004-09-08 Steven Dake <sdake@broked.org> + + Get rid of magic number 1500 and replace with PACKET_SIZE_MAX. Also fix a glaring memory overwrite bug in gmi_init which would init 256k of memory instead of PACKET_SIZE_MAX memory. + (Logical change 1.66) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@242 fd59a12c-fef9-0310-b244-a6a79926bd2f + + gmi.c: Get rid of magic number 1500 and replace with PACKET_SIZE_MAX. Also fix a glaring memory overwrite bug in gmi_init which would init 256k of memory instead of PACKET_SIZE_MAX memory. + BKrev: 413e7bc48wgkqG1E4wSbG9KQkBJMkg + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@241 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2004-09-07 Steven Dake <sdake@broked.org> + + EVS library makes compiler warning on some compilers. Found and fixed by Sakai Miyotaka. + (Logical change 1.65) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@240 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2004-09-07 Mark Haverkamp <markh@osdl.org> + + Merge + 2004/09/04 16:52:55-07:00 broked.org!sdake + Makefile missing clean target for evs bench. Found and fixed by Sakai Miyotaka. + + (Logical change 1.65) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@239 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2004-09-07 Steven Dake <sdake@broked.org> + + (Logical change 1.65) + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@238 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2004-09-07 Mark Haverkamp <markh@osdl.org> + + Merge + 2004/09/06 13:30:28-07:00 broked.org!sdake + Added man pages and html generation for the EVS interface. + + 2004/09/04 16:54:20-07:00 broked.org!sdake + One serious bug in AMF and a few minor nits fixed from patch + from Sakai Miyotaka. + Makefile: + Makefile missing clean target for evs bench. Found and fixed by Sakai Miyotaka. + evs.c: + EVS library makes compiler warning on some compilers. Found and fixed by + Sakai Miyotaka. + amf.c: + State change from standby-active to outofservice could + result in invalid number of active units. Found and fixed by + Sakai Miyotaka. + + BKrev: 413dd134zK97xpVttMuRVm6GdcbQlg + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@237 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2004-09-07 Steven Dake <sdake@broked.org> + + State change from standby-active to outofservice could result in invalid number of active units. Found and fixed by Sakai Miyotaka. + (Logical change 1.65) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@236 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Initial revision + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@235 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2004-09-07 Mark Haverkamp <markh@osdl.org> + + Clean up some comments code. (comments, old macro). + (Logical change 1.64) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@234 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Add return value to main. + (Logical change 1.64) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@233 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Some code cleanup. + BKrev: 413dd073MFU2gjJ72eQd8SOvDfpBwQ + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@232 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2004-09-02 Mark Haverkamp <markh@osdl.org> + + Development, updates, and bug fixes to event service lib. + (Logical change 1.63) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@231 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Added special SA_CLM_LOCAL_NODE_ID case to receive your own cluster node data. + (Logical change 1.63) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@230 fd59a12c-fef9-0310-b244-a6a79926bd2f + + (Logical change 1.63) + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@229 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Added event testing programs: evtbench, subscription, publish + (Logical change 1.63) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@228 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Add in list_add_tail and list_empty functions + (Logical change 1.63) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@227 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Check to make sure that sequence ID passed into sq_item_inuse is valid. + (Logical change 1.63) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@226 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Event Service Implementation and fixes. + BKrev: 41375569R3AaZBcK1LtaD9gt36SuLQ + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@225 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Add event service message types. + (Logical change 1.63) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@224 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Completed most of the event service functionality. + (Logical change 1.63) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@223 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Initial revision + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@222 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2004-08-31 Steven Dake <sdake@broked.org> + + Mark a bug for later resolution + (Logical change 1.62) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@221 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Added the EVS service and changed the library queue to 256 entries. + (Logical change 1.62) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@220 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Major rewrite of saRecvQueue. Fixed is: activate poll messages are not sent over and over The message header is read into the return buffer if the message doesn't match, a new message is allocated This allows the message buffer for saRecvQueue to be small, but allows receiving very large messages. + (Logical change 1.62) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@219 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Add the evs library + (Logical change 1.62) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@218 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Added the evs target. + (Logical change 1.62) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@217 fd59a12c-fef9-0310-b244-a6a79926bd2f + + This changeset includes major fixes to the IPC from the executive to the library. Also included is an entirely new API called the EVS api (Extended Virtual Synchrony). This API provides EVS semantics for those developers that require this model of programming. The API is defined in include/evs.h and is very simple. + The API provides: + group semantics with 32 byte group keys. + delivery callback + configuration change callback + join one or more groups + leave one or more groups + multicast a message to the instance's joined groups + multicast a message to any other group + + Makefile: + Add the testevs and evsbench targets. + evs.c, testevs.c, evsbench.c, evs.h: + new file + Makefile: + Add the evs library + util.c: + Major rewrite of saRecvQueue. Fixed is: + activate poll messages are not sent over and over + The message header is read into the return buffer + if the message doesn't match, a new message is allocated + This allows the message buffer for saRecvQueue to be + small, but allows receiving very large messages. + amf.c: + Mark a bug for later resolution + ais_msg.h: + Add the evs messages and descriptors. + Makefile: + Added the evs target. + main.h: + Added the EVS service and changed the library queue + to 256 entries. + main.c: + major rewrite of the IPC code for sending messages + to the library. What was there previously was very + broken. + gmi.c: + Fix bug where transition from multiple members to + single members would cause messages not to be sent. + Also fixed an assertion in transition from multiple + processors to one processor. + + BKrev: 41343518pVUD6aQu4urTw6ClPiOl3w + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@216 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Add the testevs and evsbench targets. + (Logical change 1.62) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@215 fd59a12c-fef9-0310-b244-a6a79926bd2f + + major rewrite of the IPC code for sending messages to the library. What was there previously was very broken. + (Logical change 1.62) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@214 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Add the evs messages and descriptors. + (Logical change 1.62) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@213 fd59a12c-fef9-0310-b244-a6a79926bd2f + + (Logical change 1.62) + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@212 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Fix bug where transition from multiple members to single members would cause messages not to be sent. Also fixed an assertion in transition from multiple processors to one processor. + (Logical change 1.62) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@211 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Initial revision + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@210 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2004-08-28 Steven Dake <sdake@mvista.com> + + gmi.c: Flush all multicast messages by delivering them before processing the token. This ensures that the mcast fd doesn't buffer too many old messages and avoids an assert. + BKrev: 412fd3cesE7M-pXl9OZs1X2CyK7Y4A + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@209 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Flush all multicast messages by delivering them before processing the token. This ensures that the mcast fd doesn't buffer too many old messages and avoids an assert. + (Logical change 1.61) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@208 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2004-08-24 Steven Dake <sdake@mvista.com> + + Add initial support for multipathing to group messaging. + (Logical change 1.60) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@207 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Change gmi interface to support multipathing. + (Logical change 1.60) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@206 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Change network configuration parser interface to support multipathing. + (Logical change 1.60) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@205 fd59a12c-fef9-0310-b244-a6a79926bd2f + + parse.h: Change network configuration parser interface to support multipathing. gmi.h, main.c: Change gmi interface to support multipathing. parse.c: Change network configuration parser to read multiple interfaces. gmi.c: Add initial support for multipathing to group messaging. + BKrev: 412a981dC8TjKSqUYOtAx6jKoO-UlA + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@204 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Change network configuration parser to read multiple interfaces. + (Logical change 1.60) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@203 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2004-08-24 Mark Haverkamp <markh@osdl.org> + + Need to check the size of the response header here. + (Logical change 1.59) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@202 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Need to check the size of the response header instead of the request header in saRecvQueue. + BKrev: 412a6f3b4NlVb-n94TuM1jqiD4KUgA + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@201 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2004-08-23 Steven Dake <sdake@mvista.com> + + Clean up usage of ais_done. This includes passing a value for each done type. Also, libais_disconnect cleaned up so it doesn't ais_done when its queues are full. Instead it disconnects the library connection. A new connection state variable added to the conn_info structure in place of active. + (Logical change 1.58) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@200 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Changed number of queueable messages to the library from 8192 to 128 messages. + (Logical change 1.58) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@199 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Use new connection enumeration with AMF code. + (Logical change 1.58) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@198 fd59a12c-fef9-0310-b244-a6a79926bd2f + + main.h: Changed number of queueable messages to the library from 8192 to 128 messages. main.c: Clean up usage of ais_done. This includes passing a value for each done type. Also, libais_disconnect cleaned up so it doesn't ais_done when its queues are full. Instead it disconnects the library connection. A new connection state variable added to the conn_info structure in place of active. amf.c: Use new connection enumeration with AMF code. + BKrev: 41297f85ZsPdr8oHUfjQ6v_A6b6ybw + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@197 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Missed commit to changes for queue.h. + (Logical change 1.57) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@196 fd59a12c-fef9-0310-b244-a6a79926bd2f + + queue.h: Missed commit to changes for queue.h. ais_msg.h: Missed commit of changes to ais_msg.h. + BKrev: 41292695YG_qjNyfkNoFlMFaeiR7zg + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@195 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Missed commit of changes to ais_msg.h. + (Logical change 1.57) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@194 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Add flow control documentation to devmap. .l + 2004/08/22 15:24:25-07:00 mvista.com!sdake + Add event service to devmap. + + (Logical change 1.56) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@193 fd59a12c-fef9-0310-b244-a6a79926bd2f + + README.devmap: Add flow control documentation to devmap. Add event service to devmap. + BKrev: 412922454HMPjB41f5bgMaos4soalg + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@192 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2004-08-21 Steven Dake <sdake@mvista.com> + + Cleanup errors in Makefile. + (Logical change 1.55) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@191 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Change interface so there is a new libais_handler structure. + (Logical change 1.55) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@190 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Add support for flow control to amf library. + (Logical change 1.55) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@189 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Add support to group messaging to get flow control information. + (Logical change 1.55) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@188 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Add flow control support to the checkpoint benchmark program. + (Logical change 1.55) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@187 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Flow control changes. + (Logical change 1.55) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@186 fd59a12c-fef9-0310-b244-a6a79926bd2f + + testamf3.c: misc flow control changes. ckptbenchth.c: Retry checkpoint writes on threaded writes if SA_ERR_TRY_AGAIn received. ckptbench.c: Add flow control support to the checkpoint benchmark program. util.c: Add flow control to saRecvQueue function. evt.c: Add flow control to eventing. clm.c: Add flow control to cluster membership. ckpt.c: Add flow control to checkpointing. amf.c: Add flow control to amf. Makefile: Cleanup errors in Makefile. main.h: Flow control changes. handlers.h: Change interface so there is a new libais_handler structure. gmi.h: Add support to group messaging for another priority level. main.c: Add support to disconnect and dispatch to utilize flow control. gmi.c: Add support to group messaging to get flow control information. evt.c: Add support to eventing for flow control. clm.c: Add support to clm for flow control. ckpt.c: Add support for flow control to ckpt library. amf.c: Add support for flow control to amf library. + BKrev: 412678baBKkyszbWcphf0Vg85SpLXg + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@185 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Retry checkpoint writes on threaded writes if SA_ERR_TRY_AGAIn received. + (Logical change 1.55) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@184 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Add support to group messaging for another priority level. + (Logical change 1.55) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@183 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Add flow control to eventing. + (Logical change 1.55) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@182 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Add flow control to cluster membership. + (Logical change 1.55) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@181 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Add support to eventing for flow control. + (Logical change 1.55) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@180 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Add support to disconnect and dispatch to utilize flow control. + (Logical change 1.55) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@179 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Add flow control to amf. + (Logical change 1.55) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@178 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Add support for flow control to ckpt library. + (Logical change 1.55) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@177 fd59a12c-fef9-0310-b244-a6a79926bd2f + + misc flow control changes. + (Logical change 1.55) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@176 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Add flow control to saRecvQueue function. + (Logical change 1.55) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@175 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Add flow control to checkpointing. + (Logical change 1.55) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@174 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Add support to clm for flow control. + (Logical change 1.55) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@173 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2004-08-14 Steven Dake <sdake@broked.org> + + Add priority to poll abstraction Higher priority items will be serviced first + (Logical change 1.54) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@172 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Priorites added to dispatch function. This is in prep for flow control to allow dispatch functions that haven't been serviced in awhile to be bumped up in priority when they are not serviced. + The priority of the dispatch handler is passed to the dispatch + function which can modify it in place. The new priority will be + used the next time the poll system call is executed. + + main.c: + Add library accept handler at lowest priority + gmi.c: + Make gmi highest priority when adding dispatch functions + aispoll.h, aispoll.c: + Add priority to poll abstraction + Higher priority items will be serviced first + + BKrev: 411dda8dXGsq4glmjj36km40YZhjCA + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@171 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Make gmi highest priority when adding dispatch functions + (Logical change 1.54) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@170 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Add library accept handler at lowest priority + (Logical change 1.54) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@169 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2004-08-10 Steven Dake <sdake@broked.org> + + gmi.c: When 2 processors are part of the configuration, then one of the members leaves, then a new configuration occurs with 2 or more members, the "joined" list was not being properly passed to the rest of the executive services. This bug fixed. + BKrev: 41185349SwUWKZU-QQ_K91jAnvqYpA + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@168 fd59a12c-fef9-0310-b244-a6a79926bd2f + + When 2 processors are part of the configuration, then one of the members leaves, then a new configuration occurs with 2 or more members, the "joined" list was not being properly passed to the rest of the executive services. This bug fixed. + (Logical change 1.53) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@167 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2004-08-09 Steven Dake <sdake@mvista.com> + + Add encryption and authentication to GMI. + (Logical change 1.52) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@166 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Add encryption and authentication to all messages so that messages are secret and are always known to come from a source that knows the private key. + SECURITY: + Describe latest security system using SOBER, SHA1, and HMAC. + QUICKSTART: + Add details to creating security key to quickstart guide. + LICENSE: + Add libtomcrypt's license text for crypto.c and crypto.h + Makefile: + Add crytpo features to makefile + gmi.h: + Add ability to pass key and keylen to gmi_init. + Add ability to set security logging value. + gmi.c: + Add encryption and authentication to GMI. + + BKrev: 4117ed75MEkDZv2CoCUYGolBNHy17Q + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@165 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Add details to creating security key to quickstart guide. + (Logical change 1.52) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@164 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Add ability to pass key and keylen to gmi_init. Add ability to set security logging value. + (Logical change 1.52) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@163 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Add libtomcrypt's license text for crypto.c and crypto.h + (Logical change 1.52) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@162 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Add crytpo features to makefile + (Logical change 1.52) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@161 fd59a12c-fef9-0310-b244-a6a79926bd2f + + (Logical change 1.52) + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@160 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Describe latest security system using SOBER, SHA1, and HMAC. + (Logical change 1.52) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@159 fd59a12c-fef9-0310-b244-a6a79926bd2f + + keygen.c, crypto.h, crypto.c: New files for cryptography support. + BKrev: 4117ecc6HWTXJ7DG7UZ3E01aKajTBA + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@158 fd59a12c-fef9-0310-b244-a6a79926bd2f + + (Logical change 1.51) + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@157 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Initial revision + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@156 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2004-07-30 Mark Haverkamp <markh@osdl.org> + + Fix compiler warning + (Logical change 1.50) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@155 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Fix compiler warning + BKrev: 410a8aa45tOLcJaeS6TU0H7l55hYiQ + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@154 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Fix queue items memory leak. + (Logical change 1.49) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@153 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Fix queue items memory leak. + BKrev: 410a8a1arpYlwWZY9PRvbEkRYy7zkQ + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@152 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2004-07-30 Steven Dake <sdake@mvista.com> + + Change RecvQueue to use a stack structure for receiving the response instead of passing in the maximum sized value for a response message. + (Logical change 1.48) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@151 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Clean up RecvQueue users and pass in actual buffer instead of "overly large" buffer which has changed because of changes to util.c Also cleaned up memory leak in the dispatch function. + (Logical change 1.48) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@150 fd59a12c-fef9-0310-b244-a6a79926bd2f + + util.c: Change RecvQueue to use a stack structure for receiving the response instead of passing in the maximum sized value for a response message. ckpt.c: Change all RecvQueue users to use RecvRetry since there is no reason to queue out of order messages. amf.c: Clean up RecvQueue users and pass in actual buffer instead of "overly large" buffer which has changed because of changes to util.c Also cleaned up memory leak in the dispatch function. + BKrev: 4109819b_adTTm4cCZmfLJcsYb9hyA + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@149 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Change all RecvQueue users to use RecvRetry since there is no reason to queue out of order messages. + (Logical change 1.48) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@148 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2004-07-29 Steven Dake <sdake@mvista.com> + + (Logical change 1.47) + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@147 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Add function in exec/clm to get the full cluster node information for any node in the cluster membership + (Logical change 1.47) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@146 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2004-07-29 Mark Haverkamp <markh@osdl.org> + + Merge bk://bk.osdl.org/openais into markh1.pdx.osdl.net:/home/localmarkh/views/BK/openais_stage + 2004/07/29 12:26:46-07:00 mvista.com!sdake + clm.c: + Add function in exec/clm to get the full cluster node information + for any node in the cluster membership + + BKrev: 410955capPzVdVwzpMJetS80seWS7g + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@145 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Added event code and dependencies. + (Logical change 1.46) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@144 fd59a12c-fef9-0310-b244-a6a79926bd2f + + added event message types and associated data structures. + (Logical change 1.46) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@143 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Event service data types. + (Logical change 1.46) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@142 fd59a12c-fef9-0310-b244-a6a79926bd2f + + This adds the start of the AIS event service code. The library code is mostly complete. The aisexec part just has placeholders for now and will be filled in later. + BKrev: 410944e7-oXL5OZSJvizPPH9dGS2GA + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@141 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Added event library and depend target. + (Logical change 1.46) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@140 fd59a12c-fef9-0310-b244-a6a79926bd2f + + added event service handler. + (Logical change 1.46) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@139 fd59a12c-fef9-0310-b244-a6a79926bd2f + + added event service. + (Logical change 1.46) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@138 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Added clustTimeNow to get current time in nanoseconds. + (Logical change 1.46) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@137 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Added event test program and depend target. + (Logical change 1.46) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@136 fd59a12c-fef9-0310-b244-a6a79926bd2f + + (Logical change 1.46) + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@135 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Initial revision + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@134 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2004-07-29 Steven Dake <sdake@mvista.com> + + README.devmap: Document new changes to exec handler function prototype and recommend using the source_addr for deferring requests instead of recording the ip address in the message itself. main.c, handlers.h, clm.c, ckpt.c, amf.c: Add source_addr to exec message handler for event service. + BKrev: 41082a5cY6cLQK7NG_rxZrkb7lERfw + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@133 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Document new changes to exec handler function prototype and recommend using the source_addr for deferring requests instead of recording the ip address in the message itself. + (Logical change 1.45) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@132 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Add source_addr to exec message handler for event service. + (Logical change 1.45) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@131 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2004-07-28 Steven Dake <sdake@mvista.com> + + Major cleanup and use hdb.c abstracted out functions now instead of internal hacked together stuff that was there previously. + (Logical change 1.44) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@130 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Remove "old-style" handle database code from aispoll.c and include instead hdb.c/hdb.h. These files are copies of the handle database code used for the library without mutexes. + This work for Mark Haverkamp to use the handle database functionality + as part of the event service. + + BKrev: 4106e5a7ANCdXqe3zoIfO1tcYyrQhQ + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@129 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Major cleanup to use hdb.c handle database functions. + (Logical change 1.44) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@128 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Add hdb.c to the build. + (Logical change 1.44) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@127 fd59a12c-fef9-0310-b244-a6a79926bd2f + + (Logical change 1.44) + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@126 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Initial revision + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@125 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Remove handle state and handle instance information. Also cleanup saHandleCreate to return unsigned int handle instead of int handle. + (Logical change 1.43) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@124 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Hide handle state and handle instance information in this file instead of in global header file. + (Logical change 1.43) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@123 fd59a12c-fef9-0310-b244-a6a79926bd2f + + util.h: Remove handle state and handle instance information. Also cleanup saHandleCreate to return unsigned int handle instead of int handle. util.c: Hide handle state and handle instance information in this file instead of in global header file. + BKrev: 4106e4d1-Ntb973S5ymyNwgL6e0PDw + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@122 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2004-07-27 Steven Dake <sdake@mvista.com> + + Remove BINDTODEVICE socket option and replace with MULTICAST_IF to be more portable and require less root privs. + (Logical change 1.42) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@121 fd59a12c-fef9-0310-b244-a6a79926bd2f + + gmi.c: Remove BINDTODEVICE socket option and replace with MULTICAST_IF to be more portable and require less root privs. + BKrev: 410583008afZgkQ66_jDep-8pFf_nw + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@120 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2004-07-24 Steven Dake <sdake@mvista.com> + + Additional information for using the saRecvQueue call in a library. + (Logical change 1.41) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@119 fd59a12c-fef9-0310-b244-a6a79926bd2f + + README.devmap: Additional information for using the saRecvQueue call in a library. + BKrev: 41018de8tOmRhu_QtrtzbSGzWHSMKA + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@118 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2004-07-21 Steven Dake <sdake@mvista.com> + + (Logical change 1.40) + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@117 fd59a12c-fef9-0310-b244-a6a79926bd2f + + SECURITY: Description of the security policy of the openais project. Includes a description of the techniques used in openais. + BKrev: 40fdaf10zR42cuBrfB9UB-Bc-edNsQ + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@116 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Initial revision + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@115 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2004-07-15 Steven Dake <sdake@mvista.com> + + Major improvements to fragmentation. It works alot better now. + (Logical change 1.39) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@114 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Major improvements to quality in the GMI. Previously with 12 processors and running ckptstress from two nodes, one node would fail to make forward progress. Sometimes the nodes would assert or crash. All the fragmentation code has been rewritten to be more stable and of better design (at the cost of a little more memory). + BKrev: 40f5c9b6KnXRw3_UyUgLV-cIvI7YpA + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@113 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2004-07-13 Steven Dake <sdake@mvista.com> + + Allow NULL delivery_fn in gmi_join. This basically has no effect but allows the processor to participate in multicasting and membership. + (Logical change 1.38) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@112 fd59a12c-fef9-0310-b244-a6a79926bd2f + + gmi.c: Allow NULL delivery_fn in gmi_join. This basically has no effect but allows the processor to participate in multicasting and membership. + BKrev: 40f419f8lTr8W134C7CXrtXRnzoMzw + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@111 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Extraneous tokens were not being rejected on token retransmits that occurred during configuration changes. The result was bad behavior, especially with larger rings. Also cleaned up the token retransmit timer to be deleted if necessary. + (Logical change 1.37) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@110 fd59a12c-fef9-0310-b244-a6a79926bd2f + + gmi.c: Extraneous tokens were not being rejected on token retransmits that occurred during configuration changes. The result was bad behavior, especially with larger rings. Also cleaned up the token retransmit timer to be deleted if necessary. + BKrev: 40f419afbeZlmKywfUpsrDkU5kMnHg + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@109 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Add ip to deliver_fn callback + (Logical change 1.36) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@108 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Add ip to deliver_fn callback + BKrev: 40f35c58ypi89e5Nq53F73OF8QGakA + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@107 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Add ip to deliver_fn callback Add ip to deliver_fn callback Add ip to deliver_fn callback + (Logical change 1.36) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@106 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Removed something that was necessary in last changeset. + (Logical change 1.35) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@105 fd59a12c-fef9-0310-b244-a6a79926bd2f + + gmi.c: Removed something that was necessary in last changeset. + BKrev: 40f35ba0CGzAzJZVAZx-QxSIYzQlNQ + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@104 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2004-07-12 Steven Dake <sdake@mvista.com> + + gmi.c: Fix debug exit. + BKrev: 40f3069ao4cKWSuICZHrMdMIqJDlMw + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@103 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Fix debug exit. + (Logical change 1.34) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@102 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Merge sdake@bk.osdl.org:/var/bk/openais into persist.az.mvista.com:/home/sdake/openais + 2004/07/12 14:40:19-07:00 mvista.com!sdake + gmi.c: + When a processor left the membership, the next configuration would sometimes + cause a form token timeout. While not particularly harmful, it was wasteful + and not part of the original design of the group messaging protocol. + There was some extra junk code that was added to workaround some other bug + that has since been fixed. + This junk code removed and now the form token never times out (woohoo). + Also removed some extra code that calculates the next ORF processor twice. + We only really need to do it once. + + BKrev: 40f3054fipDDp-KdB8CJpzw0vS3PfA + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@101 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Auto merged + 2004/07/12 14:37:13-07:00 mvista.com!sdake + When a processor left the membership, the next configuration would sometimes + cause a form token timeout. While not particularly harmful, it was wasteful + and not part of the original design of the group messaging protocol. + There was some extra junk code that was added to workaround some other bug + that has since been fixed. + This junk code removed and now the form token never times out (woohoo). + Also removed some extra code that calculates the next ORF processor twice. + We only really need to do it once. + + (Logical change 1.33) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@100 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2004-07-12 Steven Dake <sdake@broked.org> + + Retransmit orf token if no multicast or token received within a timeout period. This could mean that the token was lost, but no configuration change has really occured. Rather then execute the heavyweight membership protocol, just retry the token and if it fails after the token timeout, execute a configuration change sequence. + BKrev: 40f21082dvUxH0aOPvKmpqoqlkEgEA + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@99 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Add retransmit of token if no multicast or token received within a timeout period (100 msec). This helps avoid a reconfiguration when only the token is lost, but no real configuration changes have occured. + (Logical change 1.32) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@98 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Changeset 1.22 introduced problem with managing messages in the sort queue. The result was memory leakage. + (Logical change 1.31) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@97 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Fix memory leak introduced in changeset 1.22. + BKrev: 40f20a301E28mF_1r27z43zk2MqHeA + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@96 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2004-07-11 Steven Dake <sdake@mvista.com> + + Clean up warnings found with -pedantic. + BKrev: 40f0eaa4fMlsgdXtJH-HQEl5nRh78Q + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@95 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Clean up warnings found with -pedantic. + (Logical change 1.30) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@94 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Changed references to C99 initializers after pedantic cleanup + (Logical change 1.30) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@93 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2004-07-10 Steven Dake <sdake@mvista.com> + + Removes the external dependency from the gmi to the global variable this_ip. This is still passed in for gmi_init users to be notified of which IP was selected, but copied for local use. + BKrev: 40ef692cfv-e5JCQ8T9iC-_i3AaBcg + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@92 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Fixes build problem with rename of aispoll.c. + (Logical change 1.29) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@91 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Removes this_ip external dependency and instead copies the bound to address to storage local to the group messaging interface. + (Logical change 1.29) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@90 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2004-07-09 Steven Dake <sdake@mvista.com> + + Rename: exec/poll.h -> exec/aispoll.h + }(Logical change 1.28) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@89 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Rename aispoll.h so that people using the aispoll header file do not collide with sys/poll.h. + BKrev: 40ef0fadvg4jQb-J9VhBM25mh_mdMQ + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@88 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Rename: exec/poll.h -> exec/aispoll.h + (Logical change 1.28) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@87 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Rename: exec/poll.c -> exec/aispoll.c + (Logical change 1.28) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@86 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Rename: exec/poll.c -> exec/aispoll.c + }(Logical change 1.28) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@85 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Rename poll.h to aispoll.h + (Logical change 1.28) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@84 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Initial revision + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@83 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2004-07-08 Steven Dake <sdake@mvista.com> + + Fix a merge problem with the previous update to the amf with the conn_info structure. the track list was not being initialized at start. + (Logical change 1.27) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@82 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Fix merge bugs from changeset 1.23. + BKrev: 40edb2ddF4jV4bxQYmbXj7nCSPCe2w + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@81 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Fix a couple merge problems with the previous update to clm with the conn_info structure. the track list was not being initialized. When track start was called the tracking wasn't added to a list. When track stop was called the tracking was not deleted. The result of all this is that cluster membership tracking was broken previously. + (Logical change 1.27) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@80 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Development documentation update. After reading these docs, it should be possible to add a service to the AIS. + (Logical change 1.26) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@79 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Learn how to develop an AIS service with README.devmap. + BKrev: 40eda440k9_Mia7kFQvGzgthaN_bWQ + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@78 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Fix build errors after previous commit. + (Logical change 1.25) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@77 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Cleanup last commit so build occurs properly. + BKrev: 40ec739f-StbBZFtCXNnVcEbdIqOYg + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@76 fd59a12c-fef9-0310-b244-a6a79926bd2f + + pass conn_info to all messages instead of file descriptor. This requires changing the initialization phase of the socket and all calls made. + (Logical change 1.24) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@75 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Big cleanup of executive to pass connection info by reference instead of having connection info as an array seperate from the poll interface. This makes the code alot cleaner and easier to read, plus removes duplicated code in the connection array management. + BKrev: 40ec72dd7wKGeQDubAA6lmUMc7JjOQ + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@74 fd59a12c-fef9-0310-b244-a6a79926bd2f + + update todo by removing completed items. + (Logical change 1.24) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@73 fd59a12c-fef9-0310-b244-a6a79926bd2f + + store conn_info field is component structure. + (Logical change 1.24) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@72 fd59a12c-fef9-0310-b244-a6a79926bd2f + + pass conn_info to all messages instead of file descriptor. + (Logical change 1.24) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@71 fd59a12c-fef9-0310-b244-a6a79926bd2f + + pass conn_info to all messages instead of file descriptor. this requires removing the connection structure and replacing with the conn_info structure. + (Logical change 1.24) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@70 fd59a12c-fef9-0310-b244-a6a79926bd2f + + when gmi.c changed, full project would not always be rebuilt fixed this issue. + (Logical change 1.24) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@69 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Run full tests instead of writing a bunch of checkpoints. + (Logical change 1.24) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@68 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Add track active variable to keep track of active connections. + (Logical change 1.24) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@67 fd59a12c-fef9-0310-b244-a6a79926bd2f + + cleanup valgrind warnings. + (Logical change 1.24) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@66 fd59a12c-fef9-0310-b244-a6a79926bd2f + + change message source to use conn_info field instead of fd. Also removed a few unneeded calls which were moved to the amf.c file. + (Logical change 1.24) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@65 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2004-07-07 Steven Dake <sdake@mvista.com> + + Change memcpy to memmove to quiet down valgrind. + (Logical change 1.23) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@64 fd59a12c-fef9-0310-b244-a6a79926bd2f + + valgrind found an off-by-one error in message frees that could lead to corruption. l + (Logical change 1.23) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@63 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Clean up some errors found with valgrind 2.1.1. + BKrev: 40ec6721IO7rAWx1t4cNnFNTugIZ1A + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@62 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Get rid of some errors from valgrind by initializing variables. + (Logical change 1.23) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@61 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2004-07-06 Steven Dake <sdake@mvista.com> + + Remove extra unused parameter to exec messages. + (Logical change 1.22) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@60 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Remove extra parameter to exec messages. + (Logical change 1.22) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@59 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Every exec message was of the prototype int func (int fd, void *msg). The "int fd" was not used by an executive message and was dead code from a previous implementation. This dead parameter removed from the tree. + BKrev: 40eb05fa_UbGyISyMyNciMoGXAXDeg + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@58 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Add activate poll message. + (Logical change 1.21) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@57 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Use new APIs for handle reference counting + (Logical change 1.21) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@56 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Change clunky locking used in library APIs to use reference counting instead. A BIG thanks to Chris Friesen who provided the initial ideas, additional comments and more ideas leading up to the commit. + BKrev: 40eafcb50VMDbK4i9ZEiu0_90gFlPQ + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@55 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Fix example to use component names in example service group. + (Logical change 1.21) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@54 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Change activate poll definitions to be generic instead of AMF specific. + (Logical change 1.21) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@53 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Use new APIs for handle reference counting. + (Logical change 1.21) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@52 fd59a12c-fef9-0310-b244-a6a79926bd2f + + add activate poll message + (Logical change 1.21) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@51 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Fix segfault during membership changes with multiple leaves at the same time. + BKrev: 40eaeec3CJrXaOzED0qddXmUUurQdg + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@50 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Wrong value being used to determine leave list, resulting in a memcpy with a -1 value in some cases, and the incorrect memcpy in other cases. + (Logical change 1.20) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@49 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2004-07-01 Steven Dake <sdake@mvista.com> + + With a two node cluster and one node killed, the remaining node didn't sent the appropriate configuration changes to the clm API or to the rest of the services. + (Logical change 1.19) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@48 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Fix two node cluster membership event not appearing on leave problem reported by Chris Friesen. + BKrev: 40e477d75L2YauKHr18UGUlPGfAEoA + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@47 fd59a12c-fef9-0310-b244-a6a79926bd2f + + remove dead code. + BKrev: 40e451f2-IOwwPNaNm65NetyBme-nw + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@46 fd59a12c-fef9-0310-b244-a6a79926bd2f + + remove dead code. + (Logical change 1.18) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@45 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2004-06-30 Steven Dake <sdake@mvista.com> + + The group messaging interface has been exported as a library for use in other programs. The key interfaces are exec/gmi.h and exec/poll.h. gmi.h describes the interface for group messaging, while poll.h describes the interface for abstracting poll system call with timers and integrated with gmi. By including these headers in programs and linking with libgmi, it is possible to use the virtual synchrony layer (group messaging interface) used in AIS for other applications. + BKrev: 40e30f7bM1KpRbp3-Bf2qVPRH1EsFA + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@44 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Initialize logging function in group messaging interface. + (Logical change 1.17) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@43 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Build gmi static and shared library for use in other programs. + (Logical change 1.17) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@42 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Add logging function init interface. + (Logical change 1.17) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@41 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Add ability to pass in logging function for people that want to use their own logging functions in their own programs. + (Logical change 1.17) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@40 fd59a12c-fef9-0310-b244-a6a79926bd2f + + add debug checking version of logging function. + (Logical change 1.17) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@39 fd59a12c-fef9-0310-b244-a6a79926bd2f + + make clean didn't remove ckptbench and ckptbenchth binaries + (Logical change 1.17) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@38 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Chris Friesen reported the testamf programs don't work correctly. Error in description of quickstart guide about how they should work which has been corrected. Also added information about using the ckptbench and ckptbenchth programs to benchmark checkpoint writes. + (Logical change 1.16) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@37 fd59a12c-fef9-0310-b244-a6a79926bd2f + + (Logical change 1.16) + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@36 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Modify QUICKSTART to clarify how testamf{1-6} work and added some text about using the ckptbench and ckptbenchth test programs. Also added the ckptbench and ckptbenchth programs to the build environment. + BKrev: 40e26a810DYCs3LU79Ne-q51pO2TgA + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@35 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Add ckptbench and ckptbenchth targets + (Logical change 1.16) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@34 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Initial revision + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@33 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2004-06-29 Steven Dake <sdake@mvista.com> + + Cluster membership API not being authenticated by openais executive. This results in testclm locking on start in saClmInitialize. + BKrev: 40e095e4VUojyuQYOBeAUqjZnbBTCA + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@32 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Fix cluster membership API not being authenticated bug. + (Logical change 1.15) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@31 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2004-06-27 Steven Dake <sdake@mvista.com> + + Make bind to a device really work properly. Now it is possible to specify the bind network and the networking will take place over that interface. + (Logical change 1.14) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@30 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Add priv drop so process doesn't have to run as root in order to lock, set RR 99, and bind to a specific ethernet interface for multicast. + (Logical change 1.14) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@29 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Make binding to a specific network really work. Also added priv dropping so process doesn't have to run as root for process lifetime. + BKrev: 40df35a4eUCTfC660C7oBwg-P9YE2g + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@28 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2004-06-23 Steven Dake <sdake@mvista.com> + + Yixiong Zou reported a problem where on some OSes the aisexec couldn't join the multicast group. This problem fixed. Also changed binding rules for sockets relating to the group messaging. see detailed changlogs for more details. + BKrev: 40d9efacQooUDhv3APjn55QVVjMueg + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@27 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Fix binding rules so that instead of binding to INADDR_ANY for UDP sockets, bind to specific interface defined in network.conf. This is done by creating two fds. gmi_fd_token is used for all token communication. gmi_fd_mcast is used for all mcast communication. I'm not sure if gmi_fd_mcast binding rules is correct. Once work begins on multipathing, this will have to be figured out :) + 2004/06/23 13:55:52-07:00 mvista.com!sdake + Use portable mreq instead of mreqn when joining the multicast + group. + + (Logical change 1.13) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@26 fd59a12c-fef9-0310-b244-a6a79926bd2f + + QUICKSTART: Modified quickstart guide thanks to comments from Yixiong Zou Information about adding groups added Information about testclm blocking until cluster membership event occurs added. + BKrev: 40d920ffgjnZO35fZ2d947AV5TWGWQ + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@25 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Modified quickstart guide thanks to comments from Yixiong Zou Information about adding groups added Information about testclm blocking until cluster membership event occurs added. + (Logical change 1.12) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@24 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2004-06-21 Steven Dake <sdake@mvista.com> + + Buffer with message data used outside lock. This creates a possible race where data from another response could be used to execute a dispatch. + 2004/06/21 00:59:54-07:00 mvista.com!sdake + Remove double pthread_mutex_unlock on saAmfDispatch routine. Unlock could + unlock another thread's unlock midthread. + + (Logical change 1.11) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@23 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Fix race with saClmDispatch where two threads could race for access to the response data from the AIS Executive. + (Logical change 1.11) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@22 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Fix race relating to threads and saClmDispatch/saAmfDispatch. + BKrev: 40d6977ewZ8VFYD8mJyEaPWxg0tI7w + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@21 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2004-06-20 Steven Dake <sdake@mvista.com> + + Add support for C++ linkage to cluster membership API. Without this change, C++ programs will not link to the library. + BKrev: 40d53e4bzcKNiPnfX523_065NBw4gg + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@20 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Add support for C++ linkage to cluster membership APIs. + (Logical change 1.10) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@19 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Port not actually set to correct port as found with tcpdump. + BKrev: 40d53d26QDtzR8msp2zMvJ-9Mq6-Tw + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@18 fd59a12c-fef9-0310-b244-a6a79926bd2f + + x86 was not setting port to network byte order, which resulted in port being byte swapped. This of course, doesn't work well with xscale boards. + (Logical change 1.9) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@17 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2004-06-18 Steven Dake <sdake@mvista.com> + + quickstart gives incorrect info about multicast addresses, now corrected. + BKrev: 40d35b80BGcr_8TvtSlrbEZBn14zZA + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@16 fd59a12c-fef9-0310-b244-a6a79926bd2f + + fix error in quickstart + (Logical change 1.8) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@15 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Fix single-node AMF assertion failure (cause runaway recursion). + BKrev: 40d22e42IsByk3WqoRIGSlETLqdUgw + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@14 fd59a12c-fef9-0310-b244-a6a79926bd2f + + single node AMF would fail because of a recursion bug. Removed the recursion by queueing single node message delivery as a timer with 0 timeout. This was happening before, but the logic was wrong. + (Logical change 1.7) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@13 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2004-06-17 Steven Dake <sdake@mvista.com> + + Crash when no network.conf file present (missing error checking). + (Logical change 1.6) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@12 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Fix crash when error reading network.conf file. + BKrev: 40d21314UfLNnjjrMSt_4U9rJZSVHA + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@11 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Fix bug in membership protocol where form token sometimes times out because the initial send of the token is sent to the wrong address. + 2004/06/16 15:42:49-07:00 mvista.com!sdake + Performance enhancements: Allow more messages to be multicast per + token possession to reach 8.8MB/sec checkpoint performance without + remcasts. Trim gather/commit timeouts to 100 msec to speed up the + membership gathering process. + + (Logical change 1.5) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@10 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Bug fix and performance enhancements to the group messaging protocol. + BKrev: 40d0cebf3iPVrudikdxGEhhTs-CQMw + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@9 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2004-06-16 Steven Dake <sdake@mvista.com> + + QUICKSTART: Test change + BKrev: 40cfe45fPOa0mbN6jPO9bRiSG_tZWA + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@8 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Test change + (Logical change 1.4) + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@7 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2004-06-16 John Cherry <cherry@osdl.net> + + Import changeset + BKrev: 40cf759cAkpvgQbZ43nWNRClHYqlXQ + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@6 fd59a12c-fef9-0310-b244-a6a79926bd2f + + (Logical change 1.3) + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@5 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Initial revision + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@4 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2004-06-16 cem <cem@osdl.net> + + Initial repository create + BKrev: 40cf7521T7yNtYdteqiCUMgD7RdOCA + + + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@3 fd59a12c-fef9-0310-b244-a6a79926bd2f + + Initial revision + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2 fd59a12c-fef9-0310-b244-a6a79926bd2f + +2004-06-16 Steven Dake <sdake@broked.org> + + New repository initialized by cvs2svn. + git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@1 fd59a12c-fef9-0310-b244-a6a79926bd2f |