Skip to content

Make Cluster digester rules fully conditional on ha and tribes JARs#1021

Open
dsoumis wants to merge 1 commit into
apache:mainfrom
dsoumis:clustering-tweaks
Open

Make Cluster digester rules fully conditional on ha and tribes JARs#1021
dsoumis wants to merge 1 commit into
apache:mainfrom
dsoumis:clustering-tweaks

Conversation

@dsoumis

@dsoumis dsoumis commented Jun 9, 2026

Copy link
Copy Markdown
Member

The ObjectCreate rules for the element were registered
unconditionally in EngineRuleSet and HostRuleSet, while the child
element rules in ClusterRuleSet were already guarded behind a
try/catch in Catalina.addClusterRuleSet(). This caused a
NoClassDefFoundError crash when catalina-tribes.jar was removed
but catalina-ha.jar was present and was enabled in
server.xml.

Move the Cluster element rules into addClusterRuleSet() alongside
the child element rules, and add a probe for tribes availability.
Either both JARs are present and clustering works, or the
element is ignored with an INFO log.

@dsoumis dsoumis force-pushed the clustering-tweaks branch from f6c01d8 to 5311465 Compare June 9, 2026 13:06
  The ObjectCreate rules for the <Cluster> element were registered
  unconditionally in EngineRuleSet and HostRuleSet, while the child
  element rules in ClusterRuleSet were already guarded behind a
  try/catch in Catalina.addClusterRuleSet(). This caused a
  NoClassDefFoundError crash when catalina-tribes.jar was removed
  but catalina-ha.jar was present and <Cluster> was enabled in
  server.xml.

  Move the Cluster element rules into addClusterRuleSet() alongside
  the child element rules, and add a probe for tribes availability.
  Either both JARs are present and clustering works, or the <Cluster>
  element is ignored with an INFO log.
@dsoumis dsoumis force-pushed the clustering-tweaks branch from 5311465 to fb2192a Compare June 9, 2026 14:03
@ChristopherSchultz

Copy link
Copy Markdown
Contributor

+1

@csutherl

csutherl commented Jun 9, 2026

Copy link
Copy Markdown
Member

LGTM

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