You are viewing a plain text version of this content. The canonical link for it is here.
Posted to solr-commits@lucene.apache.org by ry...@apache.org on 2007/09/19 21:40:53 UTC

svn commit: r577421 - /lucene/solr/trunk/src/java/org/apache/solr/handler/XmlUpdateRequestHandler.java

Author: ryan
Date: Wed Sep 19 12:40:53 2007
New Revision: 577421

URL: http://svn.apache.org/viewvc?rev=577421&view=rev
Log:
SOLR-360 -- reverting #577405, 
 set factory.setProperty("reuse-instance", Boolean.FALSE); 
works for 1.6.  The BEA parser works for 1.5

Modified:
    lucene/solr/trunk/src/java/org/apache/solr/handler/XmlUpdateRequestHandler.java

Modified: lucene/solr/trunk/src/java/org/apache/solr/handler/XmlUpdateRequestHandler.java
URL: http://svn.apache.org/viewvc/lucene/solr/trunk/src/java/org/apache/solr/handler/XmlUpdateRequestHandler.java?rev=577421&r1=577420&r2=577421&view=diff
==============================================================================
--- lucene/solr/trunk/src/java/org/apache/solr/handler/XmlUpdateRequestHandler.java (original)
+++ lucene/solr/trunk/src/java/org/apache/solr/handler/XmlUpdateRequestHandler.java Wed Sep 19 12:40:53 2007
@@ -73,12 +73,23 @@
   public static final String OVERWRITE_COMMITTED = "overwriteCommitted"; // @Deprecated
   public static final String OVERWRITE_PENDING = "overwritePending";  // @Deprecated
   public static final String ALLOW_DUPS = "allowDups"; 
+
+  XMLInputFactory inputFactory;
   
-  @SuppressWarnings("unchecked")
   @Override
   public void init(NamedList args)
   {
     super.init(args);
+    
+    inputFactory = BaseXMLInputFactory.newInstance();
+    try {
+      inputFactory.setProperty("reuse-instance", Boolean.FALSE);
+    }
+    catch( IllegalArgumentException ex ) {
+      // The java 1.5 com.bea.xml does not support this property, but behaves properly in a
+      // multi-threaded environment.  Ignore the error for 1.5
+      log.info( "Unable to set the 'reuse-instance' property for the input factory: "+inputFactory );
+    }
   }
   
   @Override
@@ -102,7 +113,6 @@
       for( ContentStream stream : req.getContentStreams() ) {
         Reader reader = stream.getReader();
         try {
-          XMLInputFactory inputFactory = BaseXMLInputFactory.newInstance();
           XMLStreamReader parser = inputFactory.createXMLStreamReader(reader);
           this.processUpdate( processor, parser );
         }
@@ -365,7 +375,6 @@
       SolrParams params = new MapSolrParams( new HashMap<String, String>() );
       SolrQueryRequestBase req = new SolrQueryRequestBase( core, params ) {};
       SolrQueryResponse rsp = new SolrQueryResponse(); // ignored
-      XMLInputFactory inputFactory = BaseXMLInputFactory.newInstance();
       XMLStreamReader parser = inputFactory.createXMLStreamReader(input);
       UpdateRequestProcessor processor = processorFactory.getInstance(req, rsp, null);
       this.processUpdate( processor, parser );