Prosecution Insights
Last updated: October 02, 2026
Application No. 19/021,479

Rebuilding Encoded Data Slices in Accordance with a Reduced Rebuild Threshold

Non-Final OA §101§103§112
Filed
Jan 15, 2025
Priority
Jan 30, 2015 — provisional 62/109,700 +7 more
Examiner
NGUYEN, THIEN DANG
Art Unit
2137
Tech Center
2100 — Computer Architecture & Software
Assignee
Pure Storage Inc.
OA Round
1 (Non-Final)
87%
Grant Probability
Favorable
1-2
OA Rounds
3m
Est. Remaining
99%
With Interview

Examiner Intelligence

Grants 87% — above average
87%
Career Allowance Rate
625 granted / 715 resolved
+32.4% vs TC avg
Moderate +12% lift
Without
With
+11.7%
Interview Lift
resolved cases with interview
Fast prosecutor
2y 0m
Avg Prosecution
28 currently pending
Career history
734
Total Applications
across all art units

Statute-Specific Performance

§101
18.3%
-21.7% vs TC avg
§103
35.8%
-4.2% vs TC avg
§102
14.6%
-25.4% vs TC avg
§112
25.0%
-15.0% vs TC avg
Black line = Tech Center average estimate • Based on career data from 715 resolved cases

Office Action

