roxen.lists.roxen.general

Subject Author Date
cannot call functions in destructed objects? Eiichiro ITANI <itani[at]neowing[dot]co[dot]jp> 15-10-2005
Hello.

I'm running rather heavy loaded server with Roxen/3.4, 4.0, on
Debian/GNU Linux (sarge, kernel 2.4.27, glibc2.3.2). Roxen is running
behind reverse proxy.

I can't see what makes this happen, but sometimes(heavy traffic?) Roxen
seems to enter infinite loop, ABS restart Roxen, infinite loop again,
and ABS restart... again and again. --with-threads/--without-threads
option make no difference.

I want to know how to stop it, what causes this happen, or how to
debug running Roxen.  Once loop occur, I can't access to
administration interface(browser wait for server reply, until server
restart), attaching pike with gdb immediatly stop with SIGPIPE again
and again.

Any suggestion?

Below is Roxen debug log, happened today.

--
  Eiichiro ITANI  <<itani[at]neowing.co.jp>>


          : Server start command:
          :     /usr/local/roxen/roxen4.0/server-4.0.325/bin/pike
          :     -DRAM_CACHE
          :     -M/usr/local/roxen/roxen4.0/server-4.0.325/etc/modules
          :     -M/usr/local/roxen/roxen4.0/local/pike_modules
          :     -I/usr/local/roxen/roxen4.0/server-4.0.325/etc/include
          :     -I/usr/local/roxen/roxen4.0/server-4.0.325/base_server
          :     -P/usr/local/roxen/roxen4.0/server-4.0.325
          :     base_server/roxenloader.pike
          :     --config-dir=/etc/roxen4.0
          :     --pid-file=/etc/roxen4.0/_roxen_pid
          :     --remove-dumped
15:28:05  : -----------------------------------------------------------------
 0m 0.0s  : Pike version:      Pike v7.4 release 117
          : Product version:   Roxen WebServer 4.0.325-release4
          : Operating system:  Linux 2.4.27-2-686-smp (i686)
          : Starting MySQL ... Was running 4.0.24_Debian-10 [8.7ms]
          : Removing precompiled files
15:28:05  : Loading Pike modules ... Done [394.6ms]
 0m 1.2s  : Loading Roxen ... 
          : Notice: Dumping failed for server-4.0.325/base_server/roxen.pike
(not a bug)
          : Notice: Dumping failed for
server-4.0.325/base_server/read_config.pike (not a bug)
          : Done [1475.6ms]
          : Loading font handlers ...
15:28:08  :     Compatibility bitmap fonts (bitmap)
 0m 2.9s  :     Image TAR-file fonts (bitmap)
          :     FreeType fonts (scalable)
          :     Compact image file font (bitmap)
          :     Builtin fonts (scalable)
          :     Image directory fonts (bitmap)
15:28:08  : Done [131.4ms]
 0m 2.9s  : Adding languages ... Done [14.91ms]
          : Initiating argument cache ... Done [4.83ms]
          : Protocol handlers ... ftp http tetris ftps https hilfe Done [0.4ms]
          : Searching for pike-modules directories ... Done [3ms]
          : 
15:28:08  : Enabling the configuration neo ...
 0m 3.0s  :  Registered http://192.168.10.85:80/ for neo
          : Enabled neo in 56.5ms
          : 
          : Enabling the configuration Administration Interface ...
          :  Registered http://*:26044/ for Administration Interface
15:28:08  : Enabled Administration Interface in 11.5ms
 0m 3.0s  : 
          : Enabling the configuration neo-ssl ...
          :  Registered http://192.168.10.85:443/ for neo-ssl
          : Enabled neo-ssl in 23.0ms
          : Setting uid to 33 (www-data) and gid to 30000 (neowing).
15:28:08  : Anti-Block System Enabled.
 0m 3.1s  : -- Total boot time 3.1 seconds ---------------------------
          : 
          : ** 2005-10-15 15:28   pid: 12434   ppid: 7952   euid: www-data  
uid: root
          : 
          : 
15:28:09  : Enabling all modules for neo... 
 0m 4.7s  : All modules for neo enabled in 1.3 seconds
          : 
          : 
          : Enabling all modules for neo-ssl... 
          : All modules for neo-ssl enabled in 0.1 seconds

<...snip...>

