On Sat, Mar 21, 2020 at 10:08:15AM +0100, Willy Tarreau wrote:
> On Fri, Mar 20, 2020 at 08:10:25AM -0600, Sean Reifschneider wrote:
> > I grabbed the source from the PPA and rebuilt it, installed the dbg
> > package, and here's one of the "bt full"s:
> 
> Thanks!
> 
> > (gdb) bt full
> > #0  pattern_exec_match (head=head@entry=0x55e4dd275478,
> > smp=smp@entry=0x7fbf9ef650c0,
> > fill=fill@entry=0) at src/pattern.c:2541
> >         __pl_l = <optimized out>
> >         __pl_r = <optimized out>
> >         list = 0x0
> >         pat = <optimized out>
> 
> This is very strange. The "list" field is null for the expression. That
> doesn't make much sense in a linked list. This makes me suspect that the
> previous element was added then freed without being unlinked and was then
> reused and zeroed.
> 
> I wanted to issue dev5 right now but I'll first try to figure if this is
> reproducible and if so, how.

I obviously can't reproduce it and the only line in your config making
use of L4 rules is perfectly fine and straightforward.

Thus I'm having two questions:
  - is it the new or the old process that occasionally crashes on reload ?
    If it's the new one, the service is down. If it's the old one, the
    service continues and you only know about it from your logs.

  - do you have anything that tries to update the "rate_whitelist" ACL
    over the stats socket ? We could for example imagine that you're
    maintaining a whitelist in a separate file that you're uploading
    upon reloads.

Thanks,
Willy

Reply via email to