Hi,

I'm sorry for repeating the subject if it was discussed already, but I couldn't 
find an archive search. 

This email is regarding numerous problems with JCL in multi-class-loader 
environments. This seems to be a rather critical issue. I just got a chance to 
take a look into changes for JCL 1.0.5 currently in the alpha stage. 
Unfortunetely, these changes resolve a very small percent of all the problems 
associated with TCCL. If I understand correctly changes mostly targeted to make 
sure ClassLoaders are released, thus eliminating memory leaks related to hot 
deployment. Other issues (arguably more critical) remain unresolved. 

One of the issues I often run into is confusion b/w web application and shared 
loggers in the servlet container environment (Tomcat). Here's the small 
description of the situation:
There're two applications: app1 and app2. Both define logging configuration for 
outputing into different files (logfile1 and logfile2). These two applications 
use shared library (shared.jar). Classes in app1, app2 and shared.jar use JCL 
for logging. In this case the sequence is the following:
1) app1 is invoked first (for instance ServletInApp1)
2) code in app1 invokes class/method in the shared library (for instance 
SharedUtils.getInfo())
3) Log in the shared class (SharedUtils) is initialized using LogFactory for 
app1
4) At this point, any logs produced by SharedUtils will got to logfile1
5) app2 is invoked
6) code in app2 invokes the same SharedUtils
7) all logs in the SharedUtils still go to logfile1

Such a behaviour is rather confusing and basically jeopardizes any advantages 
of configuring LogFactory-s for each TCCL. This also brings system into the 
uncertain state. If app1 is redeployed, it's not clear what will happen to the 
SharedUtils.log, especially if LogFactory itself will be weak-referenced (as in 
1.0.5). 

These all problems could be resolved by simply disabling use of TCCL in the 
LogFactory. I entered this request in the bug database while ago: 
http://issues.apache.org/bugzilla/show_bug.cgi?id=36927

This problem seems to be rather critical to me, so I was wondering if you have 
other plans to resolve these problems, or if you believe the solution described 
in the bug report is appropriate. If you're persuing other ways to resolve the 
issue, could you please point me to the documents or bug reports describing 
them? In either case, do you have information on when the fix could be released?

thanks,
Dimitry E Voytenko



  

- ABOUT REVERE -

Revere provides finance and business professionals with superior data and 
analytics on companies traded publicly in the U.S. Our approach is based on 
precise classification and identification of key business relationships. The 
Revere Complete product suite combines the Revere Research analysis platform 
and the Revere RealTime market data application. Revere Complete integrates 
comprehensive financial and market information - real-time quotes, sector and 
option analytics, charts, news, fundamental data, and sophisticated screening - 
with unique content derived from Revere's own independent research: 

- The Revere Hierarchy, a patented classification system that provides 
unmatched detail in specifying a company's business activities and identifying 
exact competitors

- Revere Relationships, a database mapping a company to its key competitors, 
customers, suppliers, and strategic partners
 
www.reveredata.com

Reply via email to