-
Notifications
You must be signed in to change notification settings - Fork 1.1k
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
Command migration for single shard, multi-shard and custom commands #1276
Command migration for single shard, multi-shard and custom commands #1276
Conversation
Looks like a conflict came up. @AshwinKul28 please feel free to resolve conflict and merge immediately. |
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.
Amazing work, Cant wait to see it merged. left comments more like notes for future.
@apoorvyadav1111 @JyotinderSingh any idea why LPush tests are failing? Also HTTP context cancelled error is coming out of nowhere :( |
Thanks for the massive effort @AshwinKul28, and thanks for all the debugging help @apoorvyadav1111. We are now much closer to a fully multi-threaded system! |
This PR migrates multiple DiceDB commands to support both multi-shard and single-shard scenarios. The migration follows a structured flow for each command type as described below.
Multi-Shard Commands
The following commands are migrated with support for multi-shard processing:
For the COPY and RENAME commands, the flow includes preprocessing, followed by decomposition and composition steps to manage multi-shard data efficiently. For the remaining multi-shard commands, only decomposition and composition steps are involved.
Single-Shard Commands
The following commands are migrated with support for single-shard processing:
These single-shard commands follow a scatter-gather approach with a straightforward flow, where each command operates directly within the target shard, without the need for complex decomposition.