Changelog History
Page 2
-
v0.8.2 Changes
January 24, 2019๐ FEATURES:
- ๐ Go Module Support: Serf now fully supports Go modules for incorporation into other projects [GH-548]
๐ IMPROVEMENTS:
- ๐ agent: Fixed a missing case where gossip would stop flowing to dead nodes for a short while. [GH-451]
- agent: Uses the go-sockaddr library to look for private IP addresses, which prefers non-loopback private addresses over loopback ones when trying to automatically determine the advertise address. [GH-451]
- ๐ agent: Properly seeds Go's random number generator using the seed library. [GH-451]
- agent: Serf is now built with Go 1.10.x. [GH-520]
- agent: Improved address comparison during conflict resolution. [GH-433]
- โก๏ธ agent: Updated memberlist to latest to pull several cleanups and fixes. [GH-491]
- agent: Improved handling of leave intent messages to make sure they propagate and are processed correctly. [GH-510]
- agent: Added CLI option to disable compression for debugging messages. [GH-529]
- ๐ library: Moved close of shutdown channel until after network resorces are released. [GH-453]
- ๐ library: Fixed several race conditions with QueryResponse [GH-460]
- library: Made snapshot writing asyncronous and will less aggressive compaction on large clusters to avoid blocking message handler on disk IO [GH-524][GH-525]
- query: truncate key list response so that it fits into one message instead of failing to answer [GH-546]
๐ BUG FIXES:
- agent: Added defenses against invalid network coordinates with NaN and Inf values. [GH-468]
- ๐ agent: Fixed an issue on Windows where "wsarecv" errors were logged when clients accessed the RPC interface. [GH-479]
- ๐ agent: Fixed an issue where calling the serf Stats function could result in a deadlock. [Consul Issue 4011]
-
v0.8.1 Changes
February 06, 2017๐ IMPROVEMENTS:
- agent: Added support for relaying query responses through N other nodes for redundancy. [GH-439]
- agent: Added the ability to tune the broadcast timeout, which might be necessary in very large clusters that experience very large, simultaneous changes to the cluster. [GH-412]
- agent: Added a checksum to UDP gossip messages to guard against packet corruption. [GH-432]
- agent: Added a short window where gossip will still flow to dead nodes so that they can more quickly refute. [GH-440]
- build: Serf now builds with Go 1.7.5. [GH-443]
-
v0.8.0
September 14, 2016 -
v0.7.0
December 21, 2015 -
v0.6.4 Changes
February 12, 2015๐ IMPROVEMENTS:
- Added merge delegate to Serf library to support application specific logic in cluster merging.
SERF_RPC_AUTH
environment variable can be used in place of CLI flags.- Display if encryption is enabled in Serf stats
- Improved
join
behavior when using DNS resolution
๐ BUG FIXES:
- Fixed snapshot file compaction on Windows
- Fixed device binding on Windows
- Fixed bug with empty keyring
- Fixed parsing of ports in some cases
- Fixing stability issues under high churn
MISC:
- Increased user event size limit to 512 bytes (previously 256)
-
v0.6.3 Changes
July 10, 2014๐ IMPROVEMENTS:
- โ Added
statsite_addr
configuration to stream to statsite
๐ BUG FIXES:
- ๐ Fixed issue with mDNS flooding when using IPv4 and IPv6
- ๐ Fixed issue with reloading event handlers
MISC:
- ๐ Improved failure detection reliability under load
- โฌ๏ธ Reduced fsync() use in snapshot file
- ๐ Improved snapshot file performance
- โ Additional logging to help debug flapping
- โ Added
-
v0.6.2 Changes
June 16, 2014๐ IMPROVEMENTS:
- โ Added
syslog_facility
configuration to set facility
๐ BUG FIXES:
- ๐ Fixed memory leak in in-memory stats system
- ๐ Fixed issue that would cause syslog to deadlock
MISC:
- ๐ Fixed missing prefixes on some log messages
- ๐ Docs fixes
- โ Added
-
v0.6.1 Changes
May 29, 2014๐ BUG FIXES:
๐ On Windows, a "failed to decode request header" error will no longer be shown on every RPC request.
๐ Avoiding holding a lock which can cause monitor/stream commands to fail when an event handler is blocking
๐ Fixing conflict response decoding errors
๐ IMPROVEMENTS:
๐ Improved agent CLI usage documentation
Warn if an event handler is slow, potentially blocking other events
-
v0.6.0 Changes
May 08, 2014๐ FEATURES:
Support for key rotation when using encryption. This adds a new
serf keys
command, and a-keyring-file
configuration. Thanks to @ryanuber.New
-tags-file
can be specified to persist changes to tags made via the RPC interface. Thanks to @ryanuber.New
serf info
command to provide operator debugging information, and to get info about the local node.Adding
-retry-join
flag to agent which enables retrying the join until success or-retry-max
attempts have been made.
๐ IMPROVEMENTS:
New
-rejoin
flag can be used along with a snapshot file to automatically rejoin a cluster.Agent uses circular buffer to invoke handlers, guards against unbounded output lengths.
Adding support for logging to syslog
The SERF_RPC_ADDR environment variable can be used instead of the
-rpc-addr
flags. Thanks to @lalyos [GH-209].serf query
can now output the results in a JSON format.Unknown configuration directives generate an error [GH-186]. Thanks to @vincentbernat.
๐ BUG FIXES:
Fixing environmental variables with invalid characters. [GH-200]. Thanks to @arschles.
Fixing issue with tag changes with hard restart before failure detection.
Fixing issue with reconnect when using dynamic ports.
MISC:
Improved logging of various error messages
Improved debian packaging. Thanks to @vincentbernat.
-
v0.5.0 Changes
March 12, 2014๐ FEATURES:
New
query
command provides a request/response mechanism to do realtime queries across the cluster. [GH-139]Automatic conflict resolution. Serf will detect name conflicts, and use an internal query to determine which node is in the minority and perform a shutdown. [GH-167] [GH-119]
New
reachability
command can be used to help diagnose network and configuration issues.Added
member-reap
event to get notified of when Serf removes a failed or left node from the cluster. The reap interval is controlled byreconnect_timeout
andtombstone_timeout
respectively. [GH-172]
๐ IMPROVEMENTS:
New Recipes section on the site to share Serf tips. Thanks to @ryanuber. [GH-177]
members
command has new-name
filter flag. Thanks to @ryanuber [GH-164]New RPC command "members-filtered" to move filtering logic to the agent. Thanks to @ryanuber. [GH-149]
reconnect_interval
andreconnect_timeout
can be provided to configure agent behavior for attempting to reconnect to failed nodes. [GH-155]tombstone_interval
can be provided to configure the reap time for nodes that have gracefully left. [GH_172]Agent can be provided
rpc_auth
config to require that RPC is authenticated. All commands can take a-rpc-auth
flag now. [GH-148]
๐ BUG FIXES:
Fixed config folder in Upstart script. Thanks to @llchen223. [GH-174]
Event handlers are correctly invoked when BusyBox is the shell. [GH-156]
Event handlers were not being invoked with the correct SERF_TAG_* values if tags were changed using the
tags
command. [GH-169]
MISC:
- Support for protocol version 1 (Serf 0.2) has been removed. Serf 0.5 cannot join a cluster that has members running version 0.2.