-
Notifications
You must be signed in to change notification settings - Fork 139
[Graphite MQ] Draft PR GROUP:spec_68731c (PRs 3580, 3588, 3622, 3628, 3629, 3630, 3633) #3634
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
[Graphite MQ] Draft PR GROUP:spec_68731c (PRs 3580, 3588, 3622, 3628, 3629, 3630, 3633) #3634
Conversation
|
The latest updates on your projects. Learn more about Vercel for GitHub.
3 Skipped Deployments
|
Code Review - Graphite MQ PR (3580, 3588, 3622, 3628, 3629, 3630, 3633)This PR combines 7 separate changes. Overall the code quality is good, but there are several areas that need attention before merging. 🐛 Critical Issues1. Potential Data Race in revive_workflows_inner (engine/packages/gasoline/src/db/kv/debug.rs:1241-1389)The function uses parallelization with FuturesUnordered but doesn't prevent overlapping ID ranges when parallelization is greater than 1. The boundary calculations may allow adjacent chunks to process the same workflow ID. The last chunk should go to u128::MAX to avoid overlap. 2. Unbounded String Allocation (engine/packages/gasoline/src/db/kv/debug.rs:1343)The code allocates a new lowercased string for every workflow error encountered. If error messages are large or there are many workflows, this could cause excessive memory usage. Consider normalizing error_like once at the beginning instead.
|
| Severity | Count |
|---|---|
| Critical | 2 |
| Important | 3 |
| Performance | 3 |
| Security | 1 |
| Style | 2 |
Recommendation: Fix critical issues 1 and 2 before merging. Address important issues if time permits.
🔍 Files Needing Attention
- engine/packages/gasoline/src/db/kv/debug.rs - Critical fixes needed
- engine/packages/gasoline/src/db/kv/mod.rs - Verify all callers updated
- Cargo.toml - Fix formatting consistency
- Add tests for workflow revival functionality
Overall Assessment: The changes improve error handling and add useful functionality, but the critical issues in revive_workflows_inner need to be addressed before merging to prevent potential data corruption or excessive resource usage.
This draft PR was created by the Graphite merge queue.
Trunk will be fast forwarded to the HEAD of this PR when CI passes, and the original PRs will be closed.
The following PRs are included in this draft PR: