tomcat-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Glenn Nielsen <gl...@mail.more.net>
Subject Re: cvs commit: jakarta-tomcat-4.0/catalina/src/share/org/apache/catalina/core StandardContext.java
Date Thu, 29 Aug 2002 12:17:15 GMT
Remy Maucherat wrote:
> Glenn Nielsen wrote:
> 
>> Remy Maucherat wrote:
>>
>>> Glenn Nielsen wrote:
>>>
>>>> Capturing of stdout/stderr has been enabled in Tomcat 4.1 for 2-3 
>>>> months now.
>>>
>>>
>>>
>>>
>>> I don't think it was, as RequestBase is deprecated, and is not used 
>>> anymore (except in the old connectors).
>>>
>>>> What I committed was a bug fix.  If you revert it, capturing 
>>>> stderr/stdout code
>>>> will still exist, you would just put back in place a memory leak.
>>>
>>>
>>>
>>>
>>> Ok.
>>>
>>>> There is another place where you will need to implement your 
>>>> SwallowOutput flag,
>>>> in StandardWrapper.java.  It captures output from a load on startup 
>>>> servlet.
>>>
>>>
>>>
>>>
>>> I don't have many problems with capturing during servlet init. It 
>>> makes more sense to me to capture that data (no rational explanation, 
>>> just a feeling).
>>> It's not done during shutdown, BTW.
>>>
>>
>> I can add that. :-)
>>
>>
>>> I can also make that optional using the same flag.
>>>
>>>> The thread sync issue is a good point, but this can be improved by 
>>>> changing
>>>> the SystemLogHandler to use Thread Local variables.
>>>
>>>
>>>
>>>
>>> Thread local is quite slow, from what I saw with OptimizeIt, so I 
>>> don't want to use it.
>>>
>>
>>  From reading the section on Thread Local Performance here:
>>
>> http://www-106.ibm.com/developerworks/java/library/j-threads3.html#h15292
>>
>> Thread local performance differs based on the JVM.
>>
>> 1.2 -> poor
>> 1.3 -> better than normal sync _if_ you have alot of thread contention.
>>        In production where performance is an issue Tomcat can spawn alot
>>        of threads, so Thread Local could be of benefit.
>> 1.4 -> much faster than normal sync
>>
>> Based on this, for the long run, I think its better to switch to 
>> Thread Local.
> 
> 
> Thanks for the information :)
> 
>> In the long run it may be better to add support for CaptureLog to the 
>> base class
>> for a Processor so that the thread sync issues can be avoided altogether.
> 
> 
> So I'll add support for log capture on shutdown (I think it's as useful 
> to have it as on startup). My personal preference is to leave the 
> capture switched off by default for the critical path, as it would 
> confuse developers (IMO).
> 

Thanks

The number of people using Tomcat for development is probably much larger than
those using it in production.  So I am removing my previous -1 for the default
setting of swallowOutput.

Glenn


--
To unsubscribe, e-mail:   <mailto:tomcat-dev-unsubscribe@jakarta.apache.org>
For additional commands, e-mail: <mailto:tomcat-dev-help@jakarta.apache.org>


Mime
View raw message