JIRA

  • Log In Access more options
    • Online Help
    • GreenHopper Help
    • Agile Answers
    • Use Agile By Default
    • Keyboard Shortcuts
    • About JIRA
    • JIRA Credits
    • What’s New
  • Dashboards Access more options (Alt+d)
  • Projects Access more options (Alt+p)
  • Issues Access more options (Alt+i)
  • Agile Access more options (Alt+g)
  • Create Issue
  • Mule
  • MULE-2845 Intermittent 2.0 test failures
  • MULE-2158

Getting OutOfMemoryError while running stress test in MulticastRouterMule2136TestCase

  • Agile Board
  • More Actions
  • Views
    • XML
    • Word
    • Printable

Details

  • Type: Sub-task Sub-task
  • Status: Open Open
  • Priority: Minor Minor
  • Resolution: Unresolved
  • Affects Version/s: 2.0.0-M1
  • Fix Version/s: Product Backlog
  • Component/s: Core: Queues (SEDA) / Persistence
  • Labels:
    None
  • User impact:
    High
  • Similar Issues:
    None

Description

Running stress test in MulticastRouterMule2136TestCase causes OutOfMemoryError.

I've tried to run it with yourkit profiler, and found that problems are caused by MemoryPersistenceStrategy. It grows unlimitedly while running stress test because for some reason not every object gets removed from there.
Cleaning it explicitly in the test helps, but I suppose that's not a solution.

Issue Links

relates to

Improvement - An improvement or enhancement to an existing feature or task. MULE-774 Overhaul QueuePersistenceStrategies

  • Major - Major loss of function.
  • Open - The issue is open and ready for the assignee to start work on it.

Bug - A problem which impairs or prevents the functions of the product. MULE-2136 Intermittent Hanging with MulticastRouter, ObjectToXml

  • Major - Major loss of function.
  • Closed - The issue is considered finished, the resolution is correct. Issues which are not closed can be reopened.

Activity

Ascending order - Click to sort in descending order
  • All
  • Comments
  • Work Log
  • History
  • Activity
  • Transitions
  • Commits
  • Source
  • Builds
Hide
Permalink
Daniel Feist added a comment - 26/Nov/07 02:26 PM

This test runs fine in maven but fails somewhere after 7000 iteration in both eclipse and idea due to OutOfMemoryError. This may be due to differences in test setup/teardown between IDE's and surefire.

Show
Daniel Feist added a comment - 26/Nov/07 02:26 PM This test runs fine in maven but fails somewhere after 7000 iteration in both eclipse and idea due to OutOfMemoryError. This may be due to differences in test setup/teardown between IDE's and surefire.
Hide
Permalink
Ross Mason added a comment - 28/Nov/07 02:30 AM

it's more likely because you have more memory allocated in you Eclipse JVM settings than in Maven

Show
Ross Mason added a comment - 28/Nov/07 02:30 AM it's more likely because you have more memory allocated in you Eclipse JVM settings than in Maven
Hide
Permalink
Daniel Feist added a comment - 05/Dec/07 07:58 AM

Yes quite likely. the other way around actually.

I just set priority to major, as this is a memory leak which has been confirmed by profiling.

Show
Daniel Feist added a comment - 05/Dec/07 07:58 AM Yes quite likely. the other way around actually. I just set priority to major, as this is a memory leak which has been confirmed by profiling.
Hide
Permalink
Daniel Feist added a comment - 10/Dec/07 10:37 AM

Found the problem!

This happens because this test has outbound vm endpoints which use event queuing but there are no consumer of these queues, i.e. these endpoints have no receivers and neither is receive()/request() used to pull events from the queue.

Not sure what the solution is to this, because in one sense what is happening is valid, rather than an unexpected memory leak due to a bug.

Show
Daniel Feist added a comment - 10/Dec/07 10:37 AM Found the problem! This happens because this test has outbound vm endpoints which use event queuing but there are no consumer of these queues, i.e. these endpoints have no receivers and neither is receive()/request() used to pull events from the queue. Not sure what the solution is to this, because in one sense what is happening is valid, rather than an unexpected memory leak due to a bug.
Hide
Permalink
Daniel Feist added a comment - 10/Dec/07 01:32 PM

http://www.nabble.com/VM-memory-leak-or-expected-functionality-to14258425.html

Show
Daniel Feist added a comment - 10/Dec/07 01:32 PM http://www.nabble.com/VM-memory-leak-or-expected-functionality-to14258425.html
Hide
Permalink
Daniel Feist added a comment - 24/Jan/08 09:38 AM

Ross:
I think it would be consistent to apply a property similar to the ThreadingProfile.whenPoolExhausted., on the QueuingProfile we could have a similar setting that allows for - wait (with time out), Error and eat, Eat oldest, etc.

We should probably start firing ControlNotifications when queues and pools get exhausted and also allow users to set high water marks so that they get a warning control message when the water mark is reached.

Show
Daniel Feist added a comment - 24/Jan/08 09:38 AM Ross: I think it would be consistent to apply a property similar to the ThreadingProfile.whenPoolExhausted., on the QueuingProfile we could have a similar setting that allows for - wait (with time out), Error and eat, Eat oldest, etc. We should probably start firing ControlNotifications when queues and pools get exhausted and also allow users to set high water marks so that they get a warning control message when the water mark is reached.

People

  • Assignee:
    Unassigned
    Reporter:
    Roman Urosov
Vote (0)
Watch (0)

Dates

  • Created:
    14/Aug/07 08:56 AM
    Updated:
    19/Sep/08 12:48 AM

Agile

  • View on Board
  • Atlassian JIRA (v5.0.7#734-sha1:8ad78a6)
  • Report a problem
  • Powered by a free Atlassian JIRA open source license for MuleForge. Try JIRA - bug tracking software for your team.