-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/22776/#review46213
-----------------------------------------------------------
Hi Andrew
Thanks again for your contributions!
I am going over your patch now, but it looks like there's a compilation issue:
compile:
[echo] Compiling box
[javac] Compiling 338 source files to /Users/vega/wave/build/src
[javac]
/Users/vega/wave/src/org/waveprotocol/box/server/rpc/ServerRpcProvider.java:56:
error: cannot find symbol
[javac] import org.eclipse.jetty.server.nio.SelectChannelConnector;
[javac] ^
[javac] symbol: class SelectChannelConnector
[javac] location: package org.eclipse.jetty.server.nio
[javac] Note: Some input files use or override a deprecated API.
[javac] Note: Recompile with -Xlint:deprecation for details.
[javac] 1 error
- Yuri Zelikov
On June 19, 2014, 1:27 p.m., Andrew Kaplanov wrote:
>
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/22776/
> -----------------------------------------------------------
>
> (Updated June 19, 2014, 1:27 p.m.)
>
>
> Review request for wave and Yuri Zelikov.
>
>
> Repository: wave
>
>
> Description
> -------
>
> Wiab profiling.
>
> The basis of profiling code was taken from the Splash project
> (https://code.google.com/p/google-wave-splash/).
>
> Features appended to Splash profiling code:
> 1. Current authentification session context.
> 2. Cross-thread profiling (one request is executed in several threads
> simultaneously).
> 3. Client-side profiling.
> 4. GWT profiling.
> 5. Loading of scope through static object (instead of custom Guice scope).
> 6. Profiling popup dialog.
>
> Server code changes:
> 1. Used only own-designed RequestScopeExecutor and
> ScheduledRequestScopeExecutor, transferring profiling context to the executed
> task.
> 2. Profiling context is set in following places:
> - RequestScopeFilter - for Servlet requests
> - WebSocketChannel - for WebSocket requests
>
> Client code changes:
> 1. Added GWT profiling:
> - Added handling of event.__gwtStatsEvent
> - Added own listener, as defined in
> https://code.google.com/p/gwt-debug-panel/wiki/GettingStarted.
> 2. Used only own-designed custom executor BrowserBackedScheduler,
> transferring profiling context to the executed task.
> 3. Profiling context is set in following places:
> - Keyboard events - FocusManager.dispatch
> - Mouse events - EventDispatcherPanel.ChangeHandlers.dispatch
> - Client RPC requests - RemoteWaveViewService
>
> Statistics recorded on the server:
> 1. Accumulated statistics for task calls for current session and whole
> program:
> - Methods of objects, created by Guice Inject, and annotated as @Timed.
> - Code from Timing.start() or Timing.startRequest() to Timer.stop().
> 2. Statistics for last 100 requests with execution tree for current session
> and whole program:
> - Code from Timing.startRequest() to Timer.stop().
> 3. Statistics for static fields, annotated as @Stat.
>
> Statistics recorded on the client:
> 1. Accumulated statistics for task calls:
> - Code from Timing.start() or Timing.startRequest() to Timer.stop().
> 2. Statistics for last 100 requests with execution tree:
> - Code from Timing.startRequest() to Timer.stop().
>
> How to display statistics:
> 1. In order to show profiling dialog in the client, press and release
> one-by-one Ctrl, Alt and Ctrl keys.
> 2. To show only server statistics go to URL <wave_server_url>/speedz.
>
>
> Diffs
> -----
>
> README.profiling PRE-CREATION
> build.xml 83b2040
> server-config.xml 4f1d94f
> src/org/waveprotocol/box/server/CoreSettings.java 5b3fd0c
> src/org/waveprotocol/box/server/ServerMain.java 31b6d8c
> src/org/waveprotocol/box/server/ServerModule.java 029f40f
> src/org/waveprotocol/box/server/StatModule.java PRE-CREATION
> src/org/waveprotocol/box/server/authentication/SessionManager.java 097fd28
> src/org/waveprotocol/box/server/executor/ExecutorAnnotations.java
> PRE-CREATION
> src/org/waveprotocol/box/server/executor/ExecutorsModule.java PRE-CREATION
> src/org/waveprotocol/box/server/executor/RequestScopeExecutor.java
> PRE-CREATION
> src/org/waveprotocol/box/server/executor/ScheduledRequestScopeExecutor.java
> PRE-CREATION
> src/org/waveprotocol/box/server/gxp/WaveClientPage.gxp a27f35f
> src/org/waveprotocol/box/server/persistence/file/FileDeltaStore.java
> 46b00bf
> src/org/waveprotocol/box/server/rpc/SearchServlet.java 89c0f42
> src/org/waveprotocol/box/server/rpc/ServerRpcProvider.java 6332174
> src/org/waveprotocol/box/server/rpc/WebSocketChannel.java a7d2579
> src/org/waveprotocol/box/server/stat/MultiThreadedRequestScope.java
> PRE-CREATION
> src/org/waveprotocol/box/server/stat/RequestScopeFilter.java PRE-CREATION
> src/org/waveprotocol/box/server/stat/StatuszServlet.java PRE-CREATION
> src/org/waveprotocol/box/server/stat/TimingFilter.java PRE-CREATION
> src/org/waveprotocol/box/server/stat/TimingInterceptor.java PRE-CREATION
> src/org/waveprotocol/box/server/waveserver/LookupExecutor.java 07479a5
>
> src/org/waveprotocol/box/server/waveserver/LucenePerUserWaveViewHandlerImpl.java
> effb5b5
> src/org/waveprotocol/box/server/waveserver/WaveMap.java d9e01c6
> src/org/waveprotocol/box/server/waveserver/WaveServerImpl.java ecfbbb3
> src/org/waveprotocol/box/server/waveserver/WaveServerModule.java e26dcfc
> src/org/waveprotocol/box/stat/AsyncCallContext.java PRE-CREATION
> src/org/waveprotocol/box/stat/ExecutionNode.java PRE-CREATION
> src/org/waveprotocol/box/stat/ExecutionTree.java PRE-CREATION
> src/org/waveprotocol/box/stat/Measurement.java PRE-CREATION
> src/org/waveprotocol/box/stat/RequestScope.java PRE-CREATION
> src/org/waveprotocol/box/stat/SessionContext.java PRE-CREATION
> src/org/waveprotocol/box/stat/SingleThreadedRequestScope.java PRE-CREATION
> src/org/waveprotocol/box/stat/Stat.gwt.xml PRE-CREATION
> src/org/waveprotocol/box/stat/Stat.java PRE-CREATION
> src/org/waveprotocol/box/stat/StatRecorder.java PRE-CREATION
> src/org/waveprotocol/box/stat/StatRenderer.java PRE-CREATION
> src/org/waveprotocol/box/stat/StatService.java PRE-CREATION
> src/org/waveprotocol/box/stat/StatStore.java PRE-CREATION
> src/org/waveprotocol/box/stat/Statistic.java PRE-CREATION
> src/org/waveprotocol/box/stat/Timed.java PRE-CREATION
> src/org/waveprotocol/box/stat/Timer.java PRE-CREATION
> src/org/waveprotocol/box/stat/Timing.java PRE-CREATION
> src/org/waveprotocol/box/stat/TimingReceiver.java PRE-CREATION
> src/org/waveprotocol/box/webclient/WebClient.gwt.xml 63516ac
> src/org/waveprotocol/box/webclient/WebClientProd.gwt.xml 6c6e8d5
> src/org/waveprotocol/box/webclient/client/RemoteWaveViewService.java
> 923c481
> src/org/waveprotocol/box/webclient/client/WaveWebSocketClient.java 92e3fd8
> src/org/waveprotocol/box/webclient/client/WebClient.java c012ee6
> src/org/waveprotocol/box/webclient/stat/Stat.gwt.xml PRE-CREATION
> src/org/waveprotocol/box/webclient/stat/dialog/StatDialog.java PRE-CREATION
> src/org/waveprotocol/box/webclient/stat/gwtevent/GwtStatisticsEvent.java
> PRE-CREATION
>
> src/org/waveprotocol/box/webclient/stat/gwtevent/GwtStatisticsEventDispatcher.java
> PRE-CREATION
>
> src/org/waveprotocol/box/webclient/stat/gwtevent/GwtStatisticsEventSystem.java
> PRE-CREATION
> src/org/waveprotocol/box/webclient/stat/gwtevent/GwtStatisticsHandler.java
> PRE-CREATION
> src/org/waveprotocol/box/webclient/stat/gwtevent/StatisticsEvent.java
> PRE-CREATION
>
> src/org/waveprotocol/box/webclient/stat/gwtevent/StatisticsEventDispatcher.java
> PRE-CREATION
>
> src/org/waveprotocol/box/webclient/stat/gwtevent/StatisticsEventListener.java
> PRE-CREATION
> src/org/waveprotocol/box/webclient/stat/gwtevent/StatisticsEventSystem.java
> PRE-CREATION
> src/org/waveprotocol/wave/client/Stages.java 52ade26
> src/org/waveprotocol/wave/client/scheduler/BrowserBackedScheduler.java
> 6cc57e6
> src/org/waveprotocol/wave/client/scheduler/TaskInfo.java 23c3f97
> src/org/waveprotocol/wave/client/wavepanel/event/EventDispatcherPanel.java
> cb0822a
> src/org/waveprotocol/wave/client/wavepanel/event/FocusManager.java 461a3ce
>
> src/org/waveprotocol/wave/client/wavepanel/view/dom/full/WavePanelResourceLoader.java
> 2f16cb2
> src/org/waveprotocol/wave/client/widget/dialog/Dialog.css PRE-CREATION
> src/org/waveprotocol/wave/client/widget/dialog/Dialog.gwt.xml PRE-CREATION
> src/org/waveprotocol/wave/client/widget/dialog/Dialog.java PRE-CREATION
> src/org/waveprotocol/wave/client/widget/dialog/DialogBox.java PRE-CREATION
> test/org/waveprotocol/box/server/rpc/RpcTest.java 689d5c6
>
> test/org/waveprotocol/box/server/waveserver/LucenePerUserWaveViewProviderTest.java
> b4d02e4
>
> Diff: https://reviews.apache.org/r/22776/diff/
>
>
> Testing
> -------
>
>
> Thanks,
>
> Andrew Kaplanov
>
>