Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

FISH-642 Workaround fix for OpenMQ blowing away logging on cluster instances - Alternative Fix #5051

Merged
merged 4 commits into from
Dec 17, 2020

Conversation

Pandrex247
Copy link
Member

@Pandrex247 Pandrex247 commented Dec 14, 2020

Description

Alternative fix for #5043
Should provide nicer error message

Application logging breaks for clustered instances (as in Shoal/GMS clustered instances) due to OpenMQ blowing away logging configuration.

The cause of OpenMQ blowing it away is due to it running into an exception when starting the clustered broker, specifically that a loopback address is being used. Rather than exiting out at this point however, OpenMQ attempts to fallover to a non-clustered broker. This logic is currently flawed however due to the fact that the Broker which is being started gets "exited" before continuing to start using a non-clustered mbus - the broker doesn't exit due to being started in-process, and attempts to carry on despite having all configuration nulled, unsurprisingly running into NPEs (which you don't see because a side-effect of nulling the configuration is that it also blows away the logging configuration).

It should be pointed out that this flaw in OpenMQ exists regardless of this workaround / part-fix - the OpenMQ broker won't start regardless, but with this change you at least get told it hasn't started. This change doesn't cause OpenMQ to print quite the same exception that it would normally however (if it could actually print the exception). It still gets the same NPEs caused by throwing away all configuration, but in a slightly different place, causing it to not get wrapped in a nicer "Illegal Loopback Address Used" message.

Important Info

Blockers

payara/Payara_PatchedProjects#351
payara/patched-src-openmq#10

Testing

New tests

None

Testing Performed

Started cluster instances on Windows and Linux and deployed test application, hitting endpoint http://localhost:28080/ticket1567-logging/hello and checking logs to see if messages are printed out.

As noted above, clustered instances on Linux with a "default" networking setup will get errors related to OpenMQ not starting.

Documentation

None

@MattGill98
Copy link
Contributor

jenkins test please

@Pandrex247
Copy link
Member Author

Needs patched_projects PR merging first

@Pandrex247
Copy link
Member Author

Jenkins test please

1 similar comment
@Pandrex247
Copy link
Member Author

Jenkins test please

@Pandrex247
Copy link
Member Author

Jenkins test please

@Pandrex247 Pandrex247 merged commit 41a2eda into payara:master Dec 17, 2020
@Pandrex247 Pandrex247 deleted the FISH-642-Take2 branch December 17, 2020 13:11
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants