| From | Sent On | Attachments |
|---|---|---|
| NarasimhaRaju | Jun 17, 2010 4:38 am | |
| Chris Hostetter | Jul 20, 2010 11:01 am |
| Subject: | RejectedExecutionException when shutttingdown corecontainer | |
|---|---|---|
| From: | NarasimhaRaju (raju...@yahoo.com) | |
| Date: | Jun 17, 2010 4:38:19 am | |
| List: | org.apache.lucene.solr-user | |
Hi,
I am using solr 1.3 and when indexing i am getting RejectedExecutionException
after processing the last batch of update records from the database.
happening when coreContainer.shutdown() is called after processing the last
record.
i have autocommits enabled based on maxTime which is 10 minutes.
from the exception below i see it's happening from commitTracker of
DefaultUpdateHandler2.
looking at the SolrCore.close method searchExecutor.shutdown() is called before
updateHandler.close()
I still don't understand why updateHandler is called after searchExcecutor when
updateHandler has the possibility of adding/submitting to searchExecutor.
is this a bug or am i doing something wrong with my autocommit.
SEVERE: java.util.concurrent.RejectedExecutionException
at
java.util.concurrent.ThreadPoolExecutor$AbortPolicy.rejectedExecution(ThreadPoolExecutor.java:1760)
at
java.util.concurrent.ThreadPoolExecutor.reject(ThreadPoolExecutor.java:767)
at
java.util.concurrent.ThreadPoolExecutor.execute(ThreadPoolExecutor.java:658)
at
java.util.concurrent.AbstractExecutorService.submit(AbstractExecutorService.java:92)
at
java.util.concurrent.Executors$DelegatedExecutorService.submit(Executors.java:603)
at org.apache.solr.core.SolrCore.getSearcher(SolrCore.java:1029)
at
org.apache.solr.update.DirectUpdateHandler2.commit(DirectUpdateHandler2.java:368)
at
org.apache.solr.update.DirectUpdateHandler2$CommitTracker.run(DirectUpdateHandler2.java:515)
at
java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:441)
at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303)
at java.util.concurrent.FutureTask.run(FutureTask.java:138)
at
java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$301(ScheduledThreadPoolExecutor.java:98)
at
java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:207)
at
java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
at
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
Regards, Narasimha





