multiple /tmp/lshttpd/bak_core/core

#1
It seems that OpenLiteSpeed keeps restarting many times. Each time, it creates /tmp/lshttpd/bak_core/core.xxxxx file.
I am using version 1.7.5. The server load is just around 0.6, with 6 cores Xeon(R) Gold 6136. 16GB RAM, with no swap usage. Here is an example. Any idea, please? Thanks.


# gdb /usr/local/lsws/bin/openlitespeed /tmp/lshttpd/bak_core/core.679492
GNU gdb (GDB) Red Hat Enterprise Linux 7.6.1-119.el7
Copyright (C) 2013 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law. Type "show copying"
and "show warranty" for details.
This GDB was configured as "x86_64-redhat-linux-gnu".
For bug reporting instructions, please see:
<http://www.gnu.org/software/gdb/bugs/>...
Reading symbols from /usr/local/lsws/bin/openlitespeed...done.

warning: core file may not match specified executable file.
[New LWP 679492]
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib64/libthread_db.so.1".
Core was generated by `openlitesp'.
Program terminated with signal 6, Aborted.
#0 0x00007f7fdfba0387 in __GI_raise (sig=sig@entry=6) at ../nptl/sysdeps/unix/sysv/linux/raise.c:55
55 return INLINE_SYSCALL (tgkill, 3, pid, selftid, sig);
(gdb) bt
#0 0x00007f7fdfba0387 in __GI_raise (sig=sig@entry=6) at ../nptl/sysdeps/unix/sysv/linux/raise.c:55
#1 0x00007f7fdfba1a78 in __GI_abort () at abort.c:90
#2 0x00007f7fdfb991a6 in __assert_fail_base (fmt=0x7f7fdfcf4ce0 "%s%s%s:%u: %s%sAssertion `%s' failed.\n%n",
assertion=assertion@entry=0x8f0658 "stream->sm_n_buffered + len <= n_allowed", file=file@entry=0x8ef834 "lsquic_stream.c",
line=line@entry=3452, function=function@entry=0x8ef370 <__PRETTY_FUNCTION__.8578> "save_to_buffer") at assert.c:92
#3 0x00007f7fdfb99252 in __GI___assert_fail (assertion=assertion@entry=0x8f0658 "stream->sm_n_buffered + len <= n_allowed",
file=file@entry=0x8ef834 "lsquic_stream.c", line=line@entry=3452,
function=function@entry=0x8ef370 <__PRETTY_FUNCTION__.8578> "save_to_buffer") at assert.c:101
#4 0x00000000005faad8 in save_to_buffer (stream=stream@entry=0x5bcad20, len=1303, reader=<optimized out>, reader=<optimized out>)
at lsquic_stream.c:3452
#5 0x00000000005faf72 in stream_write_to_packets (stream=stream@entry=0x5bcad20, reader=reader@entry=0x7ffc7404f0d0, thresh=<optimized out>,
swo=swo@entry=SWO_BUFFER) at lsquic_stream.c:3298
#6 0x00000000005fd5c7 in stream_write (stream=stream@entry=0x5bcad20, reader=reader@entry=0x7ffc7404f0d0, swo=swo@entry=SWO_BUFFER)
at lsquic_stream.c:3520
#7 0x00000000005fd7cd in lsquic_stream_writev (stream=0x5bcad20, iov=iov@entry=0x7ffc7404f110, iovcnt=iovcnt@entry=1) at lsquic_stream.c:3600
#8 0x00000000005fd95a in lsquic_stream_write (stream=<optimized out>, buf=<optimized out>, len=len@entry=3670) at lsquic_stream.c:3528
#9 0x000000000059e372 in QuicStream::write (this=0x6020bf0, pBuf=<optimized out>, size=3670) at quicstream.cpp:335
#10 0x00000000004f7ad9 in HttpSession::writeRespBodyDirect (this=0x5ab6360,
pBuf=0xda7240 <HttpResourceManager::g_aBuf> "z \375:?\263\064\240D\225\n\031Ԕ\026G]\316\362\036I1\264)+\017\036<x4cŀ\261\363g\244\005\357 \356\323\323W\344J\242\357\270oD\033\235\265\277Q\374\324\f\332\331\006؀|X\277\r\205J\a\321\066%\260\216\357Z\304E\222\254@\244\005\313A\256\376J\275\227\006$\006/\271R{@\356V\342r\313\002J\256\216T\326)w\v7sN\r\362\340\301\203G{\264b\330]\322!rǀ[\373\r\271\060ğ\230\277~\241Z\232X}\246\372C\261/\005,;6|\307\061\245+92\az3\244j7D<~\312>\351wBp\262\246^yq\241\350\257\025\254\204 ,Q\271wR\246\262\375p"..., size=size@entry=3670)
at httpsession.cpp:3279
#11 0x00000000004fa73f in HttpSession::writeRespBodyBlockInternal (this=this@entry=0x5ab6360, pData=pData@entry=0x5ab69f8, pBuf=<optimized out>,
written=3670) at httpsession.cpp:4925
#12 0x00000000004fae0e in HttpSession::sendStaticFileEx (this=this@entry=0x5ab6360, pData=pData@entry=0x5ab69f8) at httpsession.cpp:5099
#13 0x00000000004fb1ff in HttpSession::sendStaticFile (this=this@entry=0x5ab6360, pData=pData@entry=0x5ab69f8) at httpsession.cpp:5145
#14 0x00000000004fb60f in HttpSession::flushBody (this=this@entry=0x5ab6360) at httpsession.cpp:4099
#15 0x00000000004ffdb0 in HttpSession::flush (this=this@entry=0x5ab6360) at httpsession.cpp:4220
#16 0x0000000000500055 in HttpSession::doWrite (this=0x5ab6360) at httpsession.cpp:2831
#17 0x00000000005030e8 in HttpSession::onWriteEx (this=0x5ab6360) at httpsession.cpp:2932
#18 0x000000000059e831 in QuicStream::onWrite (this=0x6020bf0) at quicstream.cpp:415
#19 0x00000000005fce74 in lsquic_stream_dispatch_write_events (stream=stream@entry=0x5bcad20) at lsquic_stream.c:2295
#20 0x00000000005c4baa in process_streams_write_events (conn=conn@entry=0x62ab260, high_prio=high_prio@entry=1) at lsquic_full_conn_ietf.c:4063
#21 0x00000000005c8229 in ietf_full_conn_ci_tick (lconn=0x62ab260, now=8043624753447) at lsquic_full_conn_ietf.c:7746
#22 0x00000000005a5b32 in process_connections (engine=engine@entry=0x16b24c0, now=now@entry=8043624753447,
next_conn=0x5a3e40 <conn_iter_next_tickable>) at lsquic_engine.c:2657
#23 0x00000000005a79e3 in lsquic_engine_process_conns (engine=0x16b24c0) at lsquic_engine.c:1902
#24 0x000000000059dc78 in QuicEngine::maybeProcessConns (this=0x16b0c50) at quicengine.cpp:778
#25 0x000000000059a0a1 in UdpListener::finishReading (this=0x16adfc0, rctx=<optimized out>) at udplistener.cpp:866
#26 0x000000000059b6d9 in UdpListener::onRead (this=0x16adfc0) at udplistener.cpp:1404
---Type <return> to continue, or q <return> to quit---
#27 0x000000000059b8d1 in UdpListener::handleEvents (this=0x16adfc0, event=<optimized out>) at udplistener.cpp:1421
#28 0x000000000055bce9 in epoll::waitAndProcessEvents (this=0x1307a70, iTimeoutMilliSec=<optimized out>) at epoll.cpp:229
#29 0x00000000004d1b42 in EventDispatcher::run (this=this@entry=0x12748c8) at eventdispatcher.cpp:252
#30 0x00000000004aa63e in HttpServerImpl::start (this=0x12748a0) at httpserver.cpp:539
#31 0x00000000004af179 in HttpServer::start (this=<optimized out>) at httpserver.cpp:5045
#32 0x0000000000481df6 in LshttpdMain::main (this=this@entry=0x1274630, argc=argc@entry=1, argv=argv@entry=0x7ffc74058f28)
at lshttpdmain.cpp:1096
#33 0x0000000000481cd2 in main (argc=1, argv=0x7ffc74058f28) at main.cpp:109
(gdb)
 
Last edited:

David

Active Member
#2
This is a know bug of an assert in save_to_buffer(), we have already fixed it in the coming release.
You can use the command to upgrade now.
/usr/local/lsws/admin/misc/lsup.sh -b -e 1.7.6
Thanks
David
 
#4
Besides, is there any way to find out what is "buffering"? Because I only see this on one of my servers. And every time LFD gives out warning, the same core.679492 file. So, I guess the same thing is still in buffering.
 
Top