OKay okay i am a centos user in office, windows at home :D Thanks Aman Tandon
On Thu, Apr 10, 2014 at 8:01 PM, Atanas Atanasov <atanaso...@gmail.com>wrote: > Hi, > > I see the threads of the tomcat7.exe process in the Windows Task manager. > > Regards, > Atanas Atanasov > > > On Thu, Apr 10, 2014 at 5:28 PM, Aman Tandon <amantandon...@gmail.com > >wrote: > > > Hi Atanas, > > > > I have a question that, how do know that how much thread does the tomcat > > has? > > > > Thanks > > Aman Tandon > > > > > > On Thu, Apr 10, 2014 at 7:53 PM, Erick Erickson <erickerick...@gmail.com > > >wrote: > > > > > I don't expect having equal values to make a noticeable difference, > > > except possibly in some corner cases. Setting them equal is mostly for > > > avoiding surprises... > > > > > > Erick > > > > > > On Thu, Apr 10, 2014 at 7:17 AM, Atanas Atanasov <atanaso...@gmail.com > > > > > wrote: > > > > Thanks for the tip, > > > > > > > > I already set the core properties. Now tomcat has only 27 threads > after > > > > start up, which is awesome. > > > > Works fine, first search is not noticeably slower than before. > > > > I'll put equal values for Xmx and Xms and see if there will be any > > > > difference. > > > > > > > > Regards, > > > > Atanas > > > > > > > > > > > > On Thu, Apr 10, 2014 at 5:11 PM, Erick Erickson < > > erickerick...@gmail.com > > > >wrote: > > > > > > > >> Trying to fit 1,000 cores in 6G of memory is... interesting. That's > a > > > >> lot of stuff in a small amount of memory. I hope these cores' > indexes > > > >> are tiny. > > > >> > > > >> The lazy-loading bit for cores has a price. The first user in will > pay > > > >> the warmup penalty for that core while it loads. This may or may not > > > >> be noticeable but be aware of it. You may or may not want > autowarming > > > >> in place. > > > >> > > > >> You can also specify how many cores are kept in memory at one time, > > > >> they go into an LRU cache and are aged out after they serve their > last > > > >> outstanding request. > > > >> > > > >> BTW, current Java practice seems to be setting Xmx and Xms to the > same > > > >> value, 6G in your case. > > > >> > > > >> Good Luck! > > > >> Erick > > > >> > > > >> On Thu, Apr 10, 2014 at 12:14 AM, Atanas Atanasov < > > atanaso...@gmail.com > > > > > > > >> wrote: > > > >> > Thanks for the quick responses, > > > >> > I have allocated 1GB min and 6 GB max memory to Java. The cache > > > settings > > > >> > are the default ones (maybe this is a good point to start). > > > >> > All cores share the same schema and config. > > > >> > I'll try setting the > > > >> > loadOnStartup=*false* transient=*true *options for each core and > see > > > what > > > >> > will happen. > > > >> > > > > >> > Those are the exceptions from the log files: > > > >> > SEVERE: Servlet.service() for servlet [default] in context with > path > > > >> > [/solrt] threw exception > > > >> > java.lang.IllegalStateException: Cannot call sendError() after the > > > >> response > > > >> > has been committed > > > >> > at > > > >> > > > > >> > > > > > > org.apache.catalina.connector.ResponseFacade.sendError(ResponseFacade.java:450) > > > >> > at > > > >> > > > > >> > > > > > > org.apache.solr.servlet.SolrDispatchFilter.sendError(SolrDispatchFilter.java:695) > > > >> > at > > > >> > > > > >> > > > > > > org.apache.solr.servlet.SolrDispatchFilter.doFilter(SolrDispatchFilter.java:383) > > > >> > at > > > >> > > > > >> > > > > > > org.apache.solr.servlet.SolrDispatchFilter.doFilter(SolrDispatchFilter.java:158) > > > >> > at > > > >> > > > > >> > > > > > > org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241) > > > >> > at > > > >> > > > > >> > > > > > > org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208) > > > >> > at > > > >> > > > > >> > > > > > > org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:220) > > > >> > at > > > >> > > > > >> > > > > > > org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:122) > > > >> > at > > > >> > > > > >> > > > > > > org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:170) > > > >> > at > > > >> > > > > >> > > > > > > org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:98) > > > >> > at > > > >> > > > > org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:950) > > > >> > at > > > >> > > > > >> > > > > > > org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:116) > > > >> > at > > > >> > > > > >> > > > > > > org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:408) > > > >> > at > > > >> > > > > >> > > > > > > org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1040) > > > >> > at > > > >> > > > > >> > > > > > > org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:607) > > > >> > at > > > >> > > > > >> > > > > > > org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:315) > > > >> > at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown > Source) > > > >> > at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown > > Source) > > > >> > at java.lang.Thread.run(Unknown Source) > > > >> > > > > >> > AND > > > >> > > > > >> > SEVERE: null:ClientAbortException: java.net.SocketException: > > Software > > > >> > caused connection abort: socket write error > > > >> > at > > > >> > > > > org.apache.catalina.connector.OutputBuffer.doFlush(OutputBuffer.java:371) > > > >> > at > > > >> > > org.apache.catalina.connector.OutputBuffer.flush(OutputBuffer.java:333) > > > >> > at > > > >> > > > > >> > > > > > > org.apache.catalina.connector.CoyoteOutputStream.flush(CoyoteOutputStream.java:101) > > > >> > at sun.nio.cs.StreamEncoder.implFlush(Unknown Source) > > > >> > at sun.nio.cs.StreamEncoder.flush(Unknown Source) > > > >> > at java.io.OutputStreamWriter.flush(Unknown Source) > > > >> > at org.apache.solr.util.FastWriter.flush(FastWriter.java:137) > > > >> > at > > > >> > > > > >> > > > > > > org.apache.solr.servlet.SolrDispatchFilter.writeResponse(SolrDispatchFilter.java:648) > > > >> > at > > > >> > > > > >> > > > > > > org.apache.solr.servlet.SolrDispatchFilter.doFilter(SolrDispatchFilter.java:375) > > > >> > at > > > >> > > > > >> > > > > > > org.apache.solr.servlet.SolrDispatchFilter.doFilter(SolrDispatchFilter.java:158) > > > >> > at > > > >> > > > > >> > > > > > > org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241) > > > >> > at > > > >> > > > > >> > > > > > > org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208) > > > >> > at > > > >> > > > > >> > > > > > > org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:220) > > > >> > at > > > >> > > > > >> > > > > > > org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:122) > > > >> > at > > > >> > > > > >> > > > > > > org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:170) > > > >> > at > > > >> > > > > >> > > > > > > org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:98) > > > >> > at > > > >> > > > > org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:950) > > > >> > at > > > >> > > > > >> > > > > > > org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:116) > > > >> > at > > > >> > > > > >> > > > > > > org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:408) > > > >> > at > > > >> > > > > >> > > > > > > org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1040) > > > >> > at > > > >> > > > > >> > > > > > > org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:607) > > > >> > at > > > >> > > > > >> > > > > > > org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:313) > > > >> > at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown > Source) > > > >> > at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown > > Source) > > > >> > at java.lang.Thread.run(Unknown Source) > > > >> > Caused by: java.net.SocketException: Software caused connection > > abort: > > > >> > socket write error > > > >> > at java.net.SocketOutputStream.socketWrite0(Native Method) > > > >> > at java.net.SocketOutputStream.socketWrite(Unknown Source) > > > >> > at java.net.SocketOutputStream.write(Unknown Source) > > > >> > at > > > >> > > > > >> > > > > > > org.apache.coyote.http11.InternalOutputBuffer.realWriteBytes(InternalOutputBuffer.java:215) > > > >> > at > > > org.apache.tomcat.util.buf.ByteChunk.flushBuffer(ByteChunk.java:480) > > > >> > at > > > >> > > > > >> > > > > > > org.apache.coyote.http11.InternalOutputBuffer.flush(InternalOutputBuffer.java:119) > > > >> > at > > > >> > > > > >> > > > > > > org.apache.coyote.http11.AbstractHttp11Processor.action(AbstractHttp11Processor.java:799) > > > >> > at org.apache.coyote.Response.action(Response.java:174) > > > >> > at > > > >> > > > > org.apache.catalina.connector.OutputBuffer.doFlush(OutputBuffer.java:366) > > > >> > ... 24 more > > > >> > > > > >> > > > > >> > > > > >> > On Thu, Apr 10, 2014 at 9:51 AM, Alexandre Rafalovitch > > > >> > <arafa...@gmail.com>wrote: > > > >> > > > > >> >> Are you using all those cores at once? If not, there is a recent > > > >> >> settings to allow solr to load cores on demand. > > > >> >> > > > >> >> If you are using them all, perhaps you need to look into > splitting > > > >> >> them to different machines (horizontal scaling). > > > >> >> > > > >> >> What about your caches? How many additional structures you have > > > >> >> configured for each core? How much memory you allocated to the > Java > > > >> >> process. You are probably running out of memory and thrashing > with > > a > > > >> >> swap. I am not even sure Java process can access that much memory > > in > > > >> >> one process. You might be better off running multiple Tomcat/Solr > > > >> >> instances on the same machine with different subsets of cores. > > > >> >> > > > >> >> Regards, > > > >> >> Alex. > > > >> >> P.s. This is general advice, I don't know the specific issues > > around > > > >> >> that version of Solr/Tomcat. > > > >> >> Personal website: http://www.outerthoughts.com/ > > > >> >> Current project: http://www.solr-start.com/ - Accelerating your > > Solr > > > >> >> proficiency > > > >> >> > > > >> >> > > > >> >> On Thu, Apr 10, 2014 at 1:40 PM, Atanas Atanasov < > > > atanaso...@gmail.com> > > > >> >> wrote: > > > >> >> > Hi, guys, > > > >> >> > > > > >> >> > I need some help. After updating to SOLR 4.4 the tomcat process > > is > > > >> >> > consuming about 2GBs of memory, the CPU usage is about 40% > after > > > the > > > >> >> start > > > >> >> > for about 10 minutes. However, the bigger problem is, I have > > about > > > >> 1000 > > > >> >> > cores and seems that for each core a thread is created. The > > process > > > >> has > > > >> >> > more than 1000 threads and everything is extremely slow. > Creating > > > or > > > >> >> > unloading a core even without documents takes about 20 minutes. > > > >> Searching > > > >> >> > is more or less good, but storing also takes a lot. > > > >> >> > Is there some configuration I missed or that I did wrong? There > > > aren't > > > >> >> many > > > >> >> > calls, I use 64 bit tomcat 7, SOLR 4.4, latest 64 bit Java. The > > > >> machine > > > >> >> has > > > >> >> > 24 GBs of RAM, a CPU with 16 cores and is running Windows > Server > > > 2008 > > > >> R2. > > > >> >> > Index is uppdated every 30 seconds/10 000 documents. > > > >> >> > I haven't checked the number of threads before the update, > > because > > > I > > > >> >> didn't > > > >> >> > have to, it was working just fine. Any suggestion will be > highly > > > >> >> > appreciated, thank you in advance. > > > >> >> > > > > >> >> > Regards, > > > >> >> > Atanas > > > >> >> > > > >> > > > > > >