Additionally, I get the same exception even if I declare the <mergePolicy> in the <mainIndex>.

  <mainIndex>
<mergePolicy class="org.apache.lucene.index.LogByteSizeMergePolicy">
      <boolean name="calibrateSizeByDeletes">true</boolean>
    </mergePolicy>
  </mainIndex>

Thanks,
-Jibo


On Sep 27, 2009, at 2:03 PM, Jibo John wrote:

Thanks for this. I've updated trunk/, rebuilt solr.war, however, running into another issue.

Sep 27, 2009 1:55:44 PM org.apache.solr.common.SolrException log
SEVERE: java.lang.IllegalArgumentException
        at sun.reflect.GeneratedMethodAccessor27.invoke(Unknown Source)
at sun .reflect .DelegatingMethodAccessorImpl .invoke(DelegatingMethodAccessorImpl.java:25)
        at java.lang.reflect.Method.invoke(Method.java:592)
at org .apache.solr.util.SolrPluginUtils.invokeSetters(SolrPluginUtils.java: 989) at org.apache.solr.update.SolrIndexWriter.init(SolrIndexWriter.java: 87) at org.apache.solr.update.SolrIndexWriter.<init>(SolrIndexWriter.java: 185) at org .apache .solr.update.UpdateHandler.createMainIndexWriter(UpdateHandler.java: 98) at org .apache .solr .update.DirectUpdateHandler2.openWriter(DirectUpdateHandler2.java:173) at org .apache .solr.update.DirectUpdateHandler2.addDoc(DirectUpdateHandler2.java: 220) at org .apache .solr .update .processor .RunUpdateProcessor.processAdd(RunUpdateProcessorFactory.java:61) at org.apache.solr.handler.XMLLoader.processUpdate(XMLLoader.java: 140)
        at org.apache.solr.handler.XMLLoader.load(XMLLoader.java:69)


Also, the log file has a bunch of these lines:

Sep 27, 2009 1:55:56 PM org.apache.solr.update.SolrIndexWriter finalize SEVERE: SolrIndexWriter was not closed prior to finalize(), indicates a bug -- POSSIBLE RESOURCE LEAK!!!


Here is the snippet from my solrconfig.xml


 <indexDefaults>
<!-- Values here affect all index writers and act as a default unless overridden. -->
   <useCompoundFile>false</useCompoundFile>

   <mergeFactor>6</mergeFactor>
   <ramBufferSizeMB>500</ramBufferSizeMB>
   <maxFieldLength>10000</maxFieldLength>
   <writeLockTimeout>1000</writeLockTimeout>
   <commitLockTimeout>10000</commitLockTimeout>
<mergePolicy class="org.apache.lucene.index.LogByteSizeMergePolicy">
     <boolean name="calibrateSizeByDeletes">true</boolean>
   </mergePolicy>
<mergeScheduler>org.apache.lucene.index.ConcurrentMergeScheduler</ mergeScheduler>
   <lockType>single</lockType>
 </indexDefaults>




Thanks,
-Jibo



On Sep 27, 2009, at 1:43 PM, Shalin Shekhar Mangar wrote:

On Mon, Sep 28, 2009 at 1:18 AM, Shalin Shekhar Mangar <
shalinman...@gmail.com> wrote:

On Sat, Sep 26, 2009 at 7:13 AM, Jibo John <jiboj...@mac.com> wrote:

Hello,

It looks like solr is not allowing me to change the default
MergePolicy/Scheduler classes.

Even if I change the default MergePolicy/ Scheduler(LogByteSizeMErgePolicy and ConcurrentMergeScheduler) defined in solrconfig.xml to a different one (LogDocMergePolicy and SerialMergeScheduler), my profiler shows the default
classes are still being loaded.

Also, if I use the default LogByteSizeMergePolicy, I can't seem to
override the 'calibrateSizeByDeletes' to 'true' value using solrconfig using
the new syntax that was introduced this week (SOLR-1447).

I'm using the version checked out from trunk yesterday.

Any pointers will be helpful.


Specifying mergePolicy and mergeScheduler in <indexDefaults> does not work in trunk. If you specify in the <mainIndex> section, it will work. I'll give
a patch with a fix.


This is fixed in trunk now. Thanks!

--
Regards,
Shalin Shekhar Mangar.


Reply via email to