You are viewing a plain text version of this content. The canonical link for it is here.
Posted to rivet-dev@tcl.apache.org by Harald Oehlmann <ha...@elmicron.de> on 2015/07/15 16:29:57 UTC
Re: [TCLCORE] CFV: TIP #435
Am 15.07.2015 um 16:10 schrieb Gustaf Neumann:
> Am 15.07.15 um 05:25 schrieb Harald Oehlmann:
>>
>> If you look to rivet file src/apache2/mod_rivet.c, line 1180 :
>>
>> ...
>>
>> #if !defined(HAVE_PTHREAD_ATFORK)
>> Tcl_InitNotifier();
>> #endif
>>
>> We may just remove the #if - a double call to Tcl_InitNotifier() does
>> not harm.
>>
>
> I have seen this in the rive code. But since is normally deactivated, i got
> the impression that it has some disadvantanges over the modification in
> the tcl core.
>
> My speculation was that this did not work correctly (why else modify
> tcl-core?). Since the callback is registered with APR_HOOK_LAST
> (where apache recommends APR_HOOK_MIDDLE for the
> default behavior), i made the suggestion that another "early"
> callback might help with the registration at APR_HOOK_FIRST.
No, it worked perfectly, if I remember right.
The reason for the atfork handler was to give the found knowledge back
to TCL so other programs do not need it and limitted support for fork is
supplied out of the box.
> Do you have a setup for testing rivet with these modifications?
Maybee Massimo jumps in to propose a test environment. I tested all this
on CentOS 6 which had no atfork, so the #ifdef was in place.
I never tested the atfork stuff.
The test is to check if an after script runs in a rivet interpreter.
after idle "set a 1"
vwait a
would wait forever, if this did not work.
I am currently not any more working on that.
Basically this bug had killed my project two years ago...
So I would be glad if someone else could test.
Could you be more clear on "all these modifications" ?
- Which tcl to test ?
- must Tcl_InitNotifier() be called after the fork ?
I cross-post on Rivet-Devel
Thank you,
Harald
---------------------------------------------------------------------
To unsubscribe, e-mail: rivet-dev-unsubscribe@tcl.apache.org
For additional commands, e-mail: rivet-dev-help@tcl.apache.org