fix(recording): already-stopped external recordings should be archived immediately (backport #1674)#1681
Open
mergify[bot] wants to merge 2 commits into
Open
fix(recording): already-stopped external recordings should be archived immediately (backport #1674)#1681mergify[bot] wants to merge 2 commits into
mergify[bot] wants to merge 2 commits into
Conversation
1e8eef0 to
77616cf
Compare
Member
|
/build_test |
|
Workflow started at 6/30/2026, 4:44:30 PM. View Actions Run. |
Member
|
/build_test |
|
Workflow started at 6/30/2026, 4:46:31 PM. View Actions Run. |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Welcome to Cryostat! 👋
Before contributing, make sure you have:
mainbranch[chore, ci, docs, feat, fix, test]To recreate commits with GPG signature
git fetch upstream && git rebase --force --gpg-sign upstream/mainFixes: #1670
Description of the change:
Cryostat detects "external" recordings on targets - ones that were started by some other mechanism than Cryostat initiating them.
-XX:StartFlightRecordingwould be a common source. When these are detected and if they have a fixed duration, Cryostat sets up a timed job to run when the recording ends so that Cryostat can update the database entity representing that recording, as well as to copy the recording content to archives.Critically, the current implementation filters out detected recordings that have a fixed duration that has already elapsed and is already
STOPPED. In that case, the database entity representing the recording is correctly in theSTOPPEDstate, but the job for archiving the recording wouldn't be scheduled. If the user doesn't manually archive that recording or take some other action to preserve the data, then the recorded data would be lost.How to manually test:
./smoketest.bash -O -t gameserverto run a sample application that has three-XX:StartFlightRecordingexamples: one with 10s duration, one 30s, and one continuous. This application's Agent registration will take some time, longer than 10 seconds, so by the time the application is discovered by Cryostat at least one recording will have already completed and will be initially synched in theSTOPPEDstate. Prior to this patch this recording would never be automatically archived, but now it should be ~2 seconds after the target is discovered.This is an automatic backport of pull request fix(recording): already-stopped external recordings should be archived immediately #1674 done by Mergify.