Patents by Inventor ADAM MICHAEL GRAY

ADAM MICHAEL GRAY 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: 20210354123
    Abstract: A cover member for use in the treatment of a sample on a substrate is disclosed. The cover member has fluid flow features and is adapted for use in an instrument, such as a laboratory instrument. The cover member comprises at least one orientation feature detectable by the instrument for ascertaining an orientation of the cover member. An automated method for detecting orientation of a cover member in a sample treatment assembly is also disclosed, in which a processor compares data corresponding to one or more images collected from the sample treatment assembly, with data representing a reference image to determine if a cover member is in the sample treatment assembly.
    Type: Application
    Filed: July 30, 2021
    Publication date: November 18, 2021
    Applicant: LEICA BIOSYSTEMS MELBOURNE PTY LTD
    Inventors: Adam Michael GRAY, Michael Stephen GLYNN
  • Patent number: 11097277
    Abstract: A cover member for use in the treatment of a sample on a substrate is disclosed. The cover member has fluid flow features and is adapted for use in an instrument, such as a laboratory instrument. The cover member comprises at least one orientation feature detectable by the instrument for ascertaining an orientation of the cover member. An automated method for detecting orientation of a cover member in a sample treatment assembly is also disclosed, in which a processor compares data corresponding to one or more images collected from the sample treatment assembly, with data representing a reference image to determine if a cover member is in the sample treatment assembly.
    Type: Grant
    Filed: August 30, 2013
    Date of Patent: August 24, 2021
    Assignee: LEICA BIOSYSTEMS MELBOURNE PTY LTD
    Inventors: Adam Michael Gray, Michael Stephen Glynn
  • Patent number: 10671585
    Abstract: A method begins by a dispersed storage (DS) processing module storing a data portion in a dispersed storage network (DSN), where the data portion is associated with a set of data index keys, a version index key, and with a set of portion index keys. The method continues with the DS processing module traversing, based on the set of data index keys, a plurality of index structures to determine whether an object retrieval structure exists for the data portion. When the object retrieval structure exists, the method continues with the DS processing module updating the object retrieval structure by determining whether a version record exists that corresponds to the version index key and when the version record exists, creating, within the version record, a new data portion record for the data portion to include an identifier of the data portion and the set of portion index keys.
    Type: Grant
    Filed: July 16, 2013
    Date of Patent: June 2, 2020
    Assignee: Pure Storage, Inc.
    Inventors: Greg Dhuse, Ilya Volvovski, Adam Michael Gray, Andrew Baptist
  • Patent number: 10334046
    Abstract: A method begins by a dispersed storage (DS) processing module dividing a very large data object into a plurality of data regions and generating a data object storage tracking table that includes sections for identifying one or more data regions that are available or unavailable for retrieval. The method continues with the DS processing module dividing a first data region into data segments and disperse storage error encoding the data segments to produce sets of encoded data slices. The method continues with the DS processing module sending DSN write requests regarding storing the sets of encoded data slices to storage units and when at least a write threshold number of write responses is received for each of the sets of encoded data slices, updating the data object storage tracking table to indicate that the first data region is available for retrieval.
    Type: Grant
    Filed: July 21, 2016
    Date of Patent: June 25, 2019
    Assignee: International Business Machines Corporation
    Inventors: Wesley Leggette, Jason K. Resch, Yogesh Ramesh Vedpathak, Sebastien Vas, Eric Gunnar Smith, Adam Michael Gray
  • Patent number: 10089344
    Abstract: A method begins by a dispersed storage (DS) processing module receiving a request for a data index list that identifies data objects having one or more common attributes, searching a hierarchical ordered index structure to identify a data object level index node corresponding to a first data object boundary match, and determining whether the data object level index node corresponds to a second data object boundary match. When the data object level index node does not correspond to the second data object boundary match, the method continues with the DS processing module searching an adjacent data object level index node to determine whether the adjacent data object level index node corresponds to the second data object boundary match. When the adjacent data object level index node corresponds to the second data object boundary match, the method continues with the DS processing module generating the data index list.
    Type: Grant
    Filed: February 25, 2013
    Date of Patent: October 2, 2018
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Greg Dhuse, Wesley Leggette, Adam Michael Gray, Ilya Volvovski, Andrew Baptist
  • Patent number: 10013444
    Abstract: A method begins by a dispersed storage (DS) processing module determining to create or modify a data object index key of a data object regarding an attribute of a plurality of attribute categories. The method continues with the DS processing module entering a process to update a data object level index node by retrieving the data object level index node from a set of dispersed storage (DS) units. The method continues with the DS processing module updating and encoding the data object level index node to produce a set of slices. The method continues with the DS processing module generating a set of write commands to write the set of slices to the set of DS units. When less than a threshold number of the set of write commands are successfully executed by the set of DS units, repeating the process to update the data object level index node.
    Type: Grant
    Filed: February 25, 2013
    Date of Patent: July 3, 2018
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Greg Dhuse, Wesley Leggette, Adam Michael Gray, Ilya Volvovski, Andrew Baptist, Jason K. Resch
  • Patent number: 9817611
    Abstract: A method includes issuing, by a first computing device, first write requests for a first version of the data object. The method further includes issuing, by a second computing device, second write requests for a second version of the data object. The method further includes sending, by each of a first group of storage units, a first write response to the first and second computing devices. The method further includes sending, by each of a second group of storage units, a second write response to the first and second computing devices. The method further includes determining, by the first and second computing devices, whether a threshold number of first or second write responses were received. When the threshold number of the first write responses were received, the method further includes continuing, by the first computing device, the first write operation and establishing, by the second computing device, a write retry.
    Type: Grant
    Filed: November 15, 2016
    Date of Patent: November 14, 2017
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Adam Michael Gray, Jason K. Resch
  • Patent number: 9727427
    Abstract: A method begins with storage units receiving a request to transfer a copy of a set of encoded data slices from two or more source virtual storage vaults to a destination virtual storage vault. The method continues with each storage unit obtaining a slice transfer map and determining whether the storage unit supports one of the two or more source virtual storage vaults. For each supporting storage unit, the method continues with each supporting storage unit determining, based on the slice transfer map, a sub-set of encoded data slices of the set of encoded data slices that is stored within the one of the two or more source virtual storage vaults by the supporting storage unit. The method continues with the supporting storage unit sending the sub-set of encoded data slices to a corresponding storage unit that is supporting the destination virtual storage vault.
    Type: Grant
    Filed: October 29, 2015
    Date of Patent: August 8, 2017
    Assignee: International Business Machines Corporation
    Inventors: Adam Michael Gray, Greg Dhuse, Andrew Baptist, Ravi Khadiwala, Wesley Leggette, Scott Michael Horan, Franco Vincent Borich, Bart Cilfone, Daniel Scholl
  • Patent number: 9715504
    Abstract: A method includes receiving a request to retrieve a data object. The method further includes identifying an index file based on the search attribute. The method further includes entering a loop that includes: determining an address for a current index file; retrieving encoded data slices based on the address; decoding the encoded data slices to reproduce the current index file; determining whether the current index file includes the address for the data object; when the current index file does not include the address for the data object: identifying the other index file based on the search attribute; and repeating the loop for the other index file; and when the current index file includes the address for the data object, exiting the loop. The method further includes retrieving encoded data slices based on the address. The method further includes decoding the encoded data slices to recapture the data object.
    Type: Grant
    Filed: July 18, 2016
    Date of Patent: July 25, 2017
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Greg Dhuse, Wesley Leggette, Adam Michael Gray, Ilya Volvovski, Andrew Baptist
  • Publication number: 20170060480
    Abstract: A method includes issuing, by a first computing device, first write requests for a first version of the data object. The method further includes issuing, by a second computing device, second write requests for a second version of the data object. The method further includes sending, by each of a first group of storage units, a first write response to the first and second computing devices. The method further includes sending, by each of a second group of storage units, a second write response to the first and second computing devices. The method further includes determining, by the first and second computing devices, whether a threshold number of first or second write responses were received. When the threshold number of the first write responses were received, the method further includes continuing, by the first computing device, the first write operation and establishing, by the second computing device, a write retry.
    Type: Application
    Filed: November 15, 2016
    Publication date: March 2, 2017
    Inventors: Adam Michael Gray, Jason K. Resch
  • Patent number: 9542239
    Abstract: A method to resolve conflicts arising from substantially concurrent write requests regarding a data object begins by a computing device of a dispersed storage network (DSN) issuing a write request for a dispersed storage error encoded version of the data object to storage units of the DSN. The method continues with the computing device receiving write responses, each including either a lock indication or a non-lock indication and conflict information. The method continues with the computing device determining whether at least a write threshold number of received write responses include the lock indication. When less than the at least a write threshold number of write responses have been received that include the lock indication, the method continues with the computing device processing the conflict information to identify one or more other write requests that have a higher priority than the write request and establishing a write request retry time frame.
    Type: Grant
    Filed: March 4, 2015
    Date of Patent: January 10, 2017
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Adam Michael Gray, Jason K. Resch
  • Patent number: 9521197
    Abstract: A method begins by a dispersed storage (DS) processing module dividing a very large data object into a plurality of data regions and generating a data object storage tracking table that includes sections for identifying one or more data regions that are available or unavailable for retrieval. The method continues with the DS processing module dividing a first data region into data segments and disperse storage error encoding the data segments to produce sets of encoded data slices. The method continues with the DS processing module sending DSN write requests regarding storing the sets of encoded data slices to storage units and when at least a write threshold number of write responses is received for each of the sets of encoded data slices, updating the data object storage tracking table to indicate that the first data region is available for retrieval.
    Type: Grant
    Filed: October 17, 2013
    Date of Patent: December 13, 2016
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Wesley Leggette, Jason K. Resch, Yogesh Ramesh Vedpathak, Sebastien Vas, Eric Gunnar Smith, Adam Michael Gray
  • Patent number: 9507786
    Abstract: A method begins by a dispersed storage (DS) processing module receiving a request to retrieve a data object based on a search attribute. The method continues with the DS processing module retrieving and decoding a set of encoded index data slices to reconstruct an index file. The method continues with the DS processing module identifying a child index file, retrieving and decoding a set of encoded child index data slices to reconstruct the child index file, and determining whether the child index file includes a dispersed storage network (DSN) address for the data object. When the child index file includes the DSN address for the data object, the method continues with the DS processing module retrieving a plurality of sets of encoded data slices based on the DSN address and decoding the plurality of sets of encoded data slices to recapture the data object.
    Type: Grant
    Filed: December 18, 2012
    Date of Patent: November 29, 2016
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Greg Dhuse, Wesley Leggette, Adam Michael Gray, Ilya Volvovski, Andrew Baptist
  • Publication number: 20160328412
    Abstract: A method includes receiving a request to retrieve a data object. The method further includes identifying an index file based on the search attribute. The method further includes entering a loop that includes: determining an address for a current index file; retrieving encoded data slices based on the address; decoding the encoded data slices to reproduce the current index file; determining whether the current index file includes the address for the data object; when the current index file does not include the address for the data object: identifying the other index file based on the search attribute; and repeating the loop for the other index file; and when the current index file includes the address for the data object, exiting the loop. The method further includes retrieving encoded data slices based on the address. The method further includes decoding the encoded data slices to recapture the data object.
    Type: Application
    Filed: July 18, 2016
    Publication date: November 10, 2016
    Inventors: Greg Dhuse, Wesley Leggette, Adam Michael Gray, Ilya Volvovski, Andrew Baptist
  • Publication number: 20160328297
    Abstract: A method begins by a dispersed storage (DS) processing module dividing a very large data object into a plurality of data regions and generating a data object storage tracking table that includes sections for identifying one or more data regions that are available or unavailable for retrieval. The method continues with the DS processing module dividing a first data region into data segments and disperse storage error encoding the data segments to produce sets of encoded data slices. The method continues with the DS processing module sending DSN write requests regarding storing the sets of encoded data slices to storage units and when at least a write threshold number of write responses is received for each of the sets of encoded data slices, updating the data object storage tracking table to indicate that the first data region is available for retrieval.
    Type: Application
    Filed: July 21, 2016
    Publication date: November 10, 2016
    Inventors: Wesley Leggette, Jason K. Resch, Yogesh Ramesh Vedpathak, Sebastien Vas, Eric Gunnar Smith, Adam Michael Gray
  • Patent number: 9465861
    Abstract: A method begins by a dispersed storage (DS) processing module traversing multiple index structures based on search criteria to identify an object retrieval structure. The method continues with the DS processing module retrieving a set of encoded data slices corresponding to the object retrieval structure from a dispersed storage network (DSN) and decoding the set of encoded data slices in accordance with a dispersed storage error coding function to recover the object retrieval structure. The method continues with the DS processing module identifying one of one or more data version records of the recovered object retrieval structure based on the search criteria to produce an identified data version record and determining DSN addressing information for at least a portion of data based on information of the identified data version record.
    Type: Grant
    Filed: July 16, 2013
    Date of Patent: October 11, 2016
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Greg Dhuse, Ilya Volvovski, Adam Michael Gray, Andrew Baptist
  • Publication number: 20160188218
    Abstract: A method begins with storage units receiving a request to transfer a copy of a set of encoded data slices from two or more source virtual storage vaults to a destination virtual storage vault. The method continues with each storage unit obtaining a slice transfer map and determining whether the storage unit supports one of the two or more source virtual storage vaults. For each supporting storage unit, the method continues with each supporting storage unit determining, based on the slice transfer map, a sub-set of encoded data slices of the set of encoded data slices that is stored within the one of the two or more source virtual storage vaults by the supporting storage unit. The method continues with the supporting storage unit sending the sub-set of encoded data slices to a corresponding storage unit that is supporting the destination virtual storage vault.
    Type: Application
    Filed: October 29, 2015
    Publication date: June 30, 2016
    Applicant: CLEVERSAFE, INC.
    Inventors: Adam Michael Gray, Greg Dhuse, Andrew Baptist, Ravi Khadiwala, Wesley Leggette, Scott Michael Horan, Franco Vincent Borich, Bart Cilfone, Daniel Scholl
  • Publication number: 20150317205
    Abstract: A method to resolve conflicts arising from substantially concurrent write requests regarding a data object begins by a computing device of a dispersed storage network (DSN) issuing a write request for a dispersed storage error encoded version of the data object to storage units of the DSN. The method continues with the computing device receiving write responses, each including either a lock indication or a non-lock indication and conflict information. The method continues with the computing device determining whether at least a write threshold number of received write responses include the lock indication. When less than the at least a write threshold number of write responses have been received that include the lock indication, the method continues with the computing device processing the conflict information to identify one or more other write requests that have a higher priority than the write request and establishing a write request retry time frame.
    Type: Application
    Filed: March 4, 2015
    Publication date: November 5, 2015
    Applicant: CLEVERSAFE, INC.
    Inventors: Adam Michael Gray, Jason K. Resch
  • Patent number: 9171031
    Abstract: A method begins by a dispersed storage (DS) processing module determining to merge two data object level index nodes and merging the two nodes into a temporarily merged data object level index node. The method continues with the DS processing module initiating updating of a hierarchical ordered index structure by identifying an address for storing the temporarily merged data object level index node, setting up deletion of the two data object level index nodes, setting up linking the temporarily merged data object level index node to a next level node of the hierarchical ordered index structure, and determining whether a change has occurred to at least one of one or more of the two data object level index nodes and the next level node. When the change has not occurred, the method continues with the DS processing module commencing the updating of the hierarchical ordered index structure.
    Type: Grant
    Filed: February 25, 2013
    Date of Patent: October 27, 2015
    Assignee: Cleversafe, Inc.
    Inventors: Greg Dhuse, Wesley Leggette, Adam Michael Gray, Ilya Volvovski, Andrew Baptist, Jason K. Resch
  • Publication number: 20150224494
    Abstract: A cover member for use in the treatment of a sample on a substrate is disclosed. The cover member has fluid flow features and is adapted for use in an instrument, such as a laboratory instrument. The cover member comprises at least one orientation feature detectable by the instrument for ascertaining an orientation of the cover member. An automated method for detecting orientation of a cover member in a sample treatment assembly is also disclosed, in which a processor compares data corresponding to one or more images collected from the sample treatment assembly, with data representing a reference image to determine if a cover member is in the sample treatment assembly.
    Type: Application
    Filed: August 30, 2013
    Publication date: August 13, 2015
    Applicant: LEICA BIOSYSTEMS MELBOURNE PTY LTD.
    Inventors: Adam Michael Gray, Michael Stephen Glynn