-
Notifications
You must be signed in to change notification settings - Fork 83
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
Introduce testing for identifying regressions which can introduce ttrpc deadlocks #184
Comments
The objective is to test the latest code against older versions ( To test different versions of ttrpc against the latest code, we encounter a challenge with circular dependencies, which are not supported by Go. Using nested Go modules could bypass this limitation, but it introduces a significant drawback: we would only be able to stress test changes when a new tag is created in the package. Consequently, this approach prevents testing changes in each PR. If a potential deadlock is identified in a release, we would need to scan through all the changes to locate the regression, making debugging more time-consuming and less efficient. Proposed ApproachThe proposed approach involves creating a Steps Involved in the Approach:Development of the Stress Tool:
Backporting the Stress Tool:Once the stress tool is created, it will be backported into the older releases against which we need to test the latest code. Script for Automation:A script will be developed in the mainline codebase to automate the testing process. This script will handle the following tasks:
Integration with CI/CD Pipeline:
|
@dmcgowan Please do take a look and provide feedback when you can! |
As detailed in #72, in the past,
ttrpc
has encountered deadlocks on the server side or client side when mismatching versions were used.v1.1.0
v1.2.0
v1.2.4
While the current version of
ttrpc
does not display any deadlocks, we want to introduce a CI regression test which can test the current code against the following older versions in both server and client scenarios:v1.0.2
v1.1.0
v1.2.0
v1.2.4
latest
This issue is filed for discussions related to the plan of how such a matrix testing can be introduced for
ttrpc
.The text was updated successfully, but these errors were encountered: