[jboss-jira] [JBoss JIRA] (WFLY-12188) Option READ_TIMEOUT is ignored
Brian Stansberry (Jira)
issues at jboss.org
Fri Jun 21 15:02:01 EDT 2019
[ https://issues.jboss.org/browse/WFLY-12188?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13750263#comment-13750263 ]
Brian Stansberry commented on WFLY-12188:
-----------------------------------------
tl;dr; A "READ_TIMEOUT" is not part of the set of options used by the object configured by the EJB subsystem. It was 'cruft' because it was not a setting relevant to that part of the configuration and in the end was ignored. It shouldn't be configured. However, configuring it does no harm beyond causing confusion, since the setting is ignored. The remoting subsystem http-connector setting is the one that matters.
The details:
The place that ejb3 subsystem config chunk is used is:
https://github.com/wildfly/wildfly/blob/master/ejb3/src/main/java/org/jboss/as/ejb3/subsystem/EJB3RemoteServiceAdd.java#L141
which drives the state of an EJBRemoteConnectorService
https://github.com/wildfly/wildfly/blob/master/ejb3/src/main/java/org/jboss/as/ejb3/remote/EJBRemoteConnectorService.java#L64
which drives the registration of a service on an existing Endpoint:
https://github.com/wildfly/wildfly/blob/master/ejb3/src/main/java/org/jboss/as/ejb3/remote/EJBRemoteConnectorService.java#L85
The option map associated with that Registration is ultimately consumed by RemoteReadListener:
https://github.com/jboss-remoting/jboss-remoting/blob/master/src/main/java/org/jboss/remoting3/remote/RemoteReadListener.java#L179
The only options it considers are the ones starting at L181. READ_TIMEOUT is not one of them.
I believe that's because those are the only ones relevant to RemoteReadListener which AFAICT is not involved with connection management.
The http-connector config in the remoting subsystem OTOH does ultimately provide options that are related to connection management. I won't go through the whole path to that, but here's a key point:
https://github.com/wildfly/wildfly-core/blob/master/remoting/subsystem/src/main/java/org/jboss/as/remoting/RemotingHttpUpgradeService.java#L205
leading to:
https://github.com/jboss-remoting/jboss-remoting/blob/master/src/main/java/org/jboss/remoting3/remote/HttpUpgradeConnectionProvider.java#L253
> Option READ_TIMEOUT is ignored
> ------------------------------
>
> Key: WFLY-12188
> URL: https://issues.jboss.org/browse/WFLY-12188
> Project: WildFly
> Issue Type: Bug
> Components: EJB, Remoting
> Affects Versions: 17.0.0.Final
> Reporter: Joerg Baesner
> Assignee: Flavia Rainone
> Priority: Blocker
>
> What's the difference of the {{READ_TIMEOUT}} in _ejb3_ subsystem vs. _remoting_ subsystem? See:
> {code}
> <remote connector-ref="http-remoting-connector" thread-pool-name="default">
> <channel-creation-options>
> <option name="READ_TIMEOUT" value="${prop.remoting-connector.read.timeout:20}" type="xnio"/>
> <option name="MAX_OUTBOUND_MESSAGES" value="1234" type="remoting"/>
> </channel-creation-options>
> </remote>
> {code}
> {code}
> <subsystem xmlns="urn:jboss:domain:remoting:4.0">
> <endpoint/>
> <http-connector name="http-remoting-connector" connector-ref="default" security-realm="ApplicationRealm">
> <!-- server-side configuration -->
> <properties>
> <property name="org.jboss.remoting3.RemotingOptions.HEARTBEAT_INTERVAL" value="5000"/>
> <property name="KEEP_ALIVE" value="true"/>
> <property name="READ_TIMEOUT" value="10000"/>
> <property name="WRITE_TIMEOUT" value="10000"/>
> </properties>
> </http-connector>
> {code}
> None of those options work.
--
This message was sent by Atlassian Jira
(v7.12.1#712002)
More information about the jboss-jira
mailing list