From: Gustaf N. <ne...@wu...> - 2021-11-07 10:36:13
|
There are many possible reasons for the crash, i just mentioned one possibility which i have seen in the past. You have to check with gdb as mentioned below to find the reason in your case. If it is indeed the select() problem, then it might be due to a bug in your Tcl code (e.g. missing close) or not (really requiring > 1024 open file descriptors). -g On 06.11.21 19:43, Maksym Zinchenko wrote: > Thank you very much for explaining Gustaf, at least I know now that > somewhere in my Tcl code something is wrong. I'm using only 2 C > modules/packages. > > On Fri, Nov 5, 2021 at 7:37 AM Gustaf Neumann <ne...@wu...> wrote: > > Dear Maksym, > > These kind of errors should never happen, but when this happen, > this can > come from NaviServer or Tcl or some C modules/package loaded. > > The last time i saw this kind of crash in a NaviServer > environment, it > was triggered from Tcl, where a select() was tried in a situation > where > more than 1024 file descriptors were open (stay away from async > Tcl I/O > operations and use NaviServer built-in features ... e.g. ns_http > instead > of tcllib http). The number of open file descriptors of NaviServer > can > be monitored e.g. by the munin-plugins [2,3]. > > To debug this situation, > - make sure to compile Tcl and NaviServer with debugging symbols > (i.e. > with compiler flag "-g" [1]), > - make sure, core dumps are enabled, and when you have a core, > - use "gdb /usr/local/ns/bin/nsd YOURCORE" to see exactly, where this > happened. > > all the best > > -g > > [1] https://openacs.org/forums/message-view?message_id=5537675 > [2] https://github.com/gustafn/munin-plugins-ns > [3] > https://openacs.org/munin/localdomain/localhost.localdomain/naviserver_openacs_lsof.html > > On 04.11.21 21:17, Maksym Zinchenko wrote: > > Hi every now and then my server crashes with the last message in > the > > log file *** Buffer overflow detected *** I would really > appreciate if > > someone can point me in the right direction of debugging and figure > > out what's going on. > > Thank you > > Maksym Zinchenko > |