Abstract:
Apparatus and method insuring that data objects used to maintain state information for shared data at a local central processing complex (CPC) are coherent with respect to state information maintained at a structured external storage facility (SES) over a link is valid. An error detector is attached to the CPC side of the link for detecting errors on the link, and, when an error is detected, setting a error state pending (ESP) latch to indicate that the link has failed and that the shared data in the local data object may be invalid because a message invalidating the data may not have been received by the CPC. In data processing operations, the ESP latch is interrogated by a central processor in the CPC to determine the health of the message path to the SES facility. A local cache vector reflecting the validity of the shared data in the local cache may then be interrogated to determine if the shared data in the local cache is valid. If a healthy path has continuously existed and the vector indicates that the local cache data is valid, the integrity of the data can be relied on.
Abstract:
A system for maintaining the reliability of shared data structures, such as message queues, in a multi-processor data processing system is disclosed. The system includes a plurality of virtual memory-type processor units in which the processors share virtual memory and can access each one of a plurality of virtual memory segments by the same virtual memory address. The system assures the reliability of system-wide shared data structures in the event of a failure of one of the processors by maintaining at least two copies of each data structure and by maintaining two copies of a table used in locating such data structures. The system updates copies of such shared data structures that are stored in at least two different processing units with the results of a specified data processing transaction, which may have affected the information in such data structures, in a manner to insure that either identical updates occur or no update occurs. The system further insures that any changes that might have occurred in the information stored in the data structure prior to the end of an aborted transaction is returned to the initial state to permit the transaction to be retried.
Abstract:
A transactional support system is provided which is capable of enhancing a basic operating system so that a multitude of databases can be simultaneously processed. The transactional support system provides coordination services which designate the boundaries indicating the success or failure of an executed transaction; concurrency services provide a locking mechanism for controlling access to resources and deadlock detection in the event of the imposition mutual locks; and recovery services maintain a log which ensures that the state of the resource is preserved in the event of any failures. Further, enhanced terminal handling and transaction scheduling support the large number of terminals used in a transactional system, by utilizing methods which relieve the resource consumption associated with a large number terminals. These methods include multiple-terminal process support, transaction validation, prioritization, execution queue, action queue and availability.
Abstract:
In one embodiment, a system for managing a virtualization environment includes host machines implementing a virtualization environment, a plurality of clusters of the host machines, a virtualized file server (VFS) comprising a plurality of file server virtual machines (FSVMs), and a VFS cluster manager (CM) configured to distribute storage items among the clusters and receive cluster storage statistics for one or more shares of the VFS. The CM is further configured to, in response to a request from a first FSVM to identify a storage location for a storage item, identify a cluster at which the storage item is to be located based on the cluster storage statistics, identify a second FSVM at which the storage item is to be located based on compute usage statistics of one or more FSVMs in the identified cluster, and send an address of the second FSVM to the first FSVM.
Abstract:
In one embodiment, a system for managing a virtualization environment includes a set of host machines, each of which includes a hypervisor, virtual machines, and a virtual machine controller, and a data migration system configured to identify one or more existing storage items stored at one or more existing File Server Virtual Machines (FSVMs) of an existing virtualized file server (VFS). For each of the existing storage items, the data migration system is configured to identify a new FSVMs of a new VFS based on the existing FSVM, send a representation of the storage item from the existing FSVM to the new FSVM, such that representations of storage items are sent between different pairs of FSVMs in parallel, and store a new storage item at the new FSVM, such that the new storage item is based on the representation of the existing storage item received by the new FSVM.
Abstract:
In one embodiment, a system for managing communication connections in a virtualization environment includes a plurality of host machines implementing a virtualization environment, wherein each of the host machines includes a hypervisor, at least one user virtual machine (user VM), and a distributed file server that includes file server virtual machines (FSVMs) and associated local storage devices. Each FSVM and associated local storage device are local to a corresponding one of the host machines, and the FSVMs conduct I/O transactions with their associated local storage devices based on I/O requests received from the user VMs. Each of the user VMs on each host machine sends each of its representative I/O requests to an FSVM that is selected by one or more of the FSVMs for each I/O request based on a lookup table that maps a storage item referenced by the I/O request to the selected one of the FSVMs.
Abstract:
A system that implements a data storage service may store data on behalf of storage service clients. The system may maintain data in multiple replicas of various partitions that are stored on respective computing nodes in the system. The system may employ a single master failover protocol, usable when a replica attempts to become the master replica for a replica group of which it is a member. Attempting to become the master replica may include acquiring a lock associated with the replica group, and gathering state information from the other replicas in the group. The state information may indicate whether another replica supports the attempt (in which case it is included in a failover quorum) or stores more recent data or metadata than the replica attempting to become the master (in which case synchronization may be required). If the failover quorum includes enough replicas, the replica may become the master.
Abstract:
Techniques are provided for performing automated operations to enable first-failure data capture functionality during initialization of multiple lockstep processors. Following a hardware reset of two lockstep processors, an indication is received of one or more crosscheck errors regarding the operation of the two lockstep processors. In response to the crosscheck errors, crosscheck first-failure data capture (FFDC) data is saved to one or more memory areas that are persistent across a hardware reset, and it is determined whether a predefined reset threshold has been satisfied. Responsive to determining that the predefined reset threshold has been satisfied, the crosscheck FFDC data from the one or more persistent memory areas is analyzed and one or more crosscheck initialization codes are responsively generated. An additional hardware reset is initiated.
Abstract:
Examples perform live migration of VMs from a source host to a destination host using destructive consistency breaking operations. The disclosure makes a record of a consistency group of VMs on storage at a source host as a fail-back in the event of failure. The source VMs are live migrated to the destination host, disregarding consistency during live migration, and potentially violating the recovery point objective. After live migration of all of the source VMs, consistency is automatically restored at the destination host and the live migration is declared a success.
Abstract:
Embodiments relate to supporting transaction data committed to a stable storage. Committed data in the cluster is stored in the persistent cache layer and replicated and stored in the cache layer of one or more secondary nodes. One copy is designated as a master copy and all other copies are designated as replica, with an exclusive write lock assigned to the master and a shared write lock extended to the replica. An acknowledgement of receiving the data is communicated following confirmation that the data has been replicated to each node designated to receive the replica. Managers and a director are provided to support management of the master copy and the replicas within the file system, including invalidation of replicas, fault tolerance associated with failure of a node holding a master copy, recovery from a failed node, recovered of the file system from a power failure, and transferring master and replica copies within the file system.