Uploaded image for project: 'WildFly'
  1. WildFly
  2. WFLY-18911

Add missing capability references within Undertow subsystem

    XMLWordPrintable

Details

    • Bug
    • Resolution: Unresolved
    • Major
    • 33.0.0.Beta1
    • 31.0.0.Beta1
    • Web (Undertow)
    • None
    • ---
    • ---

    Description

      The Undertow subsystem model contains a number of missing capability references.
      Many of these attributes contain "magical" default values and allow expressions, thus fixing this will require a model version bump and transformers.

      Missing capability references include:

      • /subsystem=undertow
        1. "default-security-domain": allows expressions, magic default value, should reference "org.wildfly.undertow.application-security-domain"
      • /subsystem=undertow/server=*
        1. "default-host": allows expressions, magic default value, should reference "org.wildfly.undertow.host"
        2. "servlet-container": magic default value, should reference "org.wildfly.undertow.servlet-container"
      • /subsystem=undertow/servlet-container=*
        1. "default-buffer-cache": allows expressions, magic default value, should reference /subsystem=undertow/buffer-cache=* (which has no corresponding capability)

      Attributes containing capability references, but either allow expressions or have a "magic" default value:

      • /subsystem=undertow
        1. "default-servlet-container": magic default value
        2. "default-server": magic default value
        3. "default-host": magic default value
      • /subsystem=undertow/server=*/host=*/setting=access-log
        1. "worker": magic default value
      • /subsystem=undertow/server=*/host=*/setting=console-access-log
        1. "worker": magic default value
      • /subsystem=undertow/servlet-container=*/setting=websockets
        1. "buffer-pool": magic default value
        2. "worker": magic default value
      • /subsystem=undertow/.../mod-cluster=*
        1. "management-socket-binding": allows expressions
        2. "advertise-socket-binding": allows expressions
        3. "worker": allows expressions, magic default value
      • /subsystem=undertow/.../reverse-proxy=*/host=*
        1. "outbound-socket-binding", allows expressions

      Also missing are capability references between a filter-ref and its referenced filter, but this already covered by WFLY-17451.

      Additionally, the "default-virtual-host" attribute of /subsystem=undertow is redundant and should be deprecated (and eventually removed). This value is already captured by the "default-host" attribute of the /subsystem=undertow/server=* resource corresponding to the "default-server" attribute of {{/subsystem=undertow. This creates the awkward condition where two attributes of different resources must match, otherwise the undertow subsystem configuration is invalid.

      I can guess why this was done. I suspect that the default-virtual-host was added to the root resource so that its value can be passed directly to a DUP during startup. This is very fragile, and prevents any of the attributes the root resource from being updated at runtime without requiring a restart. Fixing this is a larger change and warrants a separate JIRA.

      Attachments

        Issue Links

          Activity

            People

              pferraro@redhat.com Paul Ferraro
              pferraro@redhat.com Paul Ferraro
              Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

              Dates

                Created:
                Updated: