G06F11/2076

Freeing and utilizing unused inodes

Techniques are provided for freeing and utilizing unused inodes. For example, an operation, targeting a first storage object of a first node having a replication relationship with a second storage object of a second node, is intercepted. A replication operation is created as a replication of the operation. The operation is implemented upon the first storage object and the replication operation is implemented upon the second storage object. A determination is made that the replication operation uses an inode no longer used by storage objects of the second node. The inode targeted by the replication operation is freed and utilized based upon the inode being a leaf inode. If the inode is a stream directory inode, then data streams of the stream directory inode are moved under a new private inode and the stream directory inode is released.

Maintaining a synchronous replication relationship between two or more storage systems

Maintaining a synchronous replication relationship between two or more storage systems, including: receiving, by at least one of a plurality of storage systems across which a dataset will be synchronously replicated, timing information for at least one of the plurality of storage systems; and establishing, based on the timing information, a synchronous replication lease describing a period of time during which the synchronous replication relationship is valid, wherein a request to modify the dataset may only be acknowledged after a copy of the dataset has been modified on each of the storage systems.

Using host connectivity states to avoid queuing I/O requests
11803453 · 2023-10-31 · ·

Using host connectivity states to avoid queuing I/O requests: identifying a fault in data communications between a first storage system and a second storage system among a plurality of storage systems across which a dataset is synchronously replicated; updating, upon identifying the fault, an access state of a data communications path between first storage system and a host from an active state to a transitional state with respect to the dataset; and indicating, to the host, a first access state change.

Performance-Based Prioritization For Storage Systems Replicating A Dataset

Prioritizing highly performant storage systems for servicing a synchronously replicated dataset: detecting a communication fault between two or more storage systems that are synchronously replicating a dataset; identifying a preferred storage system for winning mediation, including determining that the preferred storage system winning mediation would result in better performance than other storage systems winning mediation; and requesting, by the preferred storage system, mediation from a mediation target.

Enabling data integrity checking and faster application recovery in synchronous replicated datasets
11829607 · 2023-11-28 · ·

One or more techniques and/or computing devices are provided for utilizing snapshots for data integrity validation and/or faster application recovery. For example, a first storage controller, hosting first storage, has a synchronous replication relationship with a second storage controller hosting second storage. A snapshot replication policy rule is defined to specify that a replication label is to be used for snapshot create requests, targeting the first storage, that are to be replicated to the second storage. A snapshot creation policy is created to issue snapshot create requests comprising the replication label. Thus a snapshot of the first storage and a replication snapshot of the second storage are created based upon a snapshot create request comprising the replication label. The snapshot and the replication snapshot may be compared for data integrity validation (e.g., determine whether the snapshots comprise the same data) and/or quickly recovering an application after a disaster.

Prioritizing highly performant storage systems for servicing a synchronously replicated dataset

Prioritizing highly performant storage systems for servicing a synchronously replicated dataset: detecting a communication fault between two or more storage systems that are synchronously replicating a dataset; identifying a preferred storage system for winning mediation, including determining that the preferred storage system winning mediation would result in better performance than other storage systems winning mediation; and requesting, by the preferred storage system, mediation from a mediation target.

Hierarchical consistency group for storage and associated methods thereof
11520490 · 2022-12-06 · ·

Methods and systems for using a hierarchical consistency group (CG) in a storage system are provided. A parent CG is associated with at least a first child CG having a plurality of storage volumes. An atomic application programming interface (API) provisions the parent CG and the first child CG by allocating storage and storing policies for the parent CG and the first CG. A storage service selected from a backup service, a replication service and a cloning service for the parent CG and the first CG is executed based on the stored policies.

PROVISIONING AND MANAGING REPLICATED DATA INSTANCES

A replicated database can be provisioned that provides primary and secondary replicas that can be provisioned in different data zones or geographical locations. The database can be installed on the primary replica, and both the primary and secondary replica can have installed a block level replication mechanism that allows any I/O operation to be replicated by between the primary and secondary replicas. Any failure or outage of the primary replica can be addressed by performing a failover operation to the secondary replica. A DNS name or other such approach can be used such that the name can be aliased to the secondary replica during a failover, such that there is no action needed on the part of the customer to utilize the “new” primary replica. The creation of the database and provisioning of the replicated instance can be initiated using a Web service call to a control environment. A replicated database can also be scaled according to storage or computing capacity with no disruption of service using a Web service call to the control environment.

Prioritizing Highly Performant Storage Systems For Servicing A Synchronously Replicated Dataset

Prioritizing highly performant storage systems for servicing a synchronously replicated dataset: detecting a communication fault between two or more storage systems that are synchronously replicating a dataset; identifying a preferred storage system for winning mediation, including determining that the preferred storage system winning mediation would result in better performance than other storage systems winning mediation; and requesting, by the preferred storage system, mediation from a mediation target.

Managing Storage Systems That Are Synchronously Replicating A Dataset

Managing storage systems that are synchronously replicating a dataset, including: detecting a change in membership to the set of storage systems synchronously replicating the dataset; and applying one or more membership protocols to determine a new set of storage systems to synchronously replicate the dataset, wherein the one or more membership protocols include a quorum protocol, an external management protocol, or a racing protocol, and wherein one or more I/O operations directed to the dataset are applied to a new set of storage systems.