Skip to content

[6.3.x] [#2398] FutureBrokerInfoTimeout is missed due to logic operator error (#2399) - #2409

Merged
cshannon merged 1 commit into
apache:activemq-6.3.xfrom
cshannon:backport-2398-6.3.x
Aug 6, 2026
Merged

[6.3.x] [#2398] FutureBrokerInfoTimeout is missed due to logic operator error (#2399)#2409
cshannon merged 1 commit into
apache:activemq-6.3.xfrom
cshannon:backport-2398-6.3.x

Conversation

@cshannon

@cshannon cshannon commented Aug 6, 2026

Copy link
Copy Markdown
Contributor

The timed get loop's condition uses || between the not-disposed check and the deadline check, so the loop runs until disposal regardless of the caller's timeout. Widens FutureBrokerInfo to package-private so the test drives the real class. Two of four scenarios fail until the condition is corrected.

Correct the loop condition from || to && so the timed get exits when EITHER the bridge is disposed OR the deadline expires. Previously a peer that never delivered its BrokerInfo parked the bridge start thread until disposal, ignoring the caller's timeout.

(cherry picked from commit c6f85bc)

… error (apache#2399)

* [apache#2398] Add test proving FutureBrokerInfo.get(timeout) ignores its timeout

The timed get loop's condition uses || between the not-disposed check and
the deadline check, so the loop runs until disposal regardless of the
caller's timeout. Widens FutureBrokerInfo to package-private so the test
drives the real class. Two of four scenarios fail until the condition is
corrected.

* Fix FutureBrokerInfo.get(timeout) to honor its timeout

Correct the loop condition from || to && so the timed get exits when
EITHER the bridge is disposed OR the deadline expires. Previously a peer
that never delivered its BrokerInfo parked the bridge start thread until
disposal, ignoring the caller's timeout.

(cherry picked from commit c6f85bc)
@cshannon cshannon self-assigned this Aug 6, 2026
@cshannon cshannon changed the title [#2398] FutureBrokerInfoTimeout is missed due to logic operator error (#2399) [6.3.x] [#2398] FutureBrokerInfoTimeout is missed due to logic operator error (#2399) Aug 6, 2026
@cshannon
cshannon merged commit 07db885 into apache:activemq-6.3.x Aug 6, 2026
10 checks passed
@cshannon
cshannon deleted the backport-2398-6.3.x branch August 6, 2026 00:08
@github-project-automation github-project-automation Bot moved this from Todo to Done in Apache ActiveMQ v6.3.1 Aug 6, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

Development

Successfully merging this pull request may close these issues.

2 participants