[ http://issues.apache.org/jira/browse/LUCENE-670?page=all ]
Hoss Man resolved LUCENE-670.
-----------------------------
Resolution: Duplicate
> improper isolation (overuse of system properties) allows Lucene apps to
> clobber each other
> ------------------------------------------------------------------------------------------
>
> Key: LUCENE-670
> URL: http://issues.apache.org/jira/browse/LUCENE-670
> Project: Lucene - Java
> Issue Type: Bug
> Components: Index, Store
> Affects Versions: 2.0.0, 1.9
> Environment: Tomcat
> Reporter: Ken Geis
> Priority: Critical
>
> As nicely stated by the Javadoc for
> org.apache.commons.discovery.tools.ManagedProperties, "System properties are
> global in nature, so using them easily violates sound architectural and
> design principles for maintaining separation between components and runtime
> environments." Lucene's use of system properties makes it so that one web
> application that uses Lucene can break another web application that uses
> Lucene.
> Both org.apache.lucene.index.SegmentReader and
> org.apache.lucene.store.FSDirectory use system properties to locate an
> implementation class. Because of this, two applications can step on each
> others' toes.
> So, I have two webapps running in Tomcat. One uses the Compass Framework
> which sets the SegmentReader implementation class to
> org.apache.lucene.index.CompassSegmentReader. My other webapp tries to
> initialize SegmentReader in a different classloader, and it fails with an
> ExceptionInInitializerError because it can't load that class. If I get
> lucky, the non-Compass webapp loads first and things run smoothly.
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
http://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]