§101 §103 §112
Notice of Pre-AIA or AIA Status The present application, filed on or after March 16, 2013, is being examined under the first inventor to file provisions of the AIA . DETAILED ACTION Claims 1-20 are pending in this action. Information Disclosure Statement The information disclosure statement (IDS) submitted on 01/15/2025, 01/15/2025 was filed. The submission is in compliance with the provisions of 37 CFR 1.97. Accordingly, the information disclosure statement is being considered by the examiner. Claim Rejections - 35 USC § 101 35 U.S.C. 101 reads as follows: Whoever invents or discovers any new and useful process, machine, manufacture, or composition of matter, or any new and useful improvement thereof, may obtain a patent therefor, subject to the conditions and requirements of this title. Claims 1-20 are rejected under 35 U.S.C. 101 because the claimed invention is directed to an abstract idea without significantly more. In analyzing under step 1, is the claim to a process, machine manufacture or composition of matter? Yes. In analyzing under step 2A Prong One, Does the claim recite an abstract idea law of nature or natural phenomenon? Yes. The claim(s) 1 and 18 recite(s) the abstract limitations such as “determining an encoded data slice of a set of encoded data slices needs rebuilding during an encoded data slice reduction operation; determining whether a current number of encoded data slices of the set of encoded data slices that are not in need of rebuilding is less than a reduced rebuild threshold number associated with the encoded data slice reduction operation; and when the current number is less than reduced rebuild threshold number, rebuilding the encoded data slice” is a process that, under its broadest reasonable interpretation, covers performance of the limitation in the mind but for the recitation of generic computer processor such as “a non-transitory computer readable storage device comprises: at least one memory section for storing operational instructions that, when executed by one or more computing devices of a storage network, cause the one or more computing devices to” (see claim 18) If a claim limitation, under its broadest reasonable interpretation, covers performance of the limitation under mental processes but for the recitation of generic computer components and software module, then it falls within the “Mental Processes” grouping of abstract ideas. A human with a generic computer can (1) determine an encoded data slice … needs rebuilding during …operation, (2) determine whether a current number of encoded data slices … not in need of rebuilding is less than a reduced rebuild threshold number associated with the encoded data slice reduction operation and (3) when the current number is less than reduced rebuild threshold number, rebuild the encoded data slice. Claim 2 recites abstract limitation such as “…rebuild threshold number exceeds a decoding number...”. (this step is for setting up threshold when rebuilding encoding data which is based on mental processes) Claims 3-17 and 19-20 recite abstract limitation such as “setting up reduction time” or “setting up deletion time” (this step is for when to perform reduction time and/or when to perform deletion time which is based on mental processes; the mental process with a generic computer can setup when to perform encoded data and delete an encoded data slice) Accordingly, the claim recites an abstract limitation. In analyzing under step 2A Prong Two, Does the claim recite additional elements that integrate the judicial exception into a practical application? NO. This judicial exception is not integrated into a practical application because the claims recite a generic processor such as “a non-transitory computer readable storage device comprises at least one memory section for storing operational instructions that, when executed by one or more computing devices of a storage network, cause the one or more computing devices to” (see claim 18) for encoding. The claim(s) does/do not include additional elements that are sufficient to amount to significantly more than the judicial exception because a generic processor and software module which are high level of generality performing code generation. Accordingly, this additional element does not integrate the abstract idea into a practical application because it does not impose any meaningful limits on practicing the abstract idea. In analyzing under step 2B, does the claim recite additional elements that amount to significantly more than the judicial exception? NO Claims 1-20 do not recite any additional elements except a generic processor such as “a non-transitory computer readable storage device comprises at least one memory section for storing operational instructions that, when executed by one or more computing devices of a storage network, cause the one or more computing devices to” (see claim 18) for encoding. Accordingly, the additional generic elements do not amount to significantly more than the judicial exception because a generic processor and software module which are high level of generality performing … The claim is directed to an abstract idea. Claim Rejections - 35 USC § 112 The following is a quotation of the first paragraph of 35 U.S.C. 112(a): (a) IN GENERAL.—The specification shall contain a written description of the invention, and of the manner and process of making and using it, in such full, clear, concise, and exact terms as to enable any person skilled in the art to which it pertains, or with which it is most nearly connected, to make and use the same, and shall set forth the best mode contemplated by the inventor or joint inventor of carrying out the invention. The following is a quotation of the first paragraph of pre-AIA 35 U.S.C. 112: The specification shall contain a written description of the invention, and of the manner and process of making and using it, in such full, clear, concise, and exact terms as to enable any person skilled in the art to which it pertains, or with which it is most nearly connected, to make and use the same, and shall set forth the best mode contemplated by the inventor of carrying out his invention. Claims 1-20 are rejected under 35 U.S.C. 112(a) or 35 U.S.C. 112 (pre-AIA ), first paragraph, as failing to comply with the written description requirement. The claim(s) contains subject matter which was not described in the specification in such a way as to reasonably convey to one skilled in the relevant art that the inventor or a joint inventor, or for applications subject to pre-AIA 35 U.S.C. 112, the inventor(s), at the time the application was filed, had possession of the claimed invention. Any claim not specifically mentioned is rejected due to its dependency on a rejected claim. Claims 1 and 18 recite a limitation such as “determining an encoded data slice of a set of encoded data slices needs rebuilding …determining whether a current number of encoded data slices of the set of encoded data slices that are not in need of rebuilding…” Examiner carefully reviewed the specification. Abstract discloses “…determining an encoded data slice of a set of encoded data slices needs rebuilding during an encoded data slice reduction operation. The method further includes determining whether a current number of encoded data slices of the set of encoded data slices that are not in need of rebuilding is less than a reduced rebuild threshold number associated with the encoded data slice reduction operation…” Abstract appears to repeat the recited limitations of claims 1 and 18. However, it does not further provide a method of determining which an encoded data slice that are needed or that are not needed for rebuilding the encoded data slice. As such, it is unclear which encoded data slice is needed or not needed for rebuilding. Claim Rejections - 35 USC § 112 The following is a quotation of 35 U.S.C. 112(b): (b) CONCLUSION.—The specification shall conclude with one or more claims particularly pointing out and distinctly claiming the subject matter which the inventor or a joint inventor regards as the invention. The following is a quotation of 35 U.S.C. 112 (pre-AIA ), second paragraph: The specification shall conclude with one or more claims particularly pointing out and distinctly claiming the subject matter which the applicant regards as his invention. Claims 1-20 are rejected under 35 U.S.C. 112(b) or 35 U.S.C. 112 (pre-AIA ), second paragraph, as being indefinite for failing to particularly point out and distinctly claim the subject matter which the inventor or a joint inventor (or for applications subject to pre-AIA 35 U.S.C. 112, the applicant), regards as the invention. Any claim not specifically mentioned is rejected due to its dependency on a rejected claim. Claims 1 and 18 recite a limitation such as “determining an encoded data slice of a set of encoded data slices needs rebuilding …determining whether a current number of encoded data slices of the set of encoded data slices that are not in need of rebuilding…” Examiner carefully reviewed the specification. Abstract discloses “…determining an encoded data slice of a set of encoded data slices needs rebuilding during an encoded data slice reduction operation. The method further includes determining whether a current number of encoded data slices of the set of encoded data slices that are not in need of rebuilding is less than a reduced rebuild threshold number associated with the encoded data slice reduction operation…” Abstract appears to repeat the recited limitations of claims 1 and 18. However, it does not further provide a method of determining which an encoded data slice that are needed or that are not needed for rebuilding the encoded data slice. As such, it is unclear which encoded data slice is needed or not needed for rebuilding. Claim 3 recites a limitation such as “ wherein encoded data slice reduction operation is set to occur at an encoded data slice reduction time” The recited limitation “at an encoded data slice reduction time” render this limitation indefinite because it is unclear when or what time is considered “an encoded data slice reduction time” Claim 4 recites a limitation such as “ wherein setting the deletion time is based on a type of data of the set of encoded data slices” Claim 5 recites a limitation such as “wherein setting the deletion time is based on a user associated with the set of encoded data slices. Claim 6 recites a limitation such as “wherein setting the deletion time is based on a storage capacity of a set of storage units of the storage network, wherein the set of storage units are utilized for storing the set of encoded data slices” Claim Rejections - 35 USC § 103 In the event the determination of the status of the application as subject to AIA 35 U.S.C. 102 and 103 (or as subject to pre-AIA 35 U.S.C. 102 and 103) is incorrect, any correction of the statutory basis (i.e., changing from AIA to pre-AIA ) for the rejection will not be considered a new ground of rejection if the prior art relied upon, and the rationale supporting the rejection, would be the same under either status. The following is a quotation of 35 U.S.C. 103 which forms the basis for all obviousness rejections set forth in this Office action: A patent for a claimed invention may not be obtained, notwithstanding that the claimed invention is not identically disclosed as set forth in section 102, if the differences between the claimed invention and the prior art are such that the claimed invention as a whole would have been obvious before the effective filing date of the claimed invention to a person having ordinary skill in the art to which the claimed invention pertains. Patentability shall not be negated by the manner in which the invention was made. Claim(s) 1-2, 11, 15, 18, 19 is/are rejected under 35 U.S.C. 103 as being unpatentable over Dhuse et al. (US 2011/0,185,141), in view of Hoffman et al. (US 2014/0,325,266) As per claim 1: As per claim 18: Dhuse discloses: A non-transitory computer readable storage device comprises: at least one memory section for storing operational instructions that, when executed by one or more computing devices of a storage network, cause the one or more computing devices to: A method for execution by one or more computing devices of a storage network, the method comprises: (Dhuse, Figs 1-14) (Dhuse, [0032]…memory and/or memory element storing the corresponding operational instructions may be embedded within, or external to, the circuitry comprising the state machine, analog circuitry, digital circuitry, and/or logic circuitry. Still further note that, the memory element stores, and the processing module executes, hard coded and/or operational instructions corresponding to at least some of the steps and/or functions illustrated in FIGS. 1-14) determining an encoded data slice of a set of encoded data slices needs rebuilding during an encoded data slice reduction operation; (Dhuse, Fig. 8, step 140-144) (Dhuse, [0105] … step 142 where the processing module determines to rebuild. Such a determination may be based on one or more of slices that require rebuilding, a rebuilding error threshold, an error list, a number of errors, a comparison of the number of errors to the rebuilding error threshold, a command, a message, a local DS unit query, and a DS unit storage set query. For example, the processing module determines not to rebuild when the number of errors is below a rebuilding error threshold. In another example, the processing module determines to rebuild when the number of errors is above the rebuilding error threshold and/or a DS managing unit message indicates rebuilding) determining whether a current number of encoded data slices of the set of encoded data slices that are not in need of rebuilding is (Dhuse, Fig. 8, step 140-144) (Dhuse, [0105] … step 142 where the processing module determines to rebuild. Such a determination may be based on one or more of slices that require rebuilding, a rebuilding error threshold, an error list, a number of errors, a comparison of the number of errors to the rebuilding error threshold, a command, a message, a local DS unit query, and a DS unit storage set query. For example, the processing module determines not to rebuild when the number of errors is below a rebuilding error threshold. In another example, the processing module determines to rebuild when the number of errors is above the rebuilding error threshold and/or a DS managing unit message indicates rebuilding) when the current number is less than reduced rebuild threshold number, rebuilding the encoded data slice. (Dhuse, Fig. 8, step 146-150) (Dhuse, [0107] … a determination may be based on one or more of the slice names to rebuild, … retrieves slices from the DS unit storage set and re-creates the data object in accordance with the operational parameters (e.g., dispersed storage error decodes the slices to produce the data object). … encodes the data object to produce slices and sends slices corresponding to the slices requiring rebuilding …) (Dhuse, Fig. 8, step 152-158) (Dhuse, [0110] … determines rebuilding resource assignments. … Such a determination may be based … the error slices, the rebuilding resources, a performance goal, a security goal, the candidate rebuilding resources, …rebuilding resource assignments to include a first set of error slices to DS unit 1 and a second set of error slices to DS unit 2 of the associated DS unit storage set when DS unit 1 is associated with the first set of error slices and DS unit 2 is associated with the second set of error slices. … sends the rebuilding resource assignments to the rebuilding resources to execute the assigned rebuilding…) Dhuse does not clearly disclose: determining whether a current number of encoded data slices of the set of encoded data slices that are not in need of rebuilding is less than a reduced rebuild threshold number associated with the encoded data slice Hoffman discloses: determining whether a current number of encoded data slices of the set of encoded data slices that are not in need of rebuilding is less than a reduced rebuild threshold number associated with the encoded data slice (Hoffman, [0118] …rebuilding function to generate a new encoded data slice to replace the missing encoded data slice…where a threshold number of encoded data slices of the set of encoded data slices is required to recover the data segment. The threshold number is less than a number of encoded data slices in the set of encoded data slices) It would have been obvious before the effective filing date of the claimed to a person having ordinary skill in the art to incorporate Hoffman’s method of rebuilding the encoded data slice by using a threshold number which is less than a number of encoded slices into the system in order to efficiency of storage. (Hoffman, [0118] …rebuilding function to generate a new encoded data slice to replace the missing encoded data slice…where a threshold number of encoded data slices of the set of encoded data slices is required to recover the data segment. The threshold number is less than a number of encoded data slices in the set of encoded data slices) As per claim 2: Dhuse-Hoffman further discloses: wherein the reduced rebuild threshold number exceeds a decode threshold number and is less than a pillar width number. (Hoffman, [0118] …rebuilding function to generate a new encoded data slice to replace the missing encoded data slice…where a threshold number of encoded data slices of the set of encoded data slices is required to recover the data segment. The threshold number is less than a number of encoded data slices in the set of encoded data slices) As per claim 11: Dhuse-Hoffman further discloses: error encoding a data segment in accordance with error encoding parameters to produce the set of encoded data slices. (Dhuse, Fig. 8, step 146-150) (Dhuse, [0107] … a determination may be based on one or more of the slice names to rebuild, … retrieves slices from the DS unit storage set and re-creates the data object in accordance with the operational parameters (e.g., dispersed storage error decodes the slices to produce the data object). … encodes the data object to produce slices and sends slices corresponding to the slices requiring rebuilding …) (Dhuse, Fig. 8, step 152-158) (Dhuse, [0110] … determines rebuilding resource assignments. … Such a determination may be based … the error slices, the rebuilding resources, a performance goal, a security goal, the candidate rebuilding resources, …rebuilding resource assignments to include a first set of error slices to DS unit 1 and a second set of error slices to DS unit 2 of the associated DS unit storage set when DS unit 1 is associated with the first set of error slices and DS unit 2 is associated with the second set of error slices. … sends the rebuilding resource assignments to the rebuilding resources to execute the assigned rebuilding…) As per claim 15: As per claim 19: Dhuse-Hoffman further discloses: maintaining a total number of encoded data slices of the set of encoded data slices such that the total number is less than a pillar width number and greater than or equal to a decode threshold number. (Dhuse, [0098] … step 138 where the processing module deletes the plurality of sets of encoded data slices by sending a delete encoded data slice message to each DS unit of the first set of DS units, wherein the delete encoded data slice message includes a request to delete the encoded data slices for each set of the plurality of sets of encoded data slices. Alternatively, the processing module sends the delete encoded data slice message to each DS unit of the first set of DS units when receiving a store data slice confirmation message indicating that the plurality of sets of second encoded data slices are stored in the second set of DS units. Alternatively, the processing module sends the delete encoded data slice message to each DS unit of the first set of DS units … processing module sends the delete encoded data slice message to each DS unit of the first set of DS units …) Claim(s) 3-10, 12-14, 16, 17, 20 is/are rejected under 35 U.S.C. 103 as being unpatentable over Dhuse et al. (US 2011/0,185,141), in view of Hoffman et al. (US 2014/0,325,266), in view of Resch (US 2013/0,304,711) As per claim 3: Dhuse-Hoffman further discloses: wherein encoded data slice reduction operation is set to occur at an encoded data slice reduction time, (Dhuse, [0105] … step 142 where the processing module determines to rebuild. Such a determination may be based on one or more of slices that require rebuilding, a rebuilding error threshold, an error list, a number of errors, a comparison of the number of errors to the rebuilding error threshold, a command, a message, a local DS unit query, and a DS unit storage set query. For example, the processing module determines not to rebuild when the number of errors is below a rebuilding error threshold. In another example, the processing module determines to rebuild when the number of errors is above the rebuilding error threshold and/or a DS managing unit message indicates rebuilding) wherein the encoded data slice reduction time is prior to a (Dhuse, [0098] … step 138 where the processing module deletes the plurality of sets of encoded data slices by sending a delete encoded data slice message to each DS unit of the first set of DS units, wherein the delete encoded data slice message includes a request to delete the encoded data slices for each set of the plurality of sets of encoded data slices. Alternatively, the processing module sends the delete encoded data slice message to each DS unit of the first set of DS units when receiving a store data slice confirmation message indicating that the plurality of sets of second encoded data slices are stored in the second set of DS units. Alternatively, the processing module sends the delete encoded data slice message to each DS unit of the first set of DS units … processing module sends the delete encoded data slice message to each DS unit of the first set of DS units …) (Dhuse above discloses a method of deleting encoded data slice) Dhuse-Hoffman does not mention about deletion time. Resch discloses: deletion time. (Resch [0121] … stores a deletion marker regarding the encoded data slice when … to deleting the encoded data slice…determines when to delete the encoded data slice based on the deletion marker and in accordance with a deletion scheme. … deleting the encoded data slice when memory availability compares unfavorably to a memory availability threshold, deleting the encoded data slice when a predetermined period of time has expired …, deleting the encoded data slice when utilization of the memory space compares unfavorably to a memory space usage threshold, and deleting the encoded data slice based on a deletion instruction ….) It would have been obvious before the effective filing date of the claimed to a person having ordinary skill in the art to incorporate Resch’s method of setting when to delete the encoded data slice into the system in order to improve the reliability of the system. As per claim 4: Dhuse-Hoffman further discloses: wherein setting the deletion (Dhuse, [0098] … step 138 where the processing module deletes the plurality of sets of encoded data slices by sending a delete encoded data slice message to each DS unit of the first set of DS units, wherein the delete encoded data slice message includes a request to delete the encoded data slices for each set of the plurality of sets of encoded data slices. Alternatively, the processing module sends the delete encoded data slice message to each DS unit of the first set of DS units when receiving a store data slice confirmation message indicating that the plurality of sets of second encoded data slices are stored in the second set of DS units. Alternatively, the processing module sends the delete encoded data slice message to each DS unit of the first set of DS units … processing module sends the delete encoded data slice message to each DS unit of the first set of DS units …) Dhuse-Hoffman does not mention about deletion time. Resch further discloses: deletion time. (Resch [0121] … stores a deletion marker regarding the encoded data slice when … to deleting the encoded data slice…determines when to delete the encoded data slice based on the deletion marker and in accordance with a deletion scheme. … deleting the encoded data slice when memory availability compares unfavorably to a memory availability threshold, deleting the encoded data slice when a predetermined period of time has expired …, deleting the encoded data slice when utilization of the memory space compares unfavorably to a memory space usage threshold, and deleting the encoded data slice based on a deletion instruction ….) In view of motivation previously stated the claim is rejected. As per claim 5: Dhuse-Hoffman-Resch further discloses: wherein setting the deletion (Dhuse, [0098] … step 138 where the processing module deletes the plurality of sets of encoded data slices by sending a delete encoded data slice message to each DS unit of the first set of DS units, wherein the delete encoded data slice message includes a request to delete the encoded data slices for each set of the plurality of sets of encoded data slices. Alternatively, the processing module sends the delete encoded data slice message to each DS unit of the first set of DS units when receiving a store data slice confirmation message indicating that the plurality of sets of second encoded data slices are stored in the second set of DS units. Alternatively, the processing module sends the delete encoded data slice message to each DS unit of the first set of DS units … processing module sends the delete encoded data slice message to each DS unit of the first set of DS units …) Resch further discloses: deletion time. (Resch [0121] … stores a deletion marker regarding the encoded data slice when … to deleting the encoded data slice…determines when to delete the encoded data slice based on the deletion marker and in accordance with a deletion scheme. … deleting the encoded data slice when memory availability compares unfavorably to a memory availability threshold, deleting the encoded data slice when a predetermined period of time has expired …, deleting the encoded data slice when utilization of the memory space compares unfavorably to a memory space usage threshold, and deleting the encoded data slice based on a deletion instruction ….) In view of motivation previously stated the claim is rejected. As per claim 6: Dhuse-Hoffman-Resch further discloses: wherein setting the deletion (Dhuse, [0098] … step 138 where the processing module deletes the plurality of sets of encoded data slices by sending a delete encoded data slice message to each DS unit of the first set of DS units, wherein the delete encoded data slice message includes a request to delete the encoded data slices for each set of the plurality of sets of encoded data slices. Alternatively, the processing module sends the delete encoded data slice message to each DS unit of the first set of DS units when receiving a store data slice confirmation message indicating that the plurality of sets of second encoded data slices are stored in the second set of DS units. Alternatively, the processing module sends the delete encoded data slice message to each DS unit of the first set of DS units … processing module sends the delete encoded data slice message to each DS unit of the first set of DS units …) Resch further discloses: deletion time. (Resch [0121] … stores a deletion marker regarding the encoded data slice when … to deleting the encoded data slice…determines when to delete the encoded data slice based on the deletion marker and in accordance with a deletion scheme. … deleting the encoded data slice when memory availability compares unfavorably to a memory availability threshold, deleting the encoded data slice when a predetermined period of time has expired …, deleting the encoded data slice when utilization of the memory space compares unfavorably to a memory space usage threshold, and deleting the encoded data slice based on a deletion instruction ….) In view of motivation previously stated the claim is rejected. As per claim 7: Dhuse-Hoffman-Resch further discloses: wherein setting the encoded data slice reduction time is based on the deletion (Dhuse, [0098] … step 138 where the processing module deletes the plurality of sets of encoded data slices by sending a delete encoded data slice message to each DS unit of the first set of DS units, wherein the delete encoded data slice message includes a request to delete the encoded data slices for each set of the plurality of sets of encoded data slices. Alternatively, the processing module sends the delete encoded data slice message to each DS unit of the first set of DS units when receiving a store data slice confirmation message indicating that the plurality of sets of second encoded data slices are stored in the second set of DS units. Alternatively, the processing module sends the delete encoded data slice message to each DS unit of the first set of DS units … processing module sends the delete encoded data slice message to each DS unit of the first set of DS units …) Resch further discloses: deletion time. (Resch [0121] … stores a deletion marker regarding the encoded data slice when … to deleting the encoded data slice…determines when to delete the encoded data slice based on the deletion marker and in accordance with a deletion scheme. … deleting the encoded data slice when memory availability compares unfavorably to a memory availability threshold, deleting the encoded data slice when a predetermined period of time has expired …, deleting the encoded data slice when utilization of the memory space compares unfavorably to a memory space usage threshold, and deleting the encoded data slice based on a deletion instruction ….) In view of motivation previously stated the claim is rejected. As per claim 8: Dhuse-Hoffman-Resch further discloses: wherein setting the encoded data slice reduction time is based on a minimum storage reliability level. (Dhuse, Fig. 8, step 146-150) (Dhuse, [0107] … a determination may be based on one or more of the slice names to rebuild, … retrieves slices from the DS unit storage set and re-creates the data object in accordance with the operational parameters (e.g., dispersed storage error decodes the slices to produce the data object). … encodes the data object to produce slices and sends slices corresponding to the slices requiring rebuilding …) (Dhuse, Fig. 8, step 152-158) (Dhuse, [0110] … determines rebuilding resource assignments. … Such a determination may be based … the error slices, the rebuilding resources, a performance goal, a security goal, the candidate rebuilding resources, …rebuilding resource assignments to include a first set of error slices to DS unit 1 and a second set of error slices to DS unit 2 of the associated DS unit storage set when DS unit 1 is associated with the first set of error slices and DS unit 2 is associated with the second set of error slices. … sends the rebuilding resource assignments to the rebuilding resources to execute the assigned rebuilding…) As per claim 9: Dhuse-Hoffman-Resch further discloses: wherein setting the encoded data slice reduction time is based on a user associated with the set of encoded data slices. (Dhuse, Fig. 8, step 146-150) (Dhuse, [0107] … a determination may be based on one or more of the slice names to rebuild, … retrieves slices from the DS unit storage set and re-creates the data object in accordance with the operational parameters (e.g., dispersed storage error decodes the slices to produce the data object). … encodes the data object to produce slices and sends slices corresponding to the slices requiring rebuilding …) (Dhuse, Fig. 8, step 152-158) (Dhuse, [0110] … determines rebuilding resource assignments. … Such a determination may be based … the error slices, the rebuilding resources, a performance goal, a security goal, the candidate rebuilding resources, …rebuilding resource assignments to include a first set of error slices to DS unit 1 and a second set of error slices to DS unit 2 of the associated DS unit storage set when DS unit 1 is associated with the first set of error slices and DS unit 2 is associated with the second set of error slices. … sends the rebuilding resource assignments to the rebuilding resources to execute the assigned rebuilding…) As per claim 10: Dhuse-Hoffman-Resch further discloses: wherein setting the encoded data slice reduction time is based on storage capacity of one or more sets of storage units of the storage network. (Dhuse, Fig. 8, step 146-150) (Dhuse, [0107] … a determination may be based on one or more of the slice names to rebuild, … retrieves slices from the DS unit storage set and re-creates the data object in accordance with the operational parameters (e.g., dispersed storage error decodes the slices to produce the data object). … encodes the data object to produce slices and sends slices corresponding to the slices requiring rebuilding …) (Dhuse, Fig. 8, step 152-158) (Dhuse, [0110] … determines rebuilding resource assignments. … Such a determination may be based … the error slices, the rebuilding resources, a performance goal, a security goal, the candidate rebuilding resources, …rebuilding resource assignments to include a first set of error slices to DS unit 1 and a second set of error slices to DS unit 2 of the associated DS unit storage set when DS unit 1 is associated with the first set of error slices and DS unit 2 is associated with the second set of error slices. … sends the rebuilding resource assignments to the rebuilding resources to execute the assigned rebuilding…) As per claim 12: Dhuse-Hoffman further discloses: when a deletion (Dhuse, [0098] … step 138 where the processing module deletes the plurality of sets of encoded data slices by sending a delete encoded data slice message to each DS unit of the first set of DS units, wherein the delete encoded data slice message includes a request to delete the encoded data slices for each set of the plurality of sets of encoded data slices. Alternatively, the processing module sends the delete encoded data slice message to each DS unit of the first set of DS units when receiving a store data slice confirmation message indicating that the plurality of sets of second encoded data slices are stored in the second set of DS units. Alternatively, the processing module sends the delete encoded data slice message to each DS unit of the first set of DS units … processing module sends the delete encoded data slice message to each DS unit of the first set of DS units …) Dhuse-Hoffman does not mention about deletion time. Resch discloses: deletion time. (Resch [0121] … stores a deletion marker regarding the encoded data slice when … to deleting the encoded data slice…determines when to delete the encoded data slice based on the deletion marker and in accordance with a deletion scheme. … deleting the encoded data slice when memory availability compares unfavorably to a memory availability threshold, deleting the encoded data slice when a predetermined period of time has expired …, deleting the encoded data slice when utilization of the memory space compares unfavorably to a memory space usage threshold, and deleting the encoded data slice based on a deletion instruction ….) It would have been obvious before the effective filing date of the claimed to a person having ordinary skill in the art to incorporate Resch’s method of setting when to delete the encoded data slice into the system in order to improve the reliability of the system. As per claim 13: Dhuse-Hoffman-Resch further discloses: when the current number is less than reduced rebuild threshold number, (Hoffman, [0118] …rebuilding function to generate a new encoded data slice to replace the missing encoded data slice…where a threshold number of encoded data slices of the set of encoded data slices is required to recover the data segment. The threshold number is less than a number of encoded data slices in the set of encoded data slices) determining whether a remaining time is within a threshold time difference of the deletion time; and when the remaining time is within the threshold time difference of the deletion (Dhuse, [0098] … step 138 where the processing module deletes the plurality of sets of encoded data slices by sending a delete encoded data slice message to each DS unit of the first set of DS units, wherein the delete encoded data slice message includes a request to delete the encoded data slices for each set of the plurality of sets of encoded data slices. Alternatively, the processing module sends the delete encoded data slice message to each DS unit of the first set of DS units when receiving a store data slice confirmation message indicating that the plurality of sets of second encoded data slices are stored in the second set of DS units. Alternatively, the processing module sends the delete encoded data slice message to each DS unit of the first set of DS units … processing module sends the delete encoded data slice message to each DS unit of the first set of DS units …) Resch further discloses: deletion time. (Resch [0121] … stores a deletion marker regarding the encoded data slice when … to deleting the encoded data slice…determines when to delete the encoded data slice based on the deletion marker and in accordance with a deletion scheme. … deleting the encoded data slice when memory availability compares unfavorably to a memory availability threshold, deleting the encoded data slice when a predetermined period of time has expired …, deleting the encoded data slice when utilization of the memory space compares unfavorably to a memory space usage threshold, and deleting the encoded data slice based on a deletion instruction ….) In view of motivation previously stated the claim is rejected. As per claim 14: Dhuse-Hoffman-Resch further discloses: a first deletion data slice of the set of encoded data slices, wherein the second deletion time is after the first deletion (Dhuse, [0098] … step 138 where the processing module deletes the plurality of sets of encoded data slices by sending a delete encoded data slice message to each DS unit of the first set of DS units, wherein the delete encoded data slice message includes a request to delete the encoded data slices for each set of the plurality of sets of encoded data slices. Alternatively, the processing module sends the delete encoded data slice message to each DS unit of the first set of DS units when receiving a store data slice confirmation message indicating that the plurality of sets of second encoded data slices are stored in the second set of DS units. Alternatively, the processing module sends the delete encoded data slice message to each DS unit of the first set of DS units … processing module sends the delete encoded data slice message to each DS unit of the first set of DS units …) Resch further discloses: deletion time. (Resch [0121] … stores a deletion marker regarding the encoded data slice when … to deleting the encoded data slice…determines when to delete the encoded data slice based on the deletion marker and in accordance with a deletion scheme. … deleting the encoded data slice when memory availability compares unfavorably to a memory availability threshold, deleting the encoded data slice when a predetermined period of time has expired …, deleting the encoded data slice when utilization of the memory space compares unfavorably to a memory space usage threshold, and deleting the encoded data slice based on a deletion instruction ….) In view of motivation previously stated the claim is rejected. As per claim 16: As per claim 20: Dhuse-Hoffman further discloses: periodically reducing the total number of encoded data slices as time elapses from an encoded data slice reduction time to a deletion (Dhuse, [0098] … step 138 where the processing module deletes the plurality of sets of encoded data slices by sending a delete encoded data slice message to each DS unit of the first set of DS units, wherein the delete encoded data slice message includes a request to delete the encoded data slices for each set of the plurality of sets of encoded data slices. Alternatively, the processing module sends the delete encoded data slice message to each DS unit of the first set of DS units when receiving a store data slice confirmation message indicating that the plurality of sets of second encoded data slices are stored in the second set of DS units. Alternatively, the processing module sends the delete encoded data slice message to each DS unit of the first set of DS units … processing module sends the delete encoded data slice message to each DS unit of the first set of DS units …) Dhuse-Hoffman does not mention about deletion time. Resch discloses: deletion time. (Resch [0121] … stores a deletion marker regarding the encoded data slice when … to deleting the encoded data slice…determines when to delete the encoded data slice based on the deletion marker and in accordance with a deletion scheme. … deleting the encoded data slice when memory availability compares unfavorably to a memory availability threshold, deleting the encoded data slice when a predetermined period of time has expired …, deleting the encoded data slice when utilization of the memory space compares unfavorably to a memory space usage threshold, and deleting the encoded data slice based on a deletion instruction ….) It would have been obvious before the effective filing date of the claimed to a person having ordinary skill in the art to incorporate Resch’s method of setting when to delete the encoded data slice into the system in order to improve the reliability of the system. As per claim 17: Dhuse-Hoffman-Resch further discloses: wherein periodically reducing comprises one or more of: an explicit deletion of a particular encoded data slice; and performing the encoded data slice reduction operation. (Dhuse, [0098] … step 138 where the processing module deletes the plurality of sets of encoded data slices by sending a delete encoded data slice message to each DS unit of the first set of DS units, wherein the delete encoded data slice message includes a request to delete the encoded data slices for each set of the plurality of sets of encoded data slices. Alternatively, the processing module sends the delete encoded data slice message to each DS unit of the first set of DS units when receiving a store data slice confirmation message indicating that the plurality of sets of second encoded data slices are stored in the second set of DS units. Alternatively, the processing module sends the delete encoded data slice message to each DS unit of the first set of DS units … processing module sends the delete encoded data slice message to each DS unit of the first set of DS units …) Conclusion Any inquiry concerning this communication or earlier communications from the examiner should be directed to THIEN DANG NGUYEN whose telephone number is (571)272-9189. The examiner can normally be reached Monday-Friday 7 AM - 3:30 PM. Examiner interviews are available via telephone, in-person, and video conferencing using a USPTO supplied web-based collaboration tool. To schedule an interview, applicant is encouraged to use the USPTO Automated Interview Request (AIR) at http://www.uspto.gov/interviewpractice. If attempts to reach the examiner by telephone are unsuccessful, the examiner’s supervisor, Mark Featherstone can be reached at 571-270-3750. The fax phone number for the organization where this application or proceeding is assigned is 571-273-8300. Information regarding the status of published or unpublished applications may be obtained from Patent Center. Unpublished application information in Patent Center is available to registered users. To file and manage patent submissions in Patent Center, visit: https://patentcenter.uspto.gov. Visit https://www.uspto.gov/patents/apply/patent-center for more information about Patent Center and https://www.uspto.gov/patents/docx for information about filing in DOCX format. For additional questions, contact the Electronic Business Center (EBC) at 866-217-9197 (toll-free). If you would like assistance from a USPTO Customer Service Representative, call 800-786-9199 (IN USA OR CANADA) or 571-272-1000. /Thien Nguyen/ Primary Examiner, Art Unit 2111
Read full office action

