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-5846

Possibility for infinite look in multi-app logging initialization

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

Details

  • Type: Bug Bug
  • Status: Closed Closed
  • Priority: Blocker Blocker
  • Resolution: Fixed
  • Affects Version/s: 3.1.2, 3.2.0
  • Fix Version/s: 3.2.1
  • Component/s: Core: Configuration
  • Labels:
    None
  • User impact:
    High
  • Similar Issues:
    None

Description

In the ApplicationAwareRepositorySelector implementation, part of the logic checks to see if a LoggerRepository instance is already associated with the current thread. If there is no instance currently associated, one is created, configured, and then added via a putIfAbsent. This can create an infinite loop if the logging configuration references itself during setup because the reference is not yet in the map; if the same thread re-enters the method, it will not find the in-progress configured LoggerRepository, etc., etc.

The fix is to ensure that the LoggerRepository instance is added to the map before configureFrom(...) is called.

  • Options
    • Sort By Name
    • Sort By Date
    • Ascending
    • Descending
    • Download All

Attachments

  1. File
    patch
    24/Oct/11 05:38 PM
    3 kB
    Paul Brown

Activity

Ascending order - Click to sort in descending order
  • All
  • Comments
  • Work Log
  • History
  • Activity
  • Transitions
  • Commits
  • Source
  • Builds
Hide
Permalink
Paul Brown added a comment - 24/Oct/11 05:38 PM

Patch against 3.1.2

Show
Paul Brown added a comment - 24/Oct/11 05:38 PM Patch against 3.1.2
Hide
Permalink
Mike Schilling added a comment - 07/Nov/11 01:38 AM

Is this required for 3.2, or does the line

LoggerRepository repository = cache.getLoggerRepository(ccl);

at the start of getLoggerRepository() accomplish the same thing?

Show
Mike Schilling added a comment - 07/Nov/11 01:38 AM Is this required for 3.2, or does the line LoggerRepository repository = cache.getLoggerRepository(ccl); at the start of getLoggerRepository() accomplish the same thing?
Hide
Permalink
Mike Schilling added a comment - 07/Nov/11 06:26 PM

Fixed by 22678 in 3.2.x

Show
Mike Schilling added a comment - 07/Nov/11 06:26 PM Fixed by 22678 in 3.2.x

People

  • Assignee:
    Mike Schilling
    Reporter:
    Paul Brown
Vote (0)
Watch (0)

Dates

  • Created:
    24/Oct/11 05:35 PM
    Updated:
    09/May/12 07:08 PM
    Resolved:
    16/Nov/11 04:40 PM

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.