Patents by Inventor Zachary J. Mark

Zachary J. Mark 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).

  • Publication number: 20170185483
    Abstract: A method begins by a processing module of a computing device receiving a most current revision value for a data element, where a revision value for the data element is generated based on a current time of a storing device. The method continues with the processing module generating a new revision value for a currently revised version of the data element based on a current time of the computing device and comparing the current time of the new revision value with the current time of the most current revision value. When the current time of the new revision value precedes the current time of the most current revision value, the method continues with the processing module adjusting the new revision value to produce an adjusted revision value and facilitating storage of the currently revised version of the data element having the adjusted revision value.
    Type: Application
    Filed: March 16, 2017
    Publication date: June 29, 2017
    Inventors: Andrew Baptist, Greg Dhuse, Ilya Volvovski, Jason K. Resch, Zachary J. Mark, Bart Cilfone
  • Publication number: 20170185614
    Abstract: To identify slice errors, a processing module of a computing device in a dispersed storage network (DSN) sends first list digest requests to at least first and second dispersed storage (DS) units. The requests indicates a first range of slice names to include in a first list digest. The processing module receives digest responses from the DS units, and compares the digest responses to determine whether they identify the same slices. If they do not identify the same slices, the processing module sends second list digest requests indicating a sub-range of the first range of slice names to include in second list digests. The sub-range continues to be narrowed until the processing module identifies at least one sub-range of slice names where a slice error exists.
    Type: Application
    Filed: July 31, 2014
    Publication date: June 29, 2017
    Applicant: CLEVERSAFE, INC.
    Inventors: Sebastien Vas, Zachary J. Mark, Jason K. Resch
  • Publication number: 20170139775
    Abstract: A distributed storage integrity system in a dispersed storage network includes a scanning agent and a control unit. The scanning agent identifies an encoded data slice that requires rebuilding, wherein the encoded data slice is one of a plurality of encoded data slices generated from a data segment using an error encoding dispersal function. The control unit retrieves at least a number T of encoded data slices needed to reconstruct the data segment based on the error encoding dispersal function. The control unit is operable to reconstruct the data segment from at least the number T of the encoded data slices and generate a rebuilt encoded data slice from the reconstructed data segment. The scanning agent is located in a storage unit and the control unit is located in the storage unit or in a storage integrity processing unit, a dispersed storage processing unit or a dispersed storage managing unit.
    Type: Application
    Filed: July 15, 2014
    Publication date: May 18, 2017
    Applicant: CLEVERSAFE, INC.
    Inventors: Greg Dhuse, Andrew Baptist, Zachary J. Mark, Jason K. Resch, Ilya Volvovski
  • Publication number: 20170063993
    Abstract: A method includes sending a set of check request messages to a set of storage units. A first check request message of the set of check request messages includes a first group of slice names that includes a first slice name from each of a plurality of sets of slice names, and the plurality of sets of slices names corresponds to a plurality of sets of encoded data slices. The method further includes receiving, by a first storage unit, the first check request message, determining a first group of slice information, and sending first check response message, where the first check response message includes the first group of slice information. The method further includes interpreting the first check response message in light of the first group of slice names to identify one or more encoded data slices of the plurality of sets of encoded data slices in need of rebuilding.
    Type: Application
    Filed: November 10, 2016
    Publication date: March 2, 2017
    Inventors: Andrew Baptist, Wesley Leggette, Jason K. Resch, Zachary J. Mark, Ilya Volvovski, Greg Dhuse
  • Patent number: 9582459
    Abstract: A method begins generating a plurality of list digest request frames. Each list digest request frames includes a payload section and a protocol header. The payload section includes a start slice name field, an end slice name, and a response count field. The protocol header includes a payload length field and an operation code field to indicate the list digest request operation. The method continues by outputting the list digest request frames to storage units of a dispersed storage network.
    Type: Grant
    Filed: March 24, 2014
    Date of Patent: February 28, 2017
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Zachary J. Mark, Ilya Volvovski
  • Publication number: 20170054809
    Abstract: A method begins by a processing module generating a payload of a dispersed storage network frame regarding a conclusive write request operation by generating one or more slice name fields of a payload to include one or more slice names corresponding to one or more write commit responses of a write request operation, wherein the conclusive write request operation is a conclusive phase of the write request operation. The method continues with the processing module generating one or more slice revision numbering fields of the payload, wherein each slice revision numbering field includes a slice revision number corresponding to an associated slice name of the one or more slice names. The method continues with the processing module generating a protocol header of the DSN frame by generating a payload length field of the protocol header to include a payload length and generating remaining fields of the protocol header.
    Type: Application
    Filed: November 8, 2016
    Publication date: February 23, 2017
    Inventors: Andrew Baptist, Wesley Leggette, Jason K. Resch, Zachary J. Mark, Ilya Volvovski
  • Patent number: 9563507
    Abstract: A method begins by a processing module storing a set of encoded data slices in storage units. A data segment of data is encoded, in accordance with dispersed storage error encoding parameters, to produce the set of encoded data slices. The dispersed storage error encoding parameters include a decode threshold number and a pillar width number, which is at least twice the decode threshold number. The method continues with the processing module processing a first request for retrieval of the data segment by retrieving a first sub-set of encoded data slices, which includes the decode threshold number, and decoding them to produce a first recovered data segment. The method continues with the processing module processing a second request for retrieval of the data segment by retrieving a second sub-set of encoded data slices, which includes the decode threshold number, and decoding them to produce a second recovered data segment.
    Type: Grant
    Filed: April 6, 2015
    Date of Patent: February 7, 2017
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Greg Dhuse, Ilya Volvovski, Zachary J. Mark, Sebastien Vas, Andrew Baptist
  • Patent number: 9524267
    Abstract: A method begins by a processing module generating a payload section of a dispersed storage network (DSN) frame regarding a check request operation by generating one or more slice name fields of the payload section to include one or more slice names corresponding to one or more encoded data slices and generating a transaction number field of the payload section to include a transaction number corresponding to the check request operation. The method continues with the processing module generating a protocol header of the DSN frame by generating a payload length field of the protocol header to include a payload length that represents a length of the payload section and generating remaining fields of the protocol header.
    Type: Grant
    Filed: February 10, 2014
    Date of Patent: December 20, 2016
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Andrew Baptist, Wesley Leggette, Jason K. Resch, Zachary J. Mark, Ilya Volvovski, Greg Dhuse
  • Patent number: 9514090
    Abstract: A method begins by a processing module generating a payload of a dispersed storage network frame regarding a conclusive write request operation by generating one or more slice name fields of a payload to include one or more slice names corresponding to one or more write commit responses of a write request operation, wherein the conclusive write request operation is a conclusive phase of the write request operation. The method continues with the processing module generating one or more slice revision numbering fields of the payload, wherein each slice revision numbering field includes a slice revision number corresponding to an associated slice name of the one or more slice names. The method continues with the processing module generating a protocol header of the DSN frame by generating a payload length field of the protocol header to include a payload length and generating remaining fields of the protocol header.
    Type: Grant
    Filed: January 6, 2014
    Date of Patent: December 6, 2016
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Andrew Baptist, Wesley Leggette, Jason K. Resch, Zachary J. Mark, Ilya Volvovski
  • Publication number: 20160342631
    Abstract: A method includes sending a set of digest list requests to a set of storage units regarding integrity data for a set of encoded data slices. The method further includes receiving, in response to the integrity data requests, the corresponding integrity data from at least some storage units of the set of storage units regarding at least some of the encoded data slices of the set of encoded data slices to produce a set of integrity data. The method further includes determining whether an inconsistency exists in the set of integrity data. When the inconsistency exists, the method further includes identifying an inconsistent encoded data slice of the at least some of the encoded data slices is inconsistent with other encoded data slices of the at least some of the encoded data slices. The method further includes updating the inconsistent encoded data slice to resolve the inconsistency.
    Type: Application
    Filed: August 5, 2016
    Publication date: November 24, 2016
    Inventor: Zachary J. Mark
  • Patent number: 9411810
    Abstract: A method for execution by a DS processing unit begins with the DS processing unit receiving a plurality of integrity data, which was generated by a plurality of DS storage units regarding one or more data slices of one or more pluralities of data slices. The method continues with the DS processing unit evaluating the received integrity data. The method continues with the DS processing unit requesting naming information of the one or more pluralities of data slices when the evaluation of the received integrity data yields unfavorable results. The method continues with the DS processing unit receiving the naming information from the plurality of DS storage units. The method continues with the DS processing unit evaluating the received naming information to identify at least one data slice of the one or more of pluralities of data slices having a data inconsistency.
    Type: Grant
    Filed: April 2, 2010
    Date of Patent: August 9, 2016
    Assignee: International Business Machines Corporation
    Inventor: Zachary J. Mark
  • Patent number: 9235549
    Abstract: A method begins by generating list range requests. A list range request includes a payload section and a protocol header section. The payload section includes a start slice name field regarding a start slice name of a slice name range; an end slice name field regarding an end slice name of the slice name range; and a maximum response count field regarding a maximum slice name response count. The protocol header includes a payload length field that represents a length of the payload section and an operation code field to indicate the list range request operation. The list range request includes a request to provide a list of slices names corresponding to stored encoded data slices associated with slice names within the slice name range. The method continues by sending the range requests to storage units of the DSN.
    Type: Grant
    Filed: June 23, 2014
    Date of Patent: January 12, 2016
    Assignee: International Business Machines Corporation
    Inventors: Andrew Baptist, Wesley Leggette, Jason K. Resch, Zachary J. Mark, Ilya Volvovski, Greg Dhuse, Manish Motwani
  • Patent number: 9235350
    Abstract: A data slice to be stored in a dispersed storage unit of the dispersed storage system is received. A plurality of data blocks are generated from the data slice and metadata are generated associated with each of the plurality of data blocks. A data file is generated based on the plurality of data blocks. A metadata file is generated based on the metadata associated with the plurality of data blocks. The metadata file and the data file are stored in at least one memory of the dispersed storage unit.
    Type: Grant
    Filed: March 30, 2010
    Date of Patent: January 12, 2016
    Assignee: International Business Machines Corporation
    Inventor: Zachary J. Mark
  • Patent number: 9137022
    Abstract: A method begins by a processing module sending list digest requests to a set of dispersed storage (DS) units. The method continues with the processing module receiving list digest responses from at least some of the set of DS units and determining whether an inconsistency exists between first and second list digest responses of the list digest responses. The method continues with the processing module requesting at least a portion of each of the slice name information lists from first and second DS units of the set of DS units and identifying a slice name information error associated with the inconsistency based on the at least a portion of each of the slices name information lists of the first and second DS units when the inconsistency exists between first and second list digest responses of the list digest responses.
    Type: Grant
    Filed: December 30, 2013
    Date of Patent: September 15, 2015
    Assignee: Cleversafe, Inc.
    Inventors: Sebastien Vas, Zachary J. Mark
  • Publication number: 20150212887
    Abstract: A method begins by a processing module storing a set of encoded data slices in storage units. A data segment of data is encoded, in accordance with dispersed storage error encoding parameters, to produce the set of encoded data slices. The dispersed storage error encoding parameters include a decode threshold number and a pillar width number, which is at least twice the decode threshold number. The method continues with the processing module processing a first request for retrieval of the data segment by retrieving a first sub-set of encoded data slices, which includes the decode threshold number, and decoding them to produce a first recovered data segment. The method continues with the processing module processing a second request for retrieval of the data segment by retrieving a second sub-set of encoded data slices, which includes the decode threshold number, and decoding them to produce a second recovered data segment.
    Type: Application
    Filed: April 6, 2015
    Publication date: July 30, 2015
    Applicant: CLEVERSAFE, INC.
    Inventors: Greg Dhuse, Ilya Volvovski, Zachary J. Mark, Sebastien Vas, Andrew Baptist
  • Patent number: 9009575
    Abstract: A method begins by a processing module identifying a set of encoded data slices that have been created in accordance with a dispersed storage error encoding function having a decode threshold equal to or less than half of a number encoded data slices in the set of encoded data slices. The method continues with the processing module identifying a first sub-set of encoded data slices having a non-current revision level and identifying a second sub-set of encoded data slices having a more-current revision level. When a number of encoded data slices of the second sub-set of encoded data slices is greater than or equal to the decode threshold and when a number of encoded data slices of the first sub-set of encoded data slices is less than the decode threshold, the method continues with the processing module facilitating rebuilding of the first sub-set of encoded data slices.
    Type: Grant
    Filed: June 18, 2013
    Date of Patent: April 14, 2015
    Assignee: Cleversafe, Inc.
    Inventors: Greg Dhuse, Ilya Volvovski, Zachary J. Mark, Sebastien Vas, Andrew Baptist
  • Patent number: 8938591
    Abstract: A new data block to be stored in the dispersed storage system is received. When it is determined that a previous data segment contains sufficient space for the new data block, the previous data segment is retrieved from a plurality of dispersed storage units. A revised data segment is generated by aggregating the new data block with at least one existing data block of the previous data segment. A plurality of slices are generated for the revised data segment. The plurality of slices are stored in the plurality of dispersed storage units.
    Type: Grant
    Filed: March 30, 2010
    Date of Patent: January 20, 2015
    Assignee: Cleversafe, Inc.
    Inventors: Zachary J. Mark, S. Christopher Gladwin
  • Publication number: 20140372695
    Abstract: A new data block to be stored in the dispersed storage system is received. When it is determined that a previous data segment contains sufficient space for the new data block, the previous data segment is retrieved from a plurality of dispersed storage units. A revised data segment is generated by aggregating the new data block with at least one existing data block of the previous data segment. A plurality of slices are generated for the revised data segment. The plurality of slices are stored in the plurality of dispersed storage units.
    Type: Application
    Filed: March 30, 2010
    Publication date: December 18, 2014
    Applicant: CLEVERSAFE, INC.
    Inventors: Zachary J. Mark, S. Christopher Gladwin
  • Publication number: 20140344228
    Abstract: A method begins by determining slice names of encoded data slices stored within a dispersed storage network (DSN). The method continues by determining dispersed storage (DS) units within the DSN storing a set of the encoded data slices associated with the slice names. The method continues by determining one or more revision numbers associated with the slice names. The method continues by determining if same slice names have different associated revision numbers and, when the same slice names have different associated revision numbers, adding the slice names to a revision mailbox for subsequent correction.
    Type: Application
    Filed: August 4, 2014
    Publication date: November 20, 2014
    Applicant: CLEVERSAFE, INC.
    Inventors: Jason K. Resch, Zachary J. Mark, Andrew Baptist, Ilya Volvovski
  • Publication number: 20140344318
    Abstract: To identify slice errors, a processing module of a computing device in a dispersed storage network (DSN) sends first list digest requests to at least first and second dispersed storage (DS) units. The requests indicates a first range of slice names to include in a first list digest. The processing module receives digest responses from the DS units, and compares the digest responses to determine whether they identify the same slices. If they do not identify the same slices, the processing module sends second list digest requests indicating a sub-range of the first range of slice names to include in second list digests. The sub-range continues to be narrowed until the processing module identifies at least one sub-range of slice names where a slice error exists.
    Type: Application
    Filed: July 31, 2014
    Publication date: November 20, 2014
    Applicant: CLEVERSAFE, INC.
    Inventors: Sebastien Vas, Zachary J. Mark, Jason K. Resch