- Fix test issue where libfq could not be found.
- Minor change to compiler optimization flag. Level
O5
does not exist and is effectivelyO3
. - Update systemd install path. The new path is equivalent to the old, but
avoids potential issues with
/lib
being a symbolic link on popular Linux distros. - Fix potential race in host resolution.
- Correct a build issue when libbcd support is disabled.
- Fix race condition in client connection status.
- Fix file descriptor leak on connection error.
- Correct usage of
pthread_*
return values. Remove invalid use ofvolatile
. - Add missing
volatile
in Java client, and replaceLinkedList
withArrayDeque
.
- Upgrade jquery to 3.5.1 for FQ user interface
- Queue drops are tracked as
dropped_to
. - Web UI updated to display queue drops/rate.
- -b deprecated, -B added, and BCD is disabled by default.
- Track drops to queues as
dropped_in
in status.
- Force disconnect on message read/write error.
- Reuse listener threads.
- Various code cleanups.
- Better bounds checking on auth handshake (allow full size).
- Fix BCD integration.
- Set
SO_REUSEPORT = 1
for listener. - Add
-b
to disable BCD/backtrace integration.
- Name threads on Linux to aid debugging.
- Prevent abort when queue removal fails.
- Add libbcd support for catching faults with backtrace.
- Place fq modules in $(LIBEXECDIR)/fq
- Automatically load all available modules
- Move the
valnode_t
definition into fq.h. - Fix hex construction macro.
- Support var-args in loadable program functions.
- Fix multi-argument parsing in routing grammar.
- Omit unneeded library dependencies on Illumos.
- Make poll() calls resume after signal interruption.
- Use socket keep-alives for client/server connections.
- Fix use-after-free bug in lua ffi client bindings.
- Fix test suite.
- Explicit registration of local function to better navigate changing dlsym "self" personalities.
- ENABLE_DTRACE=1 Linux build flag.
- Fixes to fq-client.lua on OmniOS
- Add
fqs
tool for sending messages from stdin - Test suite utilizing
mtevbusted
from libmtev (PR #37)
- Fix misuse of stack for freeing messages (0.10.11 fix was bad).
- Add Linux futex support for lower-latency idle network wake-up.
- Ensure message ordering on per-client data connections.
- Fix crash when shutting down client that has never seen a message.
- Fix source management issue. 0.10.9 tag exluded commits.
- Change message free-lists to prevent use-after-free on thread exit.
- Fix builds on newer Mac OS X
- Change message free-lists to prevent use-after-free on thread exit.
- Fix bug in server->client heartbeats not beating.
- Fix querystring parsing crash when parameters are not k=v form.
- Resume on-disk queues at the right checkpoint location.
- Fix bug in route binding prefix matching causing misdirected messages (clients could get more than they asked for).
- Fix bug on some Linux systems regarding exposed symbols.
- Fix crashing issue enqueueing messages due to unsafe use of spsc fifos.
- Add dynamic loading of routing program extensions.
- Move the "sample" function to a dynamic extension for example purposes.