Server Crash Prevention via Resource Registration List
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Intelligence server crashes occur during resource management operations, particularly when crawl or indexing operations are conducted on resources that have been released, leading to crashes and system instability.
Innovation Solution
Implementing a registration process that tracks resource usage through a registration list, denying resource management requests while resources are actively used, generating stop usage requests to deregister users, and approving unloading requests only after successful deregistration, thereby preventing crashes and ensuring resource availability.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If a crawl or indexing operation is conducted on resources during cleanup or shut down process, then the search index can be updated, but the server may crash due to accessing released memory
Solution Approach 1:
The system performs preliminary registration of resource users before allowing crawl or indexing operations. The registration list is updated in advance to record which resources are currently in use, preventing subsequent operations from accessing released memory. This preliminary tracking action ensures that indexing operations only target valid, currently allocated resources.
Solution Approach 2:
The system implements a feedback mechanism where resource allocation and release operations update the registration list, which in turn provides feedback to crawl and indexing operations. Before conducting an indexing operation, the system checks the registration list to verify resource validity, creating a closed-loop control that prevents crashes by responding to the current state of resource allocation.
2Loss of energy
If resources are released during cleanup process, then memory can be freed for other uses, but crawl operations may target invalid resources causing crashes
Solution Approach 1:
The registration list serves as an intermediary data structure between resource management operations and crawl/indexing operations. When resources are released during cleanup, the registration list is updated to reflect the new state. This intermediary mechanism decouples the resource release process from the crawl operations, allowing memory to be freed while preventing invalid access through the registration check.
3Reliability
If a registration tracking system is implemented, then server crashes can be prevented, but system complexity increases
Solution Approach 1:
The registration list serves multiple functions simultaneously: it tracks active resource users, prevents crashes by validating resources before crawl operations, and manages the lifecycle of resource allocation. By making this single data structure multi-functional, the system achieves reliable crash prevention without proportionally increasing complexity, as one mechanism addresses multiple concerns.
Data Source
AI summary
Disclosed are methods, systems, and computer-readable medium for preventing system crashes, including loading a resource from a real resource location; receiving a registration request from a resource user; registering the resource user by updating a resource owner registration list to indicate the resource user registration; receiving a first unload request and determining that the resource user is registered by accessing the registration list; upon determining that the resource user is registered, denying the first unload request; generating a stop use request; transmitting the stop use request to the resource user; receiving a deregistration request from the resource user, based on the stop use request; deregistering the resource user by updating the resource owner registration list; receiving a second unload request after deregistering the resource user; and approving the second unload request to unload the resource.


