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

Create a flag for disabling the validateConnection() "blip" for performance reasons

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

Details

  • Type: Improvement Improvement
  • Status: Closed Closed
  • Priority: Minor Minor
  • Resolution: Fixed
  • Affects Version/s: 2.2
  • Fix Version/s: ITR15, 2.2
  • Component/s: Core: (other)
  • Labels:
    • 22-candidates
    • retry
  • User impact:
    Low
  • Effort points:
    0
  • Affects Docs:
    Yes
  • Migration Impact:
    Every connector in xml config now has a 'validateConnections' boolean attribute (only few had it before). It must be treated as a hint only (default is true), and transports may honor it to do any extra validation in a transport-specific way.
  • Similar Issues:
    None

Description

The isAbleToConnect() method was added to make retry policies work efficiently, but it might be a performance hit in extreme cases so we should add a flag in order to disable it and/or automatically disable it when retry is not configured.

Issue Links

relates to

Bug - A problem which impairs or prevents the functions of the product. MULE-4147 Current contract for Connectable.validateConnection() is wrong

  • 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
Andrew Perepelytsya added a comment - 28/Jan/09 11:54 AM

Can we also name it and the method isValidateConnections()? This would be consistent with e.g. what TcpConnector already has.

Show
Andrew Perepelytsya added a comment - 28/Jan/09 11:54 AM Can we also name it and the method isValidateConnections()? This would be consistent with e.g. what TcpConnector already has.
Hide
Permalink
Andrew Perepelytsya added a comment - 30/Jan/09 10:15 AM

Refactored the method name to be validateConnection(): http://fisheye.codehaus.org/changelog/mule/?cs=13895

Show
Andrew Perepelytsya added a comment - 30/Jan/09 10:15 AM Refactored the method name to be validateConnection(): http://fisheye.codehaus.org/changelog/mule/?cs=13895
Hide
Permalink
Daniel Zapata added a comment - 03/Feb/09 11:37 AM

for 2.2; possible schema change

Show
Daniel Zapata added a comment - 03/Feb/09 11:37 AM for 2.2; possible schema change
Hide
Permalink
Andrew Perepelytsya added a comment - 09/Feb/09 04:27 PM

http://fisheye.codehaus.org/changelog/mule/?cs=13983

Show
Andrew Perepelytsya added a comment - 09/Feb/09 04:27 PM http://fisheye.codehaus.org/changelog/mule/?cs=13983
Hide
Permalink
Daniel Zapata added a comment - 10/Feb/09 07:13 PM

reverted the change with this fix: rev 13983 since it is suspected of breaking the build:
http://bamboo.mulesource.org/build/viewBuildResultsFailedTests.action?buildKey=MULE-MULE2JDK5&buildNumber=1006
reverted by running: "svn merge -c -13983 ."

Show
Daniel Zapata added a comment - 10/Feb/09 07:13 PM reverted the change with this fix: rev 13983 since it is suspected of breaking the build: http://bamboo.mulesource.org/build/viewBuildResultsFailedTests.action?buildKey=MULE-MULE2JDK5&buildNumber=1006 reverted by running: "svn merge -c -13983 ."
Hide
Permalink
Andrew Perepelytsya added a comment - 12/Feb/09 04:41 PM

I've tested the failures on a Linux system, and confirmed that it's actually a badly written test (or rather, set of tests). I haven't yet figured it all out, but the problem is that shutting down ftp server doesn't actually work cleanly on linux. The socket stays in TIMED_WAIT state for an OS-specific time. Any attempt to connect to the same port with same ftp server libs will fail with 'Address already in use'. E.g. the org.mule.transport.ftp.issues.MultiStreamMule1696TestCase stops the server and tries to start it again.

Show
Andrew Perepelytsya added a comment - 12/Feb/09 04:41 PM I've tested the failures on a Linux system, and confirmed that it's actually a badly written test (or rather, set of tests). I haven't yet figured it all out, but the problem is that shutting down ftp server doesn't actually work cleanly on linux. The socket stays in TIMED_WAIT state for an OS-specific time. Any attempt to connect to the same port with same ftp server libs will fail with 'Address already in use'. E.g. the org.mule.transport.ftp.issues.MultiStreamMule1696TestCase stops the server and tries to start it again.
Hide
Permalink
Daniel Zapata added a comment - 12/Feb/09 04:54 PM

Linux tends to hold on to ports longer than windows if the process using the port doesn't cleanly release it. I've had to stick sleeps/timed checks for things like this if I couldn't figure out how to cleanly shut down the process.

Show
Daniel Zapata added a comment - 12/Feb/09 04:54 PM Linux tends to hold on to ports longer than windows if the process using the port doesn't cleanly release it. I've had to stick sleeps/timed checks for things like this if I couldn't figure out how to cleanly shut down the process.
Hide
Permalink
Travis Carlson added a comment - 13/Feb/09 04:53 AM

FYI, the tests which broke are for FTP streaming which is broken anyways, see EE-1308.

Show
Travis Carlson added a comment - 13/Feb/09 04:53 AM FYI, the tests which broke are for FTP streaming which is broken anyways, see EE-1308.

People

  • Assignee:
    Andrew Perepelytsya
    Reporter:
    Travis Carlson
Vote (0)
Watch (0)

Dates

  • Created:
    28/Jan/09 11:50 AM
    Updated:
    25/Feb/09 08:19 AM
    Resolved:
    17/Feb/09 03:04 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.