Rivet 3.2.0 rc1 is available at 
http://www.rivetweb.org/~manghi/rivet/rivet-3.2.0rc1.tar.gz

Rivet 3.2.0 comes with a few new features and several internal modifications 
that are supposed to be transparent.

 -- Internals

* The relevant improvement with respect to 3.1 is the change in the thread 
policy in the default response to the exit command. It's stressed in several 
points of the manual that 'exit' (shadowed by ::rivet::exit) is not a command 
to be used in regular web development, but the exit command could be nested in 
third party software and it's part of the Tcl language in the first place, so 
it demands meaning.

With the worker bridge 'exit' now by default terminates a single thread. It has 
been noticed that some extensions don't behave well when Tcl_InterpDelete is 
called, but it seems a problem pertaining specific extension classes or 
specific single extensions, so there is no point in having a more flexible 
embedding of Tcl for fear of stumbling in one of them.

Setting

RivetServerConf SingleThreadExit Off

in the configuration restores the old policy of demading all threads in a child 
process to exit and then calling Tcl_Exit.

The prefork bridge is unaffected.

 * Configuration parameters that are actually and inherently global only have 
been moved to the module globals structure, reliving the Apache configuration 
callbacks of the duty of creating and copying these parameters on the 
rivet_server_rec structures

 -- New command thread_id

 * The new ::rivet::thread_id command has been introduced. ::rivet::thread_id 
returns an hex id printed in the very same format used by ::thread::id (package 
Thread). If you need this info for debugging or logging you don't need to 
depend on package Thread. Furthermore [::rivet::thread_id -decimal] returns an 
id in decimal form so that can be matched with the thread data in the apache 
logs

 -- Bugs

 * The ::rivet::upload command argument checking has been rewritten in order to 
have a terse code for handling the several sub-command/argument combinations 
and also with the purpose of fixing a bug that caused server crashes

 -- Test utility

 * The server utility now handles in the arguments also the supplementary 
switches -mpm and -bridge

  + The first enables switching to a selected MPM
  + The second selects a bridge different from the default. The only cases when 
the use of both of them is meaningful is to test the worker or lazy bridge with 
the prefork MPM or the lazy bridge with the worker MPM

e.g.:  ./runtests.tcl <path-to-httpd> -mpm worker

 -- Massimo

Firma il tuo 5 per mille all'Università di Parma e aiuta così i nostri studenti 
che vogliono realizzare un'esperienza di studio all'estero - Indica 00308780345 
nella tua denuncia dei redditi.

Reply via email to