nsq v1.2.1 Release Notes
Release Date: 2021-08-15 // about 3 years ago-
โฌ๏ธ Upgrading
- #1227 - bump dependencies, officially drop
dep
support, drop Go1.9
support
๐ Features:
- #1347 -
nsqadmin
: switch to go:embed for static assets - #1355 / #1364 - arm64 builds (thanks @danbf)
- #1346 -
nsqd
: ability to skip ephemeral topics/channels in statsd output - #1336 / #1341 / #1343 -
nsqd
: ability to configure auth endpoint path (thanks @tufanbarisyildirim) - #1307 - remove
Context
to use stdlibcontext
- #1295 / #1296 - switch to GitHub Actions CI
- #1292 -
nsqd
: minimize allocations on message send (thanks @imxyb) - #1289 - optimize
uniq
(thanks @donutloop) - #1230 / #1232 -
nsqd
: ability to omit memory stats from/stats
(thanks @creker) - #1226 -
nsqd
: only update internalRDY
count for client when it changes (thanks @andyxning) - #1221 / #1363 - test against more recent versions of Go
- #1209 -
nsqd
: bumpgo-diskqueue
(interface change) (thanks @bitpeng) - #1206 - prefer idiomatic
sort.Ints
oversort.Sort
(thanks @lelenanam) - #1197 / #1362 - Dockerfile: update Alpine base image, use /data by default
- #1178 -
nsqd
: configurable queue scan worker pool (thanks @andyxning) - #1159 -
nsqd
: don't buffer messages when--mem-queue-size=0
(thanks @bitpeng) - #1073 / #1297 -
nsqd
: support separate broadcast ports for TCP and HTTP (thanks @shyam-king)
๐ Bugs:
- #1347 -
nsqadmin
: fix graphite key for ephemeral topics/channels - #765 / #1195 / #1203 / #1205 - fix build on illumos (thanks @i-sevostyanov)
- #1333 - fix race detector tests on non-bash shells
- #1330 - fix
log_level
support in configuration file (thanks @edoger) - #1319 / #1331 / #1361 -
nsqd
: handle SIGTERM - #1287 -
nsqadmin
: fix--proxy-graphite
support (thanks @fanlix) - #1270 / #1271 -
nsqlookupd
: fix incorrect error message for HTTP listener (thanks @TangDH03) - #1264 - fix benchmark script
- #1251 / #1314 / #1327 -
nsqd
: fix live lock for high churn ephemeral topic/channel reconnections (thanks @slayercat) - #1237 - Dockerfile: add
nsswitch.conf
to ensure go resolver uses/etc/hosts
first - #1217 / #1220 -
nsqd
: improve error message when--data-path
does not exist (thanks @mdh67899) - #1198 / #1190 / #1262 - synchronize close of all connections on Exit (thanks @benjsto)
- #1188 / #1189 -
nsqadmin
: fix channel delete, fix source-maps in Firefox (thanks @avtrifanov) - #1186 -
nsqadmin
: fix nodes list with ipv6 addresses (thanks @andyxning)
- #1227 - bump dependencies, officially drop
Previous changes from v1.2.0
-
Upgrading
- ๐ #1055 -
nsqd
: removed support for old metadata scheme used in v0.3.8 and earlier- you cannot upgrade directly from v0.3.8 to v1.2.0, you must go through v1.0.0-compat or v1.1.0
- #1115 - manage dependencies with go modules
dep
support still present for now, but deprecated
๐ Features:
- 0๏ธโฃ #1136 -
nsqd
: add--max-channel-consumers
(default unlimited) (thanks @andyxning) - 0๏ธโฃ #1133 -
nsqd
: add--min-output-buffer-timeout
(default 25ms) to limit how low a timeout a consumer can request- and raise default
--max-output-buffer-timeout
to 30 seconds (lower timeout, more cpu usage)
- and raise default
- #1127 -
nsqd
: add topic total message bytes to stats (thanks @andyxning) - 0๏ธโฃ #1125 -
nsqd
: add flag to adjust default--output-buffer-timeout
(thanks @andyxning) - #1163 -
nsqd
: add random load balancing for authd requests (thanks @shenhui0509) - #1119 -
nsqd
: include client TLS cert CommonName in authd requests - #1147 -
nsq_to_file
: include topic/channel in most log messages - #1117 -
nsq_to_file
: add--log-level
and--log-prefix
flags - #1117/#1120/#1123 -
nsq_to_file
: big refactor, more robust file switching and syncing and error handling - #1118 -
nsqd
: add param to/stats
endpoint to allow skipping per-client stats (much faster if many clients) - #1118 -
nsqadmin
,nsq_stat
: useinclude_clients
param for/stats
for a big speedup for big clusters - #1110 -
nsq_to_file
: support for separate working directory with--work-dir
(thanks @mccutchen) - #856 -
nsqadmin
: add--base-path
flag (thanks @blinklv) - #1072 -
nsq_to_http
: add--header
flag (thanks @alwindoss) - #881 -
nsqd
: add producer client tcp connections to stats (thanks @sparklxb) - #1071/#1074 -
nsq_to_file
: new flag--sync-interval
(default same as previous behavior, 30 seconds) (thanks @alpaker)
๐ Bugs:
- #1153 -
nsqd
: close connections that don't send "magic" header (thanks @JoseFeng) - ๐ #1140 -
nsqd
: exit on all fatal Accept() errors - restart enables better recovery for some conditions (thanks @mdh67899) - ๐จ #1140 -
nsqd
,nsqlookupd
,nsqadmin
: refactor LogLevel, general refactor to better exit on all fatal errors - #1140 -
nsqadmin
: switch to usingjudwhite/go-svc
likensqd
andnsqadmin
do - #1134 -
nsqadmin
: fix clients count and channel total message rate (new bugs introduced in this cycle) - #1132 -
nsqd
,nsqlookupd
,nsqadmin
: fix http error response unreliable json serialization - #1116 -
nsqlookupd
: fix orphaned ephemeral topics in registration DB - #1109 -
nsqd
: fix topic message mis-counting if there are backend write errors (thanks @SwanSpouse) - โก๏ธ #1099 -
nsqlookupd
: optimize/nodes
endpoint, much better for hundreds of nsqd (thanks @andyxning) - #1085 - switch
GOFLAGS
toBLDFLAGS
inMakefile
now thatGOFLAGS
is automatically used by go - ๐ #1080 -
nsqadmin
: eslint reported fixes/cleanups
- ๐ #1055 -