[jira] [Created] (WICKET-6767) Do not log error for broken pipes in websocket connections
Thomas Heigl created WICKET-6767: Summary: Do not log error for broken pipes in websocket connections Key: WICKET-6767 URL: https://issues.apache.org/jira/browse/WICKET-6767 Project: Wicket Issue Type: Improvement Components: wicket-native-websocket Affects Versions: 9.0.0-M4 Reporter: Thomas Heigl Assignee: Martin Tzvetanov Grigorov We had some "IOException: Broken pipe" errors on production: {code:java} Apr 10 14:34:26 ERR o.a.w.p.w.j.WicketEndpoint An error occurred in web socket connection with id : f2d Apr 10 14:34:26 #011java.io.IOException java.io.IOException: Broken pipe Apr 10 14:34:26 #011at org.apache.tomcat.websocket.WsRemoteEndpointImplBase.sendMessageBlock(WsRemoteEndpointImplBase.java:315) Apr 10 14:34:26 #011at org.apache.tomcat.websocket.WsRemoteEndpointImplBase.sendMessageBlock(WsRemoteEndpointImplBase.java:258) Apr 10 14:34:26 #011at org.apache.tomcat.websocket.WsSession.sendCloseMessage(WsSession.java:612) Apr 10 14:34:26 #011at org.apache.tomcat.websocket.WsSession.onClose(WsSession.java:532) Apr 10 14:34:26 #011at org.apache.tomcat.websocket.WsFrameBase.processDataControl(WsFrameBase.java:347) Apr 10 14:34:26 #011at org.apache.tomcat.websocket.WsFrameBase.processData(WsFrameBase.java:289) Apr 10 14:34:26 #011at org.apache.tomcat.websocket.WsFrameBase.processInputBuffer(WsFrameBase.java:133) Apr 10 14:34:26 #011at org.apache.tomcat.websocket.server.WsFrameServer.onDataAvailable(WsFrameServer.java:82) Apr 10 14:34:26 #011at org.apache.tomcat.websocket.server.WsFrameServer.doOnDataAvailable(WsFrameServer.java:171) Apr 10 14:34:26 #011at org.apache.tomcat.websocket.server.WsFrameServer.notifyDataAvailable(WsFrameServer.java:151) Apr 10 14:34:26 #011at org.apache.tomcat.websocket.server.WsHttpUpgradeHandler.upgradeDispatch(WsHttpUpgradeHandler.java:148) Apr 10 14:34:26 #011at org.apache.coyote.http11.upgrade.UpgradeProcessorInternal.dispatch(UpgradeProcessorInternal.java:54) Apr 10 14:34:26 #011at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:59) Apr 10 14:34:26 #011at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:868) Apr 10 14:34:26 #011at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1594) Apr 10 14:34:26 #011at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49) Apr 10 14:34:26 #011at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) Apr 10 14:34:26 #011at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) Apr 10 14:34:26 #011at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61) Apr 10 14:34:26 #011at java.base/java.lang.Thread.run(Thread.java:834) Apr 10 14:34:26 #011Caused by: java.io.IOException: Broken pipe {code} There already is condition that checks for EOFException in WicketEndpoint. Maybe it could be extended to broken pipes? {code} @Override public void onError(Session session, Throwable t) { if (t instanceof EOFException) { LOG.debug("An error occurred in web socket connection with id : {}", session.getId(), t); } else { LOG.error("An error occurred in web socket connection with id : {}", session.getId(), t); } } {code} My only option at the moment is to completely turn off logging for WicketEndpoint. -- This message was sent by Atlassian Jira (v8.3.4#803005)
[jira] [Commented] (WICKET-6766) Keep page ids in tests like they where in Wicket 8
[ https://issues.apache.org/jira/browse/WICKET-6766?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17080282#comment-17080282 ] ASF subversion and git services commented on WICKET-6766: - Commit 771c957a337937ef501a32ead39c0094c5543d8f in wicket's branch refs/heads/master from Sven Meier [ https://gitbox.apache.org/repos/asf?p=wicket.git;h=771c957 ] WICKET-6766 same page manager setup for tests as in Wicket 8 > Keep page ids in tests like they where in Wicket 8 > -- > > Key: WICKET-6766 > URL: https://issues.apache.org/jira/browse/WICKET-6766 > Project: Wicket > Issue Type: Improvement > Components: wicket >Affects Versions: 9.0.0-M5 >Reporter: Sven Meier >Assignee: Sven Meier >Priority: Trivial > Fix For: 9.0.0-M6 > > -- This message was sent by Atlassian Jira (v8.3.4#803005)
[jira] [Resolved] (WICKET-6766) Keep page ids in tests like they where in Wicket 8
[ https://issues.apache.org/jira/browse/WICKET-6766?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Sven Meier resolved WICKET-6766. Resolution: Fixed > Keep page ids in tests like they where in Wicket 8 > -- > > Key: WICKET-6766 > URL: https://issues.apache.org/jira/browse/WICKET-6766 > Project: Wicket > Issue Type: Improvement > Components: wicket >Affects Versions: 9.0.0-M5 >Reporter: Sven Meier >Assignee: Sven Meier >Priority: Trivial > Fix For: 9.0.0-M6 > > -- This message was sent by Atlassian Jira (v8.3.4#803005)
[wicket] branch master updated: WICKET-6766 same page manager setup for tests as in Wicket 8
This is an automated email from the ASF dual-hosted git repository. svenmeier pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/wicket.git The following commit(s) were added to refs/heads/master by this push: new 771c957 WICKET-6766 same page manager setup for tests as in Wicket 8 771c957 is described below commit 771c957a337937ef501a32ead39c0094c5543d8f Author: Sven Meier AuthorDate: Fri Apr 10 08:49:22 2020 +0200 WICKET-6766 same page manager setup for tests as in Wicket 8 --- .../org/apache/wicket/mock/MockPageManager.java| 2 +- .../wicket/util/tester/BaseWicketTester.java | 5 ++-- .../wicket/devutils/pagestore/PageStorePage.java | 29 ++ 3 files changed, 22 insertions(+), 14 deletions(-) diff --git a/wicket-core/src/main/java/org/apache/wicket/mock/MockPageManager.java b/wicket-core/src/main/java/org/apache/wicket/mock/MockPageManager.java index 9c5216a..11ad207 100644 --- a/wicket-core/src/main/java/org/apache/wicket/mock/MockPageManager.java +++ b/wicket-core/src/main/java/org/apache/wicket/mock/MockPageManager.java @@ -35,7 +35,7 @@ public class MockPageManager implements IPageManager @Override public boolean supportsVersioning() { - return false; + return true; } @Override diff --git a/wicket-core/src/main/java/org/apache/wicket/util/tester/BaseWicketTester.java b/wicket-core/src/main/java/org/apache/wicket/util/tester/BaseWicketTester.java index 01b1e29..254ae38 100644 --- a/wicket-core/src/main/java/org/apache/wicket/util/tester/BaseWicketTester.java +++ b/wicket-core/src/main/java/org/apache/wicket/util/tester/BaseWicketTester.java @@ -92,11 +92,10 @@ import org.apache.wicket.markup.html.link.ResourceLink; import org.apache.wicket.markup.parser.XmlPullParser; import org.apache.wicket.markup.parser.XmlTag; import org.apache.wicket.mock.MockApplication; -import org.apache.wicket.mock.MockPageStore; +import org.apache.wicket.mock.MockPageManager; import org.apache.wicket.mock.MockRequestParameters; import org.apache.wicket.model.PropertyModel; import org.apache.wicket.page.IPageManager; -import org.apache.wicket.page.PageManager; import org.apache.wicket.protocol.http.AjaxEnclosureListener; import org.apache.wicket.protocol.http.IMetaDataBufferingWebResponse; import org.apache.wicket.protocol.http.WebApplication; @@ -2785,7 +2784,7 @@ public class BaseWicketTester @Override public IPageManager get() { - return new PageManager(new MockPageStore()); + return new MockPageManager(); } } diff --git a/wicket-devutils/src/main/java/org/apache/wicket/devutils/pagestore/PageStorePage.java b/wicket-devutils/src/main/java/org/apache/wicket/devutils/pagestore/PageStorePage.java index 0714fd7..63aed02 100644 --- a/wicket-devutils/src/main/java/org/apache/wicket/devutils/pagestore/PageStorePage.java +++ b/wicket-devutils/src/main/java/org/apache/wicket/devutils/pagestore/PageStorePage.java @@ -54,18 +54,27 @@ public class PageStorePage extends DevUtilsPage return false; } + /** +* Helper to find the {@link IPersistentPageStore} of the application. +* +* @return store or null if not available +*/ public static IPersistentPageStore getPersistentPageStore() { - IPageStore store = Session.get().getPageManager().getPageStore(); - while (true) { - if (store instanceof IPersistentPageStore) { - return (IPersistentPageStore)store; - } - - if (store instanceof DelegatingPageStore) { - store = ((DelegatingPageStore)store).getDelegate(); - } else { - break; + try { + IPageStore store = Session.get().getPageManager().getPageStore(); + while (true) { + if (store instanceof IPersistentPageStore) { + return (IPersistentPageStore)store; + } + + if (store instanceof DelegatingPageStore) { + store = ((DelegatingPageStore)store).getDelegate(); + } else { + break; + } } + } catch (UnsupportedOperationException ex) { + // no page store } return null;
[jira] [Created] (WICKET-6766) Keep page ids in tests like they where in Wicket 8
Sven Meier created WICKET-6766: -- Summary: Keep page ids in tests like they where in Wicket 8 Key: WICKET-6766 URL: https://issues.apache.org/jira/browse/WICKET-6766 Project: Wicket Issue Type: Improvement Components: wicket Affects Versions: 9.0.0-M5 Reporter: Sven Meier Assignee: Sven Meier Fix For: 9.0.0-M6 -- This message was sent by Atlassian Jira (v8.3.4#803005)