Storage Server Lock Recovery via Alternate Client Links
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
The challenge of implementing lock recovery when a link between a client and a storage server is disconnected, leading to data inconsistency and reduced system reliability due to failed lock recovery attempts.
Innovation Solution
Establish direct links between multiple storage servers and a client, allowing lock recovery requests to be sent through alternative links if the primary link fails, ensuring successful re-locking and avoiding data inconsistency by expanding available channels for lock recovery.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If lock recovery request is sent through a specific link between storage server and client, then the link is utilized for communication, but if the link is faulty the lock recovery request cannot be sent causing lock recovery failure
Solution Approach 1:
The system segments the communication path by establishing multiple independent links between storage servers and clients. Instead of relying on a single link, the lock recovery request can be segmented and transmitted through alternative links if the primary link fails, thereby improving lock recovery reliability without significantly increasing overall system complexity.
Solution Approach 2:
The patent introduces an additional dimension to the communication architecture by creating redundant communication paths. When the primary link fails, the system transitions to using alternative links from other storage servers to the client, effectively adding a backup dimension to the communication channel that improves reliability.
2Reliability
If multiple links are established between storage servers and client, then available channels for lock recovery are expanded, but system complexity increases
Solution Approach 1:
Multiple links are established not only for lock recovery but for general data transmission between storage servers and clients. This multi-functional approach allows the same infrastructure to serve both regular operations and failure recovery scenarios, improving lock recovery reliability without proportionally increasing system complexity.
Solution Approach 2:
The system implements automatic link selection and failover mechanisms where the storage server autonomously determines which link to use for sending lock recovery requests based on link status. This self-service approach reduces the need for complex manual configuration and management of multiple links.
3Reliability
If lock recovery is implemented after server restart, then data consistency is maintained, but additional communication overhead is introduced
Solution Approach 1:
The system performs preliminary actions by pre-establishing multiple communication links before failures occur. When the storage server restarts and needs to send lock recovery requests, the pre-configured alternative links are immediately available for use, reducing the time required for recovery while maintaining data consistency.
Solution Approach 2:
The system implements feedback mechanisms where the storage server monitors link status and automatically adjusts its communication path based on real-time conditions. This feedback-driven approach ensures that lock recovery requests are sent through functional links, maintaining data consistency while minimizing recovery time by avoiding failed transmission attempts.
Data Source
Figure 1(a)~1(c)
Figure 2
Figure 3~4
AI summary
A lock recovery method, a storage server, a client, a device, and a system are disclosed, and relate to the computer field. The method includes: A first storage server locks target data based on a first lock request sent by a client. After the first server is restarted, the first server sends a lock recovery request to the client through a link between any one of a plurality of servers and the client, to indicate the client to recover locking on the first server. Further, the first server receives a second lock request sent by the client, and re-locks the target data indicated by the second lock request. In this way, the lock recovery request is sent through the link between any one of the plurality of servers and the client. Therefore, available channels for sending the lock recovery request are expanded, thereby increasing a success probability of sending the lock recovery request and ensuring successful lock recovery. This avoids a data inconsistency problem caused by a plurality of processes accessing the target data, and improves system reliability.