This is also the screenshot of jvisualvm.
This exception occurred at 2:55PM and 3:40PM and OOME occurs at 3:41PM.
SnapPuller  - java.lang.InterruptedException
at java.util.concurrent.FutureTask.awaitDone(FutureTask.java:404)
at java.util.concurrent.FutureTask.get(FutureTask.java:191)
at ....SnapPuller.openNewSearcherAndUpdateCommitPoint(SnapPuller.java:680)

On Thu, Oct 20, 2016 at 10:14 AM, Jihwan Kim <jihwa...@gmail.com> wrote:

> Good points.
> I am able to create this with periodic snap puller and only one http
> request.  When I load the Solr on tomcat, the initial memory usage was
> between 600M to 800 M.  First time, I used 1.5 G and then increased the
> heap to 3.5G.  (When I said 'triple', I meant comparing to the initial
> memory consumption)
>
> OK... Shall we focus on my second question: When the core reload happens
> successfully (no matter it throws the exception or not), does Solr need to
> call the openNewSearcherAndUpdateCommitPoint method?  I think this
> openNewSearcherAndUpdateCommitPoint method tries to open a new searcher
> on the old SolrCore.
>
> Thank you!
>
>
> On Thu, Oct 20, 2016 at 9:55 AM, Erick Erickson <erickerick...@gmail.com>
> wrote:
>
>> You say you tripled the memory. Up to what? Tripling from 500M t0 1.5G
>> isn't likely enough, tripling from 6G to 18G is something else
>> again....
>>
>> You can take a look through any of the memory profilers and try to
>> catch the objects (and where they're being allocated). The second is
>> to look at the stack trace (presuming you don't have an OOM killer
>> script running) and perhaps triangulate that way.
>>
>> Best,
>> Erick
>>
>> On Thu, Oct 20, 2016 at 11:44 AM, Jihwan Kim <jihwa...@gmail.com> wrote:
>> > Thank you Shawn. I understand the two options.
>> > After my own testing with a smaller heap, I increased my heap size more
>> than
>> > triple, but OOME happens again with my testing cases under the
>> controlled
>> > thread process. Increased heap size just delayed the OOME.
>> >
>> > Can you provide a feedback on my second question:  When the core reload
>> > happens successfully (no matter it throws the exception or not), does
>> Solr
>> > need to call the openNewSearcherAndUpdateCommitPoint method?
>> >
>> > As I described on my previous email, a thread created from
>> > openNewSearcherAndUpdateCommitPoint method hangs and cause a high CPU
>> usage
>> > and a slow response time.  Attached image is the thread hung.
>> >
>> >
>> >
>> > On Thu, Oct 20, 2016 at 9:29 AM, Shawn Heisey <apa...@elyograg.org>
>> wrote:
>> >>
>> >> On 10/20/2016 8:44 AM, Jihwan Kim wrote:
>> >> > We are using Solr 4.10.4 and experiencing out of memory exception. It
>> >> > seems the problem is cause by the following code & scenario.
>> >>
>> >> When you get an OutOfMemoryError exception that tells you there's not
>> >> enough heap space, the place where the exception happens is frequently
>> >> unrelated to the actual source of the problem.  Also, unless the
>> >> programmer engages in extraordinary effort, encountering OOME will
>> cause
>> >> program behavior to become completely unpredictable.  Most of Solr has
>> >> *NOT* had the benefit of extraordinary effort to handle OOME
>> gracefully.
>> >>
>> >> Before continuing with troubleshooting of SnapPuller, you're going to
>> >> need to fix the OOME error.  When you run out of memory, that is likely
>> >> to be the CAUSE of any errors you're seeing, not a symptom.
>> >>
>> >> There are exactly two ways to deal with OOME:  Increase the max heap,
>> or
>> >> take steps to reduce the amount of heap required.  Increasing the heap
>> >> is the easiest option, and typically the first step.  Sometimes it's
>> the
>> >> ONLY option.
>> >>
>> >> https://wiki.apache.org/solr/SolrPerformanceProblems#Java_Heap
>> >>
>> >> Thanks,
>> >> Shawn
>> >>
>> >
>>
>
>

Reply via email to