sorry, Rivet_InitCore is called from Rivet_PerInterpInit which in
turn is called from any bridge. But the question is still do you have
other errors when you start up the server?
-- Massimo
------------------------------------------------------------------------
*Da:* Massimo MANGHI <massimo.man...@unipr.it>
*Inviato:* martedì 23 gennaio 2018 18:13
*A:* rivet-dev@tcl.apache.org; petas...@yahoo.gr
*Oggetto:* Re: Rivet 3.0.0: too many connections from mysql...
no, the error is quite different ( command ::rivet::apache_log_error
not found) and it's generated from within the worker bridge (without
a working bridge no Tcl stuff can be evaluated). Do you have more
errors *before" this one? The call to Rivet_InitCore should set up
the whole command set and it's compiled into mod_rivet.so
-- Massimo
------------------------------------------------------------------------
*Da:* Georgios Petasis <petas...@yahoo.gr>
*Inviato:* martedì 23 gennaio 2018 17:53
*A:* Massimo MANGHI; rivet-dev@tcl.apache.org
*Oggetto:* Re: Rivet 3.0.0: too many connections from mysql...
Στις 23/1/2018 18:32, ο Massimo Manghi έγραψε:
>
>
> On 01/23/2018 04:27 PM, Georgios Petasis wrote:
>> Ok, I have changed MPM back to prefork, and I have changed my apache
>> configuration to:
>>
>> <IfModule mpm_prefork_module>
>> LoadModule rivet_module modules/mod_rivet.so
>> RivetServerConf MpmBridge prefork
>> </IfModule>
>> <IfModule mpm_worker_module>
>> LoadModule rivet_module modules/mod_rivet.so
>> RivetServerConf MpmBridge worker
>> </IfModule>
>> <IfModule mpm_event_module>
>> Error "mod_rivet does not support the event mpm."
>> </IfModule>
>>
>> And I think I am back to normal. And next time the OS changes the
>> MPM, I will get at least an error while loading apache...
>>
>> Best regards,
>> George
>>
>
>
> sorry, I forgot that you have established that tdbc and threads don't
> get very well together, so you can't safely test your application with
> the worker MPM neither, can you?
>
> In a previous message you said that what you observe is a frequent
> call to the global_init_script (called by Rivet_VirtualHostsInterps).
> This script is evaluated only when threads are started. This happens
> only during the child initialization phase. With the prefork bridge
> the ChildInit callback itself calls Rivet_VirtualHostsInterps. The
> worker bridge calls it from each worker thread, only once in the
> thread lifetime. So I think it's strange, if crashes don't occur, that
> this code in called so frequently. Do you have clues in the error log?
>
> Unfortunately the documentation is shy of providing implementation
> details of the event bridge, but it's stated that as a MPM is based on
> the worker MPM having as main difference the way connections are
handled.
>
> -- Massimo
>
>
I have tried to enable rivet under worker mpm, but I am getting an error:
[:error] [pid 5963:tid 140477525366528] (20014)Internal error (specific
information not available): mod_rivet: Error running GlobalInitScript
'set ::PaloServices 0; source -encoding utf-8
/var/www/rivet/server/server_init.tcl': invalid command name
"::rivet::apache_log_error"
while executing\n"::rivet::apache_log_error warning "Server Init
loaded under PID [pid]""
(file "/var/www/rivet/server/server_init.tcl" line 34)\n invoked
from within\n"source -encoding utf-8
/var/www/rivet/server/server_init.tcl"
So, something is wrong. Rivet did not find its worker mpm library? It is
in the same directory as worker:
root@fedser petasis]# ls /usr/lib64/rivet3.0/site-packages/mod_rivet/mpm/
rivet_lazy_mpm.so rivet_prefork_mpm.so rivet_worker_mpm.so
George