-
Notifications
You must be signed in to change notification settings - Fork 699
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
change prepare worker to use fork instead of threads #1685
Merged
mrcnski
merged 58 commits into
paritytech:master
from
jpserrat:jpserrat-pvf-fork-instead-threads
Nov 14, 2023
Merged
Changes from 52 commits
Commits
Show all changes
58 commits
Select commit
Hold shift + click to select a range
6009a85
change prepare worker to use fork instead of threads
jpserrat cbed258
get total cpu time for current child
jpserrat 08c7766
fix fmt and int cast
jpserrat 40429a2
exit from child job on success for prepare worker
jpserrat 4300566
prepare worker: change entrypoint docstring, remove cpu time thread
jpserrat 92d25a2
Merge branch 'master' of github.com:paritytech/polkadot-sdk into jpse…
jpserrat d0a261a
prepare worker: use scale codec for encode and decode and fix docstring
jpserrat 9970ef8
Merge branch 'master' of github.com:paritytech/polkadot-sdk into jpse…
jpserrat 5f100d9
prepare worker: fix artifact result map
jpserrat 7b9421c
Merge branch 'master' of github.com:paritytech/polkadot-sdk into jpse…
jpserrat e64ff83
prepare worker: remove elapsed time
jpserrat 462d73c
prepare worker: fix result hadling when target os is linux
jpserrat 7ef719d
prepare worker: remove useless use of format!
jpserrat b0fa175
prepare worker: remove unused preparation_timeout
jpserrat 220f069
prepare worker: move pipe read before child wait
jpserrat 96de656
prepare worker: use getrusage for timeout
jpserrat ab51e84
Merge branch 'master' of github.com:paritytech/polkadot-sdk into jpse…
jpserrat 6c96fd9
Merge branch 'master' into jpserrat-pvf-fork-instead-threads
mrcnski fdb3462
Do some cleanup / addressing of issues
mrcnski f4bea3a
prepare worker: add docstring and pipe error from child process to pa…
jpserrat 6615598
prepare worker: closes stream in child process
jpserrat 2196c5f
prepare worker: fix prepare job
jpserrat 1682ed0
prepare worker: handle prepare job when target_os is linux
jpserrat 5c9b1d8
Merge branch 'master' into jpserrat-pvf-fork-instead-threads
mrcnski 962fccb
Some minor updates
mrcnski 45b0648
Merge branch 'master' into jpserrat-pvf-fork-instead-threads
mrcnski 7baf706
Clean up `fork` usage a bit
mrcnski 7687015
Update prepare-worker-syscalls list
mrcnski c584441
Merge branch 'master' into jpserrat-pvf-fork-instead-threads
mrcnski 0d5eb73
Add test when forked process dies (e.g. OOM, seccomp violation)
mrcnski a932a7c
Update for seccomp (add detection for job death); fix some errors
mrcnski 7e1414e
Some clarifications
mrcnski d9fcb5d
change execute worker from thread to fork
jpserrat f830b05
Fix bench
mrcnski d9fcc7c
cargo fmt
mrcnski 7d86911
Fix some issues with prepare worker
mrcnski 3b855d8
Fix some issues with execute worker/job; update errors
mrcnski 0c04842
Fix some test failures
mrcnski 87e96d0
add cpu monitor thread back to prepare and execute worker
jpserrat 9e3d65c
Merge branch 'jpserrat-pvf-fork-instead-threads' of github.com:Jpserr…
jpserrat de87f5f
Merge branch 'master' into jpserrat-pvf-fork-instead-threads
mrcnski 2e497a7
Merge remote-tracking branch 'Jpserrat/jpserrat-pvf-fork-instead-thre…
mrcnski 6bd7d20
cargo fmt
mrcnski 1fb8c13
Clean up error handling a bit
mrcnski 9c666b4
Fix some tests
mrcnski 8c7c519
Make error reporting more robust and secure
mrcnski af96dfa
Some fixes
mrcnski 67736c4
Make sure `pre_encoded_payloads` tests the correct type
mrcnski e25344c
Some fixes
mrcnski 203ce25
Fix `prechecking_out_of_memory` test
mrcnski de7d19d
Add tests, fix some more issues
mrcnski cec6477
Fix test
mrcnski 89cfd2e
Make naming of some types more clear
mrcnski 58b814c
Update execute worker syscalls
mrcnski a28cf2e
Update prepare worker syscalls
mrcnski b03c695
Address review comments
mrcnski 8070074
Add tests for num_threads of child processes
mrcnski 05555e7
Update impl guide
mrcnski File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.
Oops, something went wrong.
This file contains 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
This file contains 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
This file contains 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
This file contains 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
This file contains 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
This file contains 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
This file contains 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
Oops, something went wrong.
Oops, something went wrong.
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.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
It would be good to explicitly define somewhere what a "preparation job" is and how it is different from a "preparation worker". It's a new idea that may not be obvious to a new code reader.