List Info

Thread: Created: (LUCENE-670) improper isolation (overuse of system properties) allows Lucene apps to clobbe




Created: (LUCENE-670) improper isolation (overuse of system properties) allows Lucene apps to clobbe
user name
2006-09-08 00:32:23
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.atl
assian.com/software/jira

        

------------------------------------------------------------
---------
To unsubscribe, e-mail: java-dev-unsubscribelucene.apache.org
For additional commands, e-mail: java-dev-helplucene.apache.org

Commented: (LUCENE-670) improper isolation (overuse of system properties) allows Lucene apps to clob
user name
2006-09-08 17:24:23
    [ http://issues.apache.org/jira/brows
e/LUCENE-670?page=comments#action_12433447 ] 
            
Ken Geis commented on LUCENE-670:
---------------------------------

I guess I didn't search well enough for a previously
submitted bug.

LUCENE-636 addresses my concerns and the patch is coded very
close to how I had it in my head.

Please mark this as a duplicate of LUCENE-636.  (It doesn't
appear that I have permission to do so.)

> 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.atl
assian.com/software/jira

        

------------------------------------------------------------
---------
To unsubscribe, e-mail: java-dev-unsubscribelucene.apache.org
For additional commands, e-mail: java-dev-helplucene.apache.org

Resolved: (LUCENE-670) improper isolation (overuse of system properties) allows Lucene apps to clobb
user name
2006-09-08 17:32:26
     [ 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.atl
assian.com/software/jira

        

------------------------------------------------------------
---------
To unsubscribe, e-mail: java-dev-unsubscribelucene.apache.org
For additional commands, e-mail: java-dev-helplucene.apache.org

Closed: (LUCENE-670) improper isolation (overuse of system properties) allows Lucene apps to clobber
user name
2006-09-18 21:43:23
     [ http://issues.apache.org/jira/browse/LUCENE-670?page=all
 ]

Otis Gospodnetic closed LUCENE-670.
-----------------------------------


> 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: 1.9, 2.0.0
>         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.atl
assian.com/software/jira

        

------------------------------------------------------------
---------
To unsubscribe, e-mail: java-dev-unsubscribelucene.apache.org
For additional commands, e-mail: java-dev-helplucene.apache.org

[1-4]

about | contact  Other archives ( Real Estate discussion Medical topics )