[jboss-jira] [JBoss JIRA] (WFLY-13065) Options for reverse-proxy max-request-time and connection-idle-timeout are specified as seconds

Ricardo Martin Camarero (Jira) issues at jboss.org
Wed Feb 5 11:07:57 EST 2020


     [ https://issues.redhat.com/browse/WFLY-13065?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Ricardo Martin Camarero updated WFLY-13065:
-------------------------------------------
          Component/s: Web (Undertow)
          Description: 
In the reverse-proxy configuration the options {{max-request-time}} and {{connection-idle-timeout}} are specified and managed as seconds in CLI, when they are really milliseconds in undertow.

{noformat}
/subsystem=undertow/configuration=handler/reverse-proxy=LBProxy:read-resource-description
...
            "connection-idle-timeout" => {
                "type" => INT,
                "description" => "The amount of time a connection can be idle before it will be closed. Connections will not time out
 once the pool size is down to the configured minimum (as configured by cached-connections-per-thread)",
                "expressions-allowed" => true,
                "required" => false,
                "nillable" => true,
                "default" => 60L,
                "unit" => "SECONDS",
                "access-type" => "read-write",
                "storage" => "configuration",
                "restart-required" => "all-services"
            },
...
            "max-request-time" => {
                "type" => INT,
                "description" => "The maximum time that a proxy request can be active for, before being killed",
                "expressions-allowed" => true,
                "required" => false,
                "nillable" => true,
                "default" => -1,
                "unit" => "SECONDS",
                "access-type" => "read-write",
                "storage" => "configuration",
                "restart-required" => "all-services"
            },
...
{noformat}

The class [ReverseProxyHandler|https://github.com/wildfly/wildfly/blob/master/undertow/src/main/java/org/wildfly/extension/undertow/handlers/ReverseProxyHandler.java#L76] just passes the value (no modification) to undertow and it's clearly millis in undertow, for example the [max-request-time|https://github.com/undertow-io/undertow/blob/master/core/src/main/java/io/undertow/server/handlers/proxy/ProxyHandler.java#L190].

I has suffered this confusion myself doing some tests, I set 60 as the max request time, and it was too short in my env (because they are millis instead of seconds).

We need to change description to millis to respect current configurations.
             Priority: Minor  (was: Major)
    Affects Version/s: 19.0.0.Beta1


> Options for reverse-proxy max-request-time and connection-idle-timeout are specified as seconds
> -----------------------------------------------------------------------------------------------
>
>                 Key: WFLY-13065
>                 URL: https://issues.redhat.com/browse/WFLY-13065
>             Project: WildFly
>          Issue Type: Bug
>          Components: Web (Undertow)
>    Affects Versions: 19.0.0.Beta1
>            Reporter: Ricardo Martin Camarero
>            Assignee: Ricardo Martin Camarero
>            Priority: Minor
>
> In the reverse-proxy configuration the options {{max-request-time}} and {{connection-idle-timeout}} are specified and managed as seconds in CLI, when they are really milliseconds in undertow.
> {noformat}
> /subsystem=undertow/configuration=handler/reverse-proxy=LBProxy:read-resource-description
> ...
>             "connection-idle-timeout" => {
>                 "type" => INT,
>                 "description" => "The amount of time a connection can be idle before it will be closed. Connections will not time out
>  once the pool size is down to the configured minimum (as configured by cached-connections-per-thread)",
>                 "expressions-allowed" => true,
>                 "required" => false,
>                 "nillable" => true,
>                 "default" => 60L,
>                 "unit" => "SECONDS",
>                 "access-type" => "read-write",
>                 "storage" => "configuration",
>                 "restart-required" => "all-services"
>             },
> ...
>             "max-request-time" => {
>                 "type" => INT,
>                 "description" => "The maximum time that a proxy request can be active for, before being killed",
>                 "expressions-allowed" => true,
>                 "required" => false,
>                 "nillable" => true,
>                 "default" => -1,
>                 "unit" => "SECONDS",
>                 "access-type" => "read-write",
>                 "storage" => "configuration",
>                 "restart-required" => "all-services"
>             },
> ...
> {noformat}
> The class [ReverseProxyHandler|https://github.com/wildfly/wildfly/blob/master/undertow/src/main/java/org/wildfly/extension/undertow/handlers/ReverseProxyHandler.java#L76] just passes the value (no modification) to undertow and it's clearly millis in undertow, for example the [max-request-time|https://github.com/undertow-io/undertow/blob/master/core/src/main/java/io/undertow/server/handlers/proxy/ProxyHandler.java#L190].
> I has suffered this confusion myself doing some tests, I set 60 as the max request time, and it was too short in my env (because they are millis instead of seconds).
> We need to change description to millis to respect current configurations.



--
This message was sent by Atlassian Jira
(v7.13.8#713008)


More information about the jboss-jira mailing list