Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Investigate transfer of Suggestion DB to IDE as binary not as JSON #5570

Open
3 tasks
JaroslavTulach opened this issue Feb 7, 2023 · 4 comments
Open
3 tasks

Comments

@JaroslavTulach
Copy link
Member

JaroslavTulach commented Feb 7, 2023

Summary

Would it be more effective to transfer suggestion DB (tracked as #5068) & co. as binary, not as JSON? That's a question asked by startup performance measurements as of Feb 6, 2023.

Value

Can we speed things up by not sending JSON, but binary data? For example the suggestion DB (tracked as #5068) could be sent as binary. The drawback is that the IDE would have to be modified to accept the protocol change. Sticking to JSON allows us to modify just the engine part.

Specification

Prototype sending the suggestion DB as binary, not as JSON.

Acceptance Criteria & Test Cases

Related

@github-project-automation github-project-automation bot moved this to ❓New in Issues Board Feb 7, 2023
@JaroslavTulach JaroslavTulach changed the title Investigate transfer data to IDE as binary not as JSON Investigate transfer of data to IDE as binary not as JSON Feb 7, 2023
@JaroslavTulach JaroslavTulach changed the title Investigate transfer of data to IDE as binary not as JSON Investigate transfer of Suggestion DB to IDE as binary not as JSON Feb 7, 2023
@jdunkerley jdunkerley added this to the Beta Release milestone Feb 7, 2023
@jdunkerley jdunkerley moved this from ❓New to 📤 Backlog in Issues Board Feb 7, 2023
@jdunkerley jdunkerley assigned JaroslavTulach and unassigned Frizi Feb 21, 2023
@JaroslavTulach
Copy link
Member Author

Working on #5698 I find out that the transfer of suggestion DB is actually happening in binary channel:

Debugging confirms the expectation. The data seem to be sent as binary.

@github-project-automation github-project-automation bot moved this from 📤 Backlog to 🟢 Accepted in Issues Board Feb 21, 2023
@farmaazon
Copy link
Contributor

I see many messages sent through json-rpc connection:
image
I can easily read them, so they probably are not binary. Or is it some web socket magic?

Are you sure you're not confusing suggestion db updates with visualization value updates? AFAIK, only the latter are sent through binary channel.

@github-project-automation github-project-automation bot moved this from 🟢 Accepted to ❓New in Issues Board Feb 21, 2023
@JaroslavTulach
Copy link
Member Author

Thanks @farmaazon - there is double serialization/deserialization inside of single(!) LS/engine process - maybe I got confused by that.

@wdanilo
Copy link
Member

wdanilo commented Feb 21, 2023

@JaroslavTulach I fully agree. All data should be in a binary format, minimized, and as small as possible.

@jdunkerley jdunkerley moved this from ❓New to 📤 Backlog in Issues Board Feb 21, 2023
@jdunkerley jdunkerley assigned 4e6 and unassigned 4e6 Feb 24, 2023
@jdunkerley jdunkerley moved this from 📤 Backlog to ❓New in Issues Board Feb 28, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

6 participants