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

Call TSP endpoint to close an experiment when closing it in the UI #1033

Draft
wants to merge 1 commit into
base: master
Choose a base branch
from

Conversation

bhufmann
Copy link
Collaborator

@bhufmann bhufmann commented Nov 2, 2023

With this it's possible to close an experiment on the server. Upon reception of the command the server can dispose allocated resources hence the client doesn't need them anymore.

This change follows the TSP update provided by:
eclipse-cdt-cloud/trace-server-protocol#95

Fixes #1024

It needs eclipse-cdt-cloud/tsp-typescript-client#90 to compile.

Signed-off-by: Bernd Hufmann bernd.hufmann@ericsson.com

With this it's possible to close an experiment on the server. Upon
reception of the command the server can dispose allocated resources
hence the client doesn't need them anymore.

This change follows the TSP update provided by:
eclipse-cdt-cloud/trace-server-protocol#95

Fixes eclipse-cdt-cloud#1024

Signed-off-by: Bernd Hufmann <bernd.hufmann@ericsson.com>
@bhufmann
Copy link
Collaborator Author

bhufmann commented Nov 6, 2023

There is on issue with this approach to close the experiment, because it introduces a state in the server and it becomes stateful. For example, if the UI client close an experiment and a CLI client is running an analysis, the analysis will fail. Vice versa, it a cli client close the experiment while the UI client is actually analyzing the experiment, it will fail.

More over, the Trace Compass server, generates row IDs for Timegraph and XY data providers, that are different after closing and reopening a trace. So, if the UI client opens the experiment and a Timegraph view and then the CLI client closes the experiment, even though, the experiment is re-opened when the UI client queries the Timegraph data provider again, the IDs to fetch row data are different and the query will result in empty graph. The UI client would have to close the view and re-open the view to make it work again.

So, to support closing of experiments and release back-end resources, concurrent queries, ongoing queries as well as IDs have to generated correctly.

@bhufmann bhufmann marked this pull request as draft April 3, 2024 15:04
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Dispose experiment/trace back-end resources when closing an experiment from the UI
1 participant