US 12,079,380 B2
Recovering data from encoded data slices interspersed with auxiliary data
S. Christopher Gladwin, Chicago, IL (US); Chuck Wilson Templeton, Chicago, IL (US); Jason K. Resch, Warwick, RI (US); and Gary W. Grube, Barrington Hills, IL (US)
Assigned to Pure Storage, Inc., Santa Clara, CA (US)
Filed by Pure Storage, Inc., Santa Clara, CA (US)
Filed on Jul. 6, 2023, as Appl. No. 18/218,705.
Application 18/218,705 is a continuation of application No. 17/663,926, filed on May 18, 2022, granted, now 11,734,463.
Application 17/663,926 is a continuation of application No. 17/247,424, filed on Dec. 10, 2020, granted, now 11,366,939, issued on Jun. 21, 2022.
Application 17/247,424 is a continuation of application No. 16/201,878, filed on Nov. 27, 2018, granted, now 10,891,400, issued on Jan. 12, 2021.
Application 16/201,878 is a continuation in part of application No. 14/452,182, filed on Aug. 5, 2014, granted, now 10,282,564, issued on May 7, 2019.
Application 14/452,182 is a continuation of application No. 12/954,880, filed on Nov. 28, 2010, granted, now 8,959,366, issued on Feb. 17, 2015.
Claims priority of provisional application 61/299,245, filed on Jan. 28, 2010.
Prior Publication US 2023/0351062 A1, Nov. 2, 2023
This patent is subject to a terminal disclaimer.
Int. Cl. G06F 21/85 (2013.01); G06F 3/06 (2006.01); G06F 11/10 (2006.01); G06F 21/72 (2013.01); G06F 21/80 (2013.01); H04L 9/32 (2006.01); H04L 65/60 (2022.01); H04L 65/75 (2022.01); H04L 67/1097 (2022.01); H04N 21/222 (2011.01); H04N 21/2347 (2011.01); H04N 21/845 (2011.01); H04W 12/02 (2009.01); H04W 12/033 (2021.01)
CPC G06F 21/85 (2013.01) [G06F 3/0619 (2013.01); G06F 3/0647 (2013.01); G06F 3/067 (2013.01); G06F 11/1076 (2013.01); G06F 21/72 (2013.01); G06F 21/80 (2013.01); H04L 9/3242 (2013.01); H04L 67/1097 (2013.01); H04N 21/222 (2013.01); H04N 21/2347 (2013.01); H04N 21/8456 (2013.01); H04W 12/033 (2021.01); G06F 11/1008 (2013.01); G06F 2211/1028 (2013.01); G06F 2221/2107 (2013.01); H04L 65/764 (2022.05); H04W 12/02 (2013.01)] 20 Claims
OG exemplary drawing
 
1. A method for execution by one or more computing devices of a storage network, the method comprises:
obtaining input encoded data slices from memory of the storage network, wherein the input encoded data slices include a set of encoded data slices interspersed with a set of auxiliary data slices, wherein a data segment was error encoded into the set of encoded data slices, and wherein auxiliary data was error encoded into the set of auxiliary data slices;
obtaining de-selection information associated with the input encoded data slices;
de-selecting the sequence of input encoded data slices based on the de-selection information to produce deselected encoded data slices of the set of encoded data slices;
error decoding at least a decode threshold number of encoded data slices of the deselected encoded data slices in accordance with error decoding parameters to reproduce the data segment; and
outputting the data segment to a requesting computing device of the storage network.