Cannot call functions in destructed objects.
Unknown program: destructed object->function(0)
_static_modules.Builtin()->Backend:
_static_modules.Builtin()->__backend->`()(3600.000000)
Cannot call functions in destructed objects.
Unknown program: destructed object->function(0)
_static_modules.Builtin()->Backend:
_static_modules.Builtin()->__backend->`()(3600.000000)
Cannot call functions in destructed objects.
Unknown program: destructed object->function(0)
_static_modules.Builtin()->Backend:
_static_modules.Builtin()->__backend->`()(3600.000000)
Cannot call functions in destructed objects.
Unknown program: destructed object->function(0)
_static_modules.Builtin()->Backend:
_static_modules.Builtin()->__backend->`()(3600.000000)
Backend is not thread safe yet.
_static_modules.Builtin()->Backend:
_static_modules.Builtin()->__backend->`()(3600.000000)
Backend is not thread safe yet.
_static_modules.Builtin()->Backend:
_static_modules.Builtin()->__backend->`()(3600.000000)
Backend is not thread safe yet.
_static_modules.Builtin()->Backend:
_static_modules.Builtin()->__backend->`()(3600.000000)

<thousands of 'Backend is...' lines>

Backend is not thread safe yet.
_static_modules.Builtin()->Backend:
_static_modules.Builtin()->__backend->`()(3600.000000)
Backend is not thread safe yet.
_static_modules.Builtin()->Backend:
_static_modules.Builtin()->__backend->`()(3600.000000)
Backend is not thread safe yet.
_static_modules.Builtin()->Backend:
_static_modules.Builtin()->__backend->`()(3600.000000)
Backend is not thread safe yet.
_static_modules.Builtin()->Backend:
_static_modules.Builtin()->__backend->`()(3600.000000)
Backend is not thread safe yet.
_static_modules.Builtin()->Backend:
_static_modules.Builtin()->__backend->`()(3600.000000)
Backend is not thread safe yet.
_static_modules.Builtin()->Backend:
_static_modules.Builtin()->__backend->`()(3600.000000)
Backend is not thread safe yet.
_static_modules.Builtin()->Backend:
_static_modules.Builtin()->__backend->`()(3600.000000)
13m 7.7s  : **** Sat Oct 15 15:41:13 2005: ABS engaged!
          : Waited more than 1 minute(s).
          : Trying to dump backlog: 
          : ### Describing all Pike threads:
          : 
15:41:13  : ### Thread 16384:
13m 7.7s  : _static_modules.Builtin()->thread_id:
Thread.Thread(16384)->backtrace()
          : base_server/roxen.pike (version 1.888):4535:
roxen->describe_all_threads()
          : base_server/roxen.pike (version 1.888):2485:
roxen->__lambda_66113_1_line_2472(14)
          : _static_modules.Builtin()->backtrace_frame: backtrace_frame(Unknown
file, `()(), Args: 1)->`[](3,2147483647)
          : /usr/lib/pike/7.4.117/lib/master.pike (version 1.258):3098:
master()->describe_backtrace(({backtrace_frame(/usr/lib/pike/7.4.117/lib/master.pike
(version 1.258):2336, _main(), Args: 2),backtrace_frame(Unknown file, `()(), Arg
s: 1)}),999999)
15:41:13  : base_server/roxenloader.pike (version 1.359):153:
/usr/local/roxen/roxen4.0/server-4.0.325/base_server/roxenloader()->describe_backtrace(({"Backend
is not thread safe yet.\n",({backtrace_frame(/usr/lib/pike/7.4.117/lib/master
pike (version 1.258):2336, _main(), Args: 2),backtrace_frame(Unknown file,
`()(), Args: 1)})}),999999)
13m 7.7s  : etc/roxen_master.pike (version 1.140):970:
master()->describe_backtrace(({"Backend is not thread safe
yet.\n",({backtrace_frame(/usr/lib/pike/7.4.117/lib/master.pike (version
1.258):2336, _main(), Args: 2),backtrace_frame(Unk
nown file, `()(), Args: 1)})}),0)
          : /usr/lib/pike/7.4.117/lib/master.pike (version 1.258):894:
master()->handle_error(({"Backend is not thread safe
yet.\n",({backtrace_frame(/usr/lib/pike/7.4.117/lib/master.pike (version
1.258):2336, _main(), Args: 2),backtrace
_frame(Unknown file, `()(), Args: 1)})}))
          : etc/roxen_master.pike (version 1.140):863:
master()->handle_error(({"Backend is not thread safe
yet.\n",({backtrace_frame(/usr/lib/pike/7.4.117/lib/master.pike (version
1.258):2336, _main(), Args: 2),backtrace_frame(Unknown f
ile, `()(), Args: 1)})}))
          : 
          : ### Total 1 Pike threads
15:41:13  : **** Sat Oct 15 15:41:13 2005
13m 7.7s  : : ABS exiting roxen!
          :