It would be great if you could give this patch a try:
http://pastebin.com/raw.php?i=aaRWwSGP

- Mark


On Wed, Sep 4, 2013 at 8:31 AM, Kevin Osborn <kevin.osb...@cbsi.com> wrote:

> Thanks. If there is anything I can do to help you resolve this issue, let
> me know.
>
> -Kevin
>
>
> On Wed, Sep 4, 2013 at 7:51 AM, Mark Miller <markrmil...@gmail.com> wrote:
>
> > Ill look at fixing the root issue for 4.5. I've been putting it off for
> > way to long.
> >
> > Mark
> >
> > Sent from my iPhone
> >
> > On Sep 3, 2013, at 2:15 PM, Kevin Osborn <kevin.osb...@cbsi.com> wrote:
> >
> > > I was having problems updating SolrCloud with a large batch of records.
> > The
> > > records are coming in bursts with lulls between updates.
> > >
> > > At first, I just tried large updates of 100,000 records at a time.
> > > Eventually, this caused Solr to hang. When hung, I can still query
> Solr.
> > > But I cannot do any deletes or other updates to the index.
> > >
> > > At first, my updates were going as SolrJ CSV posts. I have also tried
> > local
> > > file updates and had similar results. I finally slowed things down to
> > just
> > > use SolrJ's Update feature, which is basically just JavaBin. I am also
> > > sending over just 100 at a time in 10 threads. Again, it eventually
> hung.
> > >
> > > Sometimes, Solr hangs in the first couple of chunks. Other times, it
> > hangs
> > > right away.
> > >
> > > These are my commit settings:
> > >
> > > <autoCommit>
> > >       <maxTime>15000</maxTime>
> > >       <maxDocs>5000</maxDocs>
> > >       <openSearcher>false</openSearcher>
> > >     </autoCommit>
> > > <autoSoftCommit>
> > >         <maxTime>30000</maxTime>
> > >       </autoSoftCommit>
> > >
> > > I have tried quite a few variations with the same results. I also tried
> > > various JVM settings with the same results. The only variable seems to
> be
> > > that reducing the cluster size from 2 to 1 is the only thing that
> helps.
> > >
> > > I also did a jstack trace. I did not see any explicit deadlocks, but I
> > did
> > > see quite a few threads in WAITING or TIMED_WAITING. It is typically
> > > something like this:
> > >
> > >  java.lang.Thread.State: WAITING (parking)
> > >        at sun.misc.Unsafe.park(Native Method)
> > >        - parking to wait for  <0x000000074039a450> (a
> > > java.util.concurrent.Semaphore$NonfairSync)
> > >        at
> > java.util.concurrent.locks.LockSupport.park(LockSupport.java:186)
> > >        at
> > >
> >
> java.util.concurrent.locks.AbstractQueuedSynchronizer.parkAndCheckInterrupt(AbstractQueuedSynchronizer.java:834)
> > >        at
> > >
> >
> java.util.concurrent.locks.AbstractQueuedSynchronizer.doAcquireSharedInterruptibly(AbstractQueuedSynchronizer.java:994)
> > >        at
> > >
> >
> java.util.concurrent.locks.AbstractQueuedSynchronizer.acquireSharedInterruptibly(AbstractQueuedSynchronizer.java:1303)
> > >        at java.util.concurrent.Semaphore.acquire(Semaphore.java:317)
> > >        at
> > >
> >
> org.apache.solr.util.AdjustableSemaphore.acquire(AdjustableSemaphore.java:61)
> > >        at
> > >
> >
> org.apache.solr.update.SolrCmdDistributor.submit(SolrCmdDistributor.java:418)
> > >        at
> > >
> >
> org.apache.solr.update.SolrCmdDistributor.submit(SolrCmdDistributor.java:368)
> > >        at
> > >
> >
> org.apache.solr.update.SolrCmdDistributor.flushAdds(SolrCmdDistributor.java:300)
> > >        at
> > >
> >
> org.apache.solr.update.SolrCmdDistributor.distribAdd(SolrCmdDistributor.java:139)
> > >        at
> > >
> >
> org.apache.solr.update.processor.DistributedUpdateProcessor.processAdd(DistributedUpdateProcessor.java:474)
> > >        at
> > >
> >
> org.apache.solr.handler.loader.CSVLoaderBase.doAdd(CSVLoaderBase.java:395)
> > >        at
> > >
> >
> org.apache.solr.handler.loader.SingleThreadedCSVLoader.addDoc(CSVLoader.java:44)
> > >        at
> > >
> org.apache.solr.handler.loader.CSVLoaderBase.load(CSVLoaderBase.java:364)
> > >        at
> > org.apache.solr.handler.loader.CSVLoader.load(CSVLoader.java:31)
> > >        at
> > >
> >
> org.apache.solr.handler.UpdateRequestHandler$1.load(UpdateRequestHandler.java:92)
> > >        at
> > >
> >
> org.apache.solr.handler.ContentStreamHandlerBase.handleRequestBody(ContentStreamHandlerBase.java:74)
> > >        at
> > >
> >
> org.apache.solr.handler.RequestHandlerBase.handleRequest(RequestHandlerBase.java:135)
> > >        at org.apache.solr.core.SolrCore.execute(SolrCore.java:1904)
> > >        at
> > >
> >
> org.apache.solr.servlet.SolrDispatchFilter.execute(SolrDispatchFilter.java:659)
> > >        at
> > >
> >
> org.apache.solr.servlet.SolrDispatchFilter.doFilter(SolrDispatchFilter.java:362)
> > >        at
> > >
> >
> org.apache.solr.servlet.SolrDispatchFilter.doFilter(SolrDispatchFilter.java:158)
> > >        at
> > >
> >
> org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1419)
> > >        at
> > >
> >
> org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:455)
> > >        at
> > >
> >
> org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:137)
> > >        at
> > >
> >
> org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.java:533)
> > >        at
> > >
> >
> org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:231)
> > >        at
> > >
> >
> org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1075)
> > >        at
> > >
> org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:384)
> > >        at
> > >
> >
> org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:193)
> > >        at
> > >
> >
> org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:1009)
> > >        at
> > >
> >
> org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:135)
> > >        at
> > >
> >
> org.eclipse.jetty.server.handler.ContextHandlerCollection.handle(ContextHandlerCollection.java:255)
> > >        at
> > >
> >
> org.eclipse.jetty.server.handler.HandlerCollection.handle(HandlerCollection.java:154)
> > >
> > > It basically appears that Solr gets stuck while trying to acquire a
> > > semaphore that never becomes available.
> > >
> > > Anyone have any ideas? This is definitely causing major problems for
> us.
> > >
> > > --
> > > *KEVIN OSBORN*
> > > LEAD SOFTWARE ENGINEER
> > > CNET Content Solutions
> > > OFFICE 949.399.8714
> > > CELL 949.310.4677      SKYPE osbornk
> > > 5 Park Plaza, Suite 600, Irvine, CA 92614
> > > [image: CNET Content Solutions]
> >
>
>
>
> --
> *KEVIN OSBORN*
> LEAD SOFTWARE ENGINEER
> CNET Content Solutions
> OFFICE 949.399.8714
> CELL 949.310.4677      SKYPE osbornk
> 5 Park Plaza, Suite 600, Irvine, CA 92614
> [image: CNET Content Solutions]
>



-- 
- Mark

Reply via email to