-
Notifications
You must be signed in to change notification settings - Fork 4.3k
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
Set a timeout on kube pod process integration tests to prevent a hang #7087
Conversation
@@ -148,7 +152,7 @@ public void testKillingWithoutHeartbeat() throws Exception { | |||
server.stop(); | |||
|
|||
// waiting for process | |||
process.waitFor(); | |||
process.waitFor(2, TimeUnit.MINUTES); |
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.
Can we leave this as-is? Internally we call process.waitFor();
and I'd like to make sure the same thing is tested here in case behavior diverges
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 should timeout if the test takes too long anyways, right?
…airbytehq#7087) * Improved logging for troubleshooting. * Limiting the number of tests for faster iteration testing. * Re-enable tests * Removed unnecessary logging from troubleshooting * Formatting * whitespace * Eliminated duplicate timeout. * Whitespace/formatting * Show logs when a sync job fails during testing. * Formatting * Use alphanumeric random string, not bytes, to test paths
What
Sets a timeout for KubePodProcessIntegrationTest because it uses some infinite-loop child processes, and if the test case fails, those need to be aborted for the overall script to progress. This protected from a hang condition that is sometimes observed.
How
Adds a class-level timeout to the integration test. The duration of the wait time (2 minutes) is an estimate and open to change.