summaryrefslogtreecommitdiff
path: root/src/migration-scripts
diff options
context:
space:
mode:
authorrockfish-vyos <321823801+rockfish-vyos@users.noreply.github.com>2026-08-27 16:00:00 +0000
committerrockfish-vyos <321823801+rockfish-vyos@users.noreply.github.com>2026-08-27 16:00:00 +0000
commit7d51ac947cf694056aa28ac6342a8a778a268f35 (patch)
tree48cf8537434e937e3d09e545033b015f27245c1e /src/migration-scripts
parentb7e9483971e1f0165dbe05b81524912c8e1aaa65 (diff)
downloadvyos-1x-7d51ac947cf694056aa28ac6342a8a778a268f35.tar.gz
vyos-1x-7d51ac947cf694056aa28ac6342a8a778a268f35.zip
keepalived: T9256: keep incomplete FIFO lines between reads
pipe_wait() reads at most 500 bytes per iteration and keeps no residual buffer between them. A VRRP transition involving enough instances emits more than that in a single burst, so a read lands mid-line: the tail of one chunk is queued as an incomplete fragment and the head of the next chunk as another. The dispatcher then fails to match the notify regex on both halves and silently runs no transition script. Observed on a pair with 14 instances in one sync group, where "GROUP" arrived as "ROUP" because the leading character ended the previous read. Hold the incomplete trailing line and prepend it to the next read, so only whole lines reach the queue. Only signal the processing thread when at least one complete line was queued.
Diffstat (limited to 'src/migration-scripts')
0 files changed, 0 insertions, 0 deletions