Patents by Inventor Niall J. McShane

Niall J. McShane has filed for patents to protect the following inventions. This listing includes patent applications that are pending as well as patents that have already been granted by the United States Patent and Trademark Office (USPTO).

  • Patent number: 11650883
    Abstract: A method includes, determining, for a batch rebuild process regarding a first batch threshold number of encoded data slices of a set of encoded data slices that need rebuilding, a target storage unit of target storage units of a set of storage units of the storage network is unavailable, where a data segment of data is dispersed storage error encoded into the set of encoded data slices, the set of encoded data slices is stored in the set of storage units, and the first batch threshold number of encoded data slices is to be stored in the target storage units. When the target storage unit becomes available before a second batch rebuild threshold number of encoded data slices of the set of encoded data slices is met, the method includes executing the batch rebuild process for the first batch threshold number of encoded data slices.
    Type: Grant
    Filed: April 27, 2022
    Date of Patent: May 16, 2023
    Assignee: Pure Storage, Inc.
    Inventors: Niall J. McShane, Andrew D. Baptist, Ravi V. Khadiwala
  • Publication number: 20220374162
    Abstract: A processing system of a storage network operates by receiving a write request associated with a data object; identifying dispersed storage error encoding parameters; and determining a number of available storage units. When the number of available storage units is determined to exceed a first number, the processing system operates by: determining a first write threshold number in accordance with the dispersed storage error encoding parameters; dispersed error encoding the data object to produce a first write threshold number of encoded data slices; and writing, to available storage units, the first write threshold number of encoded data slices.
    Type: Application
    Filed: August 8, 2022
    Publication date: November 24, 2022
    Applicant: Pure Storage, Inc.
    Inventors: Jason K. Resch, Andrew D. Baptist, Niall J. McShane, Greg R. Dhuse, Thomas F. Shirley, JR., Gregory Palinckx, Russell P. Kennedy, S. Christopher Gladwin, Robert C. McCammon, James Sherer
  • Publication number: 20220276787
    Abstract: A method includes detecting a memory error associated with a memory device of a storage unit of a set of storage units that is storing a set of encoded data slices, the storage unit services encoded data slice access messages from a processing unit, and the detecting occurs while attempting to access one or more of: a read threshold number (R) of encoded data slices, a decode threshold number (D) of encoded data slices needed to reconstruct the data segment, or a write threshold number (W) indicating a number of encoded data slices that must be accurately stored. The method further includes identifying an error descriptor code based on the detected memory error. The method further includes determining to perform an action based on the error descriptor code and executing the action to produce an action result.
    Type: Application
    Filed: April 29, 2022
    Publication date: September 1, 2022
    Applicant: Pure Storage, Inc.
    Inventors: Andrew D. Baptist, Ilir Iljazi, Niall J. McShane, Jason K. Resch
  • Publication number: 20220253357
    Abstract: A method includes, determining, for a batch rebuild process regarding a first batch threshold number of encoded data slices of a set of encoded data slices that need rebuilding, a target storage unit of target storage units of a set of storage units of the storage network is unavailable, where a data segment of data is dispersed storage error encoded into the set of encoded data slices, the set of encoded data slices is stored in the set of storage units, and the first batch threshold number of encoded data slices is to be stored in the target storage units. When the target storage unit becomes available before a second batch rebuild threshold number of encoded data slices of the set of encoded data slices is met, the method includes executing the batch rebuild process for the first batch threshold number of encoded data slices.
    Type: Application
    Filed: April 27, 2022
    Publication date: August 11, 2022
    Applicant: Pure Storage, Inc.
    Inventors: Niall J. McShane, Andrew D. Baptist, Ravi V. Khadiwala
  • Patent number: 11340993
    Abstract: A method includes, when a first batch rebuild threshold is met, a computing device of a dispersed storage network (DSN) determining whether target storage units of a set of storage units of the DSN are available, where a data segment of data is dispersed storage error encoded into a set of encoded data slices, a number of encoded data slices that need rebuilding corresponds to the first batch rebuild threshold, and the number of encoded data slices is to be stored in the target storage units. When a target storage unit is unavailable, the method continues by delaying a batch rebuild process until the target storage unit is available or a second batch rebuild threshold is met. When the target storage unit becomes available before the second batch rebuild threshold is met, the method continues by executing the batch rebuild process for the number of encoded data slices.
    Type: Grant
    Filed: May 31, 2019
    Date of Patent: May 24, 2022
    Assignee: Pure Storage, Inc.
    Inventors: Niall J. McShane, Andrew D. Baptist, Ravi V. Khadiwala
  • Patent number: 11283871
    Abstract: A method includes receiving a data access request regarding a data segment of a data object, where the data segment is one of a plurality of data types and is stored in accordance with a distributed agreement protocol (DAP). The method continues with determining a data type of the data segment. When the data type is a first data type, the method continues with obtaining a first set of DAP configuration information of a plurality of sets of DAP configuration information, where each set of DAP configuration information corresponds to the data type utilized in the storage network. The method continues with performing one or more distributed agreement protocol functions utilizing an identifier of the data segment and the corresponding set of DAP configuration information to select storage units of the storage network. The method continues with sending the data access request to the selected storage units for execution.
    Type: Grant
    Filed: April 29, 2020
    Date of Patent: March 22, 2022
    Assignee: Pure Storage, Inc.
    Inventors: Niall J. McShane, Tavis L. Potter, Jason K. Resch
  • Patent number: 10853173
    Abstract: A method begins by a processing module receiving a checked write slice request from a requesting entity. The method continues by determining that locally stored encoded data slices do not include the requested encoded data slice. The method continues by identifying an alternate location for the requested encoded data slice. The method continues by determining whether the alternate location is associated with storage of the encoded data slice. The method continues when the alternate location is associated with the storage of the encoded data slice, by issuing a favorable checked write slice response to a requesting entity. The method can include facilitating transfer of the requested encoded data slice from the alternate location to the storage unit for storage.
    Type: Grant
    Filed: April 3, 2019
    Date of Patent: December 1, 2020
    Assignee: PURE STORAGE, INC.
    Inventors: Asimuddin Kazi, Niall J. McShane, Manish Motwani, Michael J. Niedbala
  • Patent number: 10678642
    Abstract: A method begins by a processing module determining, by a first storage unit, that a storage growth rate is unfavorable for the first storage unit over an estimated time frame of reallocating at least a portion of encoded data slices stored in the first storage unit to one or more additional storage units. The method continues with the processing module when the storage growth rate is unfavorable, selecting an unfavorable growth rate abatement approach to include prioritizing new deletes and outgoing allocations such that estimated required storage capacity is less than available storage capacity of the first storage unit for the estimated time frame of the reallocation of the at least a portion of encoded data slices. The method continues with the processing module facilitating implementation of the unfavorable growth rate abatement approach.
    Type: Grant
    Filed: August 21, 2018
    Date of Patent: June 9, 2020
    Assignee: PURE STORAGE, INC.
    Inventors: Bart R. Cilfone, Ravi V. Khadiwala, Niall J. McShane, Manish Motwani, Jason K. Resch, Shikha Shree
  • Patent number: 10678639
    Abstract: Methods for use in a dispersed storage network (DSN) to retrieve encoded data from memory device of an impaired storage unit. In various embodiments, a computing device of the DSN issues requests to a plurality of storage units, including the impaired storage unit, to recover at least a decode threshold number of encoded data slices of a set of encoded data slices. When the impaired storage unit determines that it is not able to quickly retrieve the requested data slice for provision to the computing device, the impaired storage unit promptly issues a quasi-error response instead. In response to receiving less than the decode threshold number of encoded data slices and a quasi-error response, the computing device determines to issue another slice request(s) to another storage unit(s) and/or issue a continue request instructing the impaired storage unit to continue processing the request to recover the data slice stored therein.
    Type: Grant
    Filed: November 16, 2018
    Date of Patent: June 9, 2020
    Assignee: PURE STORAGE, INC.
    Inventors: Niall J. McShane, Jason K. Resch
  • Patent number: 10673946
    Abstract: A method includes identifying characteristics of a plurality of resources of one or more resource levels, where a data segment of a data object is one of a plurality of data types and is stored in memory of a dispersed storage network (DSN) according to a distributed agreement protocol (DAP). The method continues by generating a plurality of sets of DAP configuration information for the plurality of resource levels based on the characteristics. The method continues by receiving a data access request regarding a data segment and determining a data type of the data segment. When the data type is the first data type, the method continues with obtaining a first set of DAP configuration information and performing one or more distributed agreement protocol functions utilizing an identifier of the data and the first set of DAP configuration information to select storage units of the DSN.
    Type: Grant
    Filed: January 24, 2019
    Date of Patent: June 2, 2020
    Assignee: PURE STORAGE, INC.
    Inventors: Niall J. McShane, Tavis L. Potter, Jason K. Resch
  • Patent number: 10613936
    Abstract: A method for a dispersed storage network (DSN) begins by encoding a data segment of data to produce a set of encoded data slices including an information dispersal algorithm (IDA) width number of encoded data slices. The method continues by determining a number of storage locations, where the number of storage locations is less than the IDA width number, combining, for each storage location, a portion of at least two encoded data slices of the set of encoded data slices to produce a combined slice and sending the combined slice to the storage location for storage. When retrieving the data, the method includes combining slices associated with a set of encoded data slices, de-combining the combined slice, aggregating portions of common encoded data slices and decoding a decode threshold number of the encoded data slices of the set of encoded data slices to produce a recovered data segment.
    Type: Grant
    Filed: August 2, 2018
    Date of Patent: April 7, 2020
    Assignee: PURE STORAGE, INC.
    Inventors: Niall J. McShane, Jason K. Resch
  • Patent number: 10440107
    Abstract: A method for execution within a dispersed storage network (DSN), where the method begins by calculating, utilizing a first integrity check value function, an integrity check value of a first type for each encoded data slice of a set of encoded data slices to produce a corresponding set of integrity check values. The method continues by issuing, via a network, one or more sets of write slice requests 1-n to a set of storage units 1-n within the DSN, where the one or more sets of write slice requests include a plurality of sets of the encoded data slices and a corresponding plurality of sets of the integrity check values. The method continues, when verifying integrity of a received encoded data slice, by a storage unit calculating, utilizing a second integrity check value function, an integrity check value of a second type for the encoded data slice.
    Type: Grant
    Filed: January 11, 2017
    Date of Patent: October 8, 2019
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Niall J. McShane, Jason K. Resch, Praveen Viraraghavan, Ilya Volvovski
  • Publication number: 20190286525
    Abstract: A method includes, when a first batch rebuild threshold is met, a computing device of a dispersed storage network (DSN) determining whether target storage units of a set of storage units of the DSN are available, where a data segment of data is dispersed storage error encoded into a set of encoded data slices, a number of encoded data slices that need rebuilding corresponds to the first batch rebuild threshold, and the number of encoded data slices is to be stored in the target storage units. When a target storage unit is unavailable, the method continues by delaying a batch rebuild process until the target storage unit is available or a second batch rebuild threshold is met. When the target storage unit becomes available before the second batch rebuild threshold is met, the method continues by executing the batch rebuild process for the number of encoded data slices.
    Type: Application
    Filed: May 31, 2019
    Publication date: September 19, 2019
    Inventors: Niall J. McShane, Andrew D. Baptist, Ravi V. Khadiwala
  • Patent number: 10402395
    Abstract: A method for execution by a dispersed storage and task (DST) processing unit that includes a processor includes determining to access a set of storage units; identifying an information dispersal algorithm (IDA) width and a decode threshold number associated with the set of storage units; determining a number of available storage units of the set of storage units; determining a write threshold number and a read threshold number based on the number of available storage units and in accordance with a consistency approach; and accessing at least some of the available storage units utilizing at least one of the write and read threshold numbers.
    Type: Grant
    Filed: May 14, 2018
    Date of Patent: September 3, 2019
    Assignee: PURE STORAGE, INC.
    Inventors: Jason K. Resch, Andrew D. Baptist, Niall J. McShane, Greg R. Dhuse, Thomas F. Shirley, Jr., Gregory Palinckx, Russell P. Kennedy, S. Christopher Gladwin, Robert C. McCammon, James Sherer
  • Patent number: 10387063
    Abstract: A method includes retrieving a read threshold number of integrity check value list (ICVL) encoded data slices of a set of ICVL encoded data slices. The method further includes determining whether an appended ICVL of each ICVL encoded data slice of the read threshold number of ICVL encoded data slices substantially match. When the appended ICVL of one of the ICVL encoded does not substantially match the appended ICVL of other ICVL encoded data slices, the method further includes determining a likely cause for the mismatch. When the likely cause is missing a revision update, the method further includes initiate rebuilding of the encoded data slice portion. The method further includes generating an integrity check value for the rebuilt encoded data slice and updating the integrity check value list. The method further includes appending the updated integrity check value list to the rebuilt encoded data slice.
    Type: Grant
    Filed: February 20, 2018
    Date of Patent: August 20, 2019
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Niall J. McShane, Jason K. Resch, Ilya Volvovski
  • Publication number: 20190227868
    Abstract: A method begins by a processing module receiving a checked write slice request from a requesting entity. The method continues by determining that locally stored encoded data slices do not include the requested encoded data slice. The method continues by identifying an alternate location for the requested encoded data slice. The method continues by determining whether the alternate location is associated with storage of the encoded data slice. The method continues when the alternate location is associated with the storage of the encoded data slice, by issuing a favorable checked write slice response to a requesting entity. The method can include facilitating transfer of the requested encoded data slice from the alternate location to the storage unit for storage.
    Type: Application
    Filed: April 3, 2019
    Publication date: July 25, 2019
    Inventors: Asimuddin Kazi, Niall J. McShane, Manish Motwani, Michael J. Niedbala
  • Patent number: 10339006
    Abstract: A method begins by a processing module receiving a checked write slice request from a requesting entity. The method continues by determining that locally stored encoded data slices do not include the requested encoded data slice. The method continues by identifying an alternate location for the requested encoded data slice. The method continues by determining whether the alternate location is associated with storage of the encoded data slice. The method continues when the alternate location is associated with the storage of the encoded data slice, by issuing a favorable checked write slice response to a requesting entity. The method can include facilitating transfer of the requested encoded data slice from the alternate location to the storage unit for storage.
    Type: Grant
    Filed: June 6, 2018
    Date of Patent: July 2, 2019
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Asimuddin Kazi, Niall J. McShane, Manish Motwani, Michael J. Niedbala
  • Patent number: 10305989
    Abstract: A computing device includes an interface configured to interface and communicate with a dispersed storage network (DSN), a memory that stores operational instructions, and processing circuitry operably coupled to the interface and to the memory. The processing circuitry is configured to execute the operational instructions to perform various operations and functions. The computing device detects a potentially adverse storage issue with a memory device of a storage unit (SU) of set(s) of storage unit(s) (SU(s)). The computing device also determines whether to transfer at least one EDSs (associated with the memory device) to another memory device for temporary storage therein. Based on a determination not to transfer, the computing device identifies at least one alternate storage location and facilitates transfer of the at least one EDSs for temporary storage therein. When the potentially adverse storage issue has subsided, the computing device facilitates transfer of the at least one EDSs back.
    Type: Grant
    Filed: October 25, 2018
    Date of Patent: May 28, 2019
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Niall J. McShane, Ilya Volvovski, Randy D. Pfeifer, Andrew D. Baptist, Manish Motwani, Greg R. Dhuse
  • Publication number: 20190158596
    Abstract: A method includes identifying characteristics of a plurality of resources of one or more resource levels, where a data segment of a data object is one of a plurality of data types and is stored in memory of a dispersed storage network (DSN) according to a distributed agreement protocol (DAP). The method continues by generating a plurality of sets of DAP configuration information for the plurality of resource levels based on the characteristics. The method continues by receiving a data access request regarding a data segment and determining a data type of the data segment. When the data type is the first data type, the method continues with obtaining a first set of DAP configuration information and performing one or more distributed agreement protocol functions utilizing an identifier of the data and the first set of DAP configuration information to select storage units of the DSN.
    Type: Application
    Filed: January 24, 2019
    Publication date: May 23, 2019
    Inventors: Niall J. McShane, Tavis L. Potter, Jason K. Resch
  • Patent number: 10282118
    Abstract: A method for dispersed storage network (DSN) begins by detecting a memory error associated with a memory device of a storage unit. The method continues by identifying an error descriptor code based on the detected memory error. The method continues by determining whether to perform an intermediate action based on the error descriptor code. The method continues, when not performing the intermediate action, by issuing memory status information to the DSTN managing unit. The method continues, when performing the intermediate action, by performing the intermediate action to produce an action result. The method continues by determining whether the memory device is to remain in service based on one or more of the action result and the error descriptor code and, when the memory device is not to remain in service, issuing further status information to the DSTN managing unit to indicate the failed status indicator.
    Type: Grant
    Filed: November 3, 2016
    Date of Patent: May 7, 2019
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Andrew D. Baptist, Ilir Iljazi, Niall J. McShane, Jason K. Resch