ps: a temporary workaround waiting for the fix, is to add the following line at the start of the first loaded lua script.
core.Alert = function(msg) print(msg) end Thierry On Tue, 29 Sep 2015 07:37:12 -0400 Michael Ezzell <[email protected]> wrote: > Although I am seeing this in Lua, it does not appear (to me) to a the fault > in the Lua code... recent changes in __send_log() in log.c appear to assume > p is never null (there's a test for this condition earlier, then p is > referenced later), and that is not valid behavior in this case, because > there is no proxy associated: > > (gdb) run > Starting program: /home/ubuntu/haproxy-1.6-dev6/haproxy -f ./haproxy.cfg > > Program received signal SIGSEGV, Segmentation fault. > __send_log (p=p@entry=0x0, level=level@entry=1, message=<optimized out>, > size=10, > sd=sd@entry=0x711160 <default_rfc5424_sd_log_format> "- ", > sd_size=sd_size@entry=2) at src/log.c:1025 > 1025 if (unlikely(htp->len >= maxlen)) { > (gdb) print htp->len > Cannot access memory at address 0xda4 > (gdb) print htp > $1 = (struct chunk *) 0xd98 > (gdb) print &p->log_htp > $2 = (struct chunk *) 0xd98 > (gdb) print p > $3 = (struct proxy *) 0x0 > (gdb) > > This minimal test case can be replicated with the following two files: > > $ cat haproxy.cfg > > global > log 127.0.0.1 local0 > lua-load crash.lua > user haproxy > group nogroup > daemon > > defaults > log global > > $ cat crash.lua > > core.Alert("hello.lua");