Prosecution Timeline

Jan 15, 2025
Application Filed
Aug 26, 2026
Non-Final Rejection mailed — §101, §103, §112 (current)

Precedent Cases

Applications granted by this same examiner with similar technology

Patent 12750159
TRANSMISSION METHOD, RECEPTION METHOD, TRANSMITTER, AND RECEIVER
2y 2m to grant Granted Sep 29, 2026
Patent 12743338
TRANSMISSION FAILURE FEEDBACK SCHEMES FOR REDUCING CROSSTALK
2y 0m to grant Granted Sep 22, 2026
Patent 12737256
METHOD OF OPERATING MEMORY CONTROLLER, MEMORY SYSTEM, AND RELATED DEVICES
1y 11m to grant Granted Sep 15, 2026
Patent 12730711
MEMORY INCLUDING ECC ENGINE AND OPERATION METHOD OF MEMORY
2y 6m to grant Granted Sep 08, 2026
Patent 12724665
SOFT DECODING METHOD, ELECTRONIC DEVICE, AND STORAGE MEDIUM
2y 0m to grant Granted Sep 01, 2026
Study what changed to get past this examiner. Based on 5 most recent grants.

Strategy Recommendation AI-generated — please review before filing

Get a prosecution strategy drawn from examiner precedents, rejection analysis, and claim mapping.
Typically takes 5-10 seconds — AI-generated, attorney review required before filing

Prosecution Projections

1-2
Expected OA Rounds
87%
Grant Probability
99%
With Interview (+11.7%)
2y 0m (~3m remaining)
Median Time to Grant
Low
PTA Risk
Based on 715 resolved cases by this examiner. Grant probability derived from career allowance rate.

Sign in with your work email

Enter your email to receive a magic link. No password needed.

Personal email addresses (Gmail, Yahoo, etc.) are not accepted.

Free tier: 3 strategy analyses per month