[slime-devel] slime has broken cmucl mp

Madhu enometh at meer.net
Fri Oct 31 01:59:13 UTC 2008


* Helmut Eller <m2d4hhn9lj.fsf at common-lisp.net> :
Wrote on Thu, 30 Oct 2008 20:53:12 +0100:

| SLIME's WAIT-FOR-STREAMS calls SYS:SERVE-EVENT with a timeout of 0.2
| seconds.  That's shorter than LISP::*MAX-EVENT-TO-SEC*--which is 1
| second--and consequently the LISP::*PERIODIC-POLLING-FUNCTION* isn't
| called.

This is the default configuration

|> This hangs until the slime connection exits.
|
| It doesn't hang in the default configuration.

The scenario I outlined above WAS the default configuration. Repeating
the test without a .swank.lisp and calling CMUCL with lisp -noinit 

* SWANK::*COMMUNICATION-STYLE* => :SIGIO

| More precisely, it doesn't hang if I run SLIME with 
| (eq *communication-style* :sigio).  
| It hangs, with the default config, if the SLIME debugger is active.

The scenrario I outlined abiove which illustrates the hanging did not
have a debugger hanging.

| It doesn't hang, even with active debugger, if 
| (eq *communication-style* :spawn).

COMMUNICATION STYLE of SPAWN and SIGIO interfere in various non-trivial
ways with the behaviour of the application especially if it is a
multiprocessing webserver.

| It doesn't hang, even with active debugger, if *max-event-to-sec* is 0
| and *max-event-to-usec* is 1000.

I am sticking to the default configuration for now, to emphasise there
is a problem, and there are issues.

| It doesn't hang, even with active debugger, with
| (eq *communication-style* :sigio) if multiprocessing is
| initialized properly and the idle process runs.  E.g. if you start the
| swank server with:
|
|   (swank::initialize-multiprocessing (lambda () (swank:create-server)))

No, this is a hack in your personal setup.  This precludes various other
ways in which CMUCL can be used, introduces some problems in other
scenarios.

You cannot impose your personal configuration on every application.  The
point I'm making here is slime used to work with a range of application
configurations.

|> This is a serious problem, and exposes many issues with SLIME's design.
|  
| Which issues?

I'm having a hard time getting you to even admit there is a problem.  I
suspect you are either extremely short sighted or are blind to defects.

--
Madhu








More information about the slime-devel mailing list