Messages during workspace startup are not displayed in order
See original GitHub issueDescribe the bug
When multiple messages are sent to the Che server in a short period (e.g. from the plugin broker), they can be displayed out of order in the workspace loading screen. I don’t know if this is an issue on the che-server side or in che-go-jsonrpc
.
This behavior requires us a workaround on the plugin-broker side: https://github.com/eclipse/che-plugin-broker/commit/9d4f58b6e38a1cb61ff15108e0683e41d5d1f950
Steps to reproduce
- Replace artifacts broker in a current Che deployment with
amisevsk/che-plugin-artifacts-broker:eventbus
:
This image is slightly modified from master: https://github.com/eclipse/che-plugin-broker/compare/master...amisevsk:event-bus-testCHE_WORKSPACE_PLUGIN__BROKER_ARTIFACTS_IMAGE=amisevsk/che-plugin-artifacts-broker:eventbus
- Start a workspace, note logs like
Starting plugin artifacts broker Test ordering: 04 - ouaqjowzahunexxoy Test ordering: 01 - vbazpcssuignanngbljf Test ordering: 03 - ksmmbkxfwbbtylaszo Test ordering: 02 - xnpkrzvpfzojlljnkvj Test ordering: 05 - lnkijrcbirxgeglq Test ordering: 06 - eimhjbqytyqyycg Test ordering: 09 - lfvpftxwydvy Test ordering: 08 - vparthcqhuxln Test ordering: 07 - sznpfkgklzzylw Test ordering: 10 - awfltjfnsrj Test ordering: 11 - kbcbgkbnlz Test ordering: 14 - adzmnka Test ordering: 12 - zkzidgodq Test ordering: 13 - ohzpgvym Test ordering: 15 - jvqwfi Test ordering: 17 - tdei Test ordering: 16 - vuqld Test ordering: 18 - ltl Test ordering: 19 - nn Test ordering: 20 - e Cleaning /plugins dir
- Check artifacts broker logs (
oc logs -f <workspace-pod> -c che-plugin-artifacts-broker-eventbus
) and note that calls are logged in order.
Expected behavior
Messages from plugin broker are displayed in the same order they are sent.
Issue Analytics
- State:
- Created 4 years ago
- Comments:9 (9 by maintainers)
Top Results From Across the Web
General Settings Window - Sierra Chart
If there is no new market data, Trade Order or Position data, ... Show On-Chart Status Messages (Global Settings >> General Settings >>...
Read more >Troubleshoot issues accessing your WorkSpace from the ...
The client window expands and displays a white screen before displaying a "Disconnected" message. No other error message appears.
Read more >Facing Strange Issues With Anypoint Studio And Why You ...
The behaviour ranges from Anypoint Studio crashing randomly; to odd or unusual warning or error messages appearing in the Studio log file; ...
Read more >How do I prevent Eclipse from hanging on startup?
MESSAGE The workspace exited with unsaved changes in the previous session; refreshing workspace to recover changes. Googling reveals someone's suggestion that I ...
Read more >Applications Not Appearing in Workspace (9.3.1) — oracle-tech
Hello all, We recently upgraded to system 9.3.1 and intermittently users are not seeing the applications when logging into Workspace.
Read more >Top Related Medium Post
No results found
Top Related StackOverflow Question
No results found
Troubleshoot Live Code
Lightrun enables developers to add logs, metrics and snapshots to live code - no restarts or redeploys required.
Start FreeTop Related Reddit Thread
No results found
Top Related Hackernoon Post
No results found
Top Related Tweet
No results found
Top Related Dev.to Post
No results found
Top Related Hashnode Post
No results found
Top GitHub Comments
won’t be fixed
@benoitf I just remember some conversation where I’ve been told that we can not guarantee messages order via WebSocket. Now, I’ve checked and there is no reason for WebSocket to change order messages during delivery.
So, the behavior we observe may be a result of Java Threads or as Angel mentioned - our jsonRPC library implementation since we have something like: Browser <-WebSocket_1-> RemoteSubscriptionManager <-> EventService <-> BrokerService <-WebSocket_2-> PluginBroker
So, on browser we see WebSocket_1, to check whether it’s Che Server or che-json-rpc go the library, it’s needed to check WebSocket_2 content.