]> git.kaiwu.me - haproxy.git/commit
BUG/MAJOR: cli: show sess <id> may randomly corrupt the back-ref list
authorWilly Tarreau <w@1wt.eu>
Mon, 26 Nov 2012 01:22:40 +0000 (02:22 +0100)
committerWilly Tarreau <w@1wt.eu>
Mon, 26 Nov 2012 01:22:40 +0000 (02:22 +0100)
commit5f9a8779b3d4fb324dacc1daacfb478bd12963d1
tree14205d61256941314e4228e4bacc9fc4f301d9c5
parent7615366c708cf19be2ce856e725e0dab36446d38
BUG/MAJOR: cli: show sess <id> may randomly corrupt the back-ref list

show sess <id> puts a backref into the session it's dumping. If the output
is interrupted, the backref cannot always be removed because it's only done
in the I/O handler. This can randomly corrupt the backref list when the
session closes, because it passes the pointer to the next session which
itself might be watched.

The case is hard to reproduce (hundreds of attempts) but monitoring systems
might encounter it frequently.

Thus we have to add a release handler which does the cleanup even when the
I/O handler is not called.

This issue should also be present in 1.4 so the patch should be backported.
src/dumpstats.c