On Tue, Oct 27, 2020 at 6:08 PM <ma...@apache.org> wrote: > This is an automated email from the ASF dual-hosted git repository. > > markt pushed a commit to branch 8.5.x > in repository https://gitbox.apache.org/repos/asf/tomcat.git > > > The following commit(s) were added to refs/heads/8.5.x by this push: > new 1c07384 Restore try catch around Poller.events > 1c07384 is described below > > commit 1c0738407e4c3a73b312fae279046249c2dc025d > Author: remm <r...@apache.org> > AuthorDate: Tue Oct 27 16:52:26 2020 +0100 > > Restore try catch around Poller.events > > This is a regression caused when the Poller.events method was > refactored. >
I never refactored Poller.events in 8.5, so it still had its blanket try/catch, so no possible problems. This is a rather recent regression overall. Rémy > --- > java/org/apache/tomcat/util/net/NioEndpoint.java | 8 ++++---- > webapps/docs/changelog.xml | 5 +++++ > 2 files changed, 9 insertions(+), 4 deletions(-) > > diff --git a/java/org/apache/tomcat/util/net/NioEndpoint.java > b/java/org/apache/tomcat/util/net/NioEndpoint.java > index 08b8a4e..fadec98 100644 > --- a/java/org/apache/tomcat/util/net/NioEndpoint.java > +++ b/java/org/apache/tomcat/util/net/NioEndpoint.java > @@ -849,15 +849,15 @@ public class NioEndpoint extends > AbstractJsseEndpoint<NioChannel> { > } > break; > } > + // Either we timed out or we woke up, process events > first > + if (keyCount == 0) { > + hasEvents = (hasEvents | events()); > + } > } catch (Throwable x) { > ExceptionUtils.handleThrowable(x); > log.error("",x); > continue; > } > - // Either we timed out or we woke up, process events first > - if (keyCount == 0) { > - hasEvents = (hasEvents | events()); > - } > > Iterator<SelectionKey> iterator = > keyCount > 0 ? selector.selectedKeys().iterator() : > null; > diff --git a/webapps/docs/changelog.xml b/webapps/docs/changelog.xml > index 606603d..6e732eb 100644 > --- a/webapps/docs/changelog.xml > +++ b/webapps/docs/changelog.xml > @@ -91,6 +91,11 @@ > <bug>63362</bug>: Add collection of statistics for HTTP/2, > WebSocket and > connections upgraded via the HTTP upgrade mechanism. (markt) > </fix> > + <fix> > + Restore exception catch around Poller.events, as it would cause > + the NIO poller thread to exit. This is a regression caused when > + the Poller.events method was refactored. (remm) > + </fix> > </changelog> > </subseciton> > <subsection name="Web applications"> > > > --------------------------------------------------------------------- > To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org > For additional commands, e-mail: dev-h...@tomcat.apache.org > >