Prosecution Insights
Last updated: July 17, 2026
Application No. 18/193,406

SYNCHRONOUS DATABASE REPLICATION USING ERASURE CODING

Non-Final OA §102§112
Filed
Mar 30, 2023
Examiner
FILIPCZYK, MARCIN R
Art Unit
2153
Tech Center
2100 — Computer Architecture & Software
Assignee
Amazon Technologies Inc.
OA Round
5 (Non-Final)
64%
Grant Probability
Moderate
5-6
OA Rounds
2m
Est. Remaining
99%
With Interview

Examiner Intelligence

Grants 64% of resolved cases
64%
Career Allowance Rate
293 granted / 454 resolved
+9.5% vs TC avg
Strong +37% interview lift
Without
With
+36.8%
Interview Lift
resolved cases with interview
Typical timeline
3y 6m
Avg Prosecution
13 currently pending
Career history
484
Total Applications
across all art units

Statute-Specific Performance

§101
1.3%
-38.7% vs TC avg
§103
49.5%
+9.5% vs TC avg
§102
45.4%
+5.4% vs TC avg
§112
1.1%
-38.9% vs TC avg
Black line = Tech Center average estimate • Based on career data from 454 resolved cases

Office Action

§102 §112
Response to Amendment 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 . This action is responsive to amendment received on 4/20/26 and an RCE filed on 5/20/26. Claims 1-6 and 8-20 are pending. 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, 5 and 14 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. The subject matter comprising “failure… the same communications” is indefinite. It is not clear how a failure occurs between the same communications with redundant paths. Further explanation and support from the specification is requested to avoid future 35 USC 112 1st and/or 2nd paragraph rejections. Claims 2-4, 6, 8-13 and 15-20 depend from claims 1, 5 and 14 respectively, and are therefore rejected on the merit. Claim Rejections - 35 USC § 102 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 the appropriate paragraphs of 35 U.S.C. 102 that form the basis for the rejections under this section made in this Office action: A person shall be entitled to a patent unless – (a)(1) the claimed invention was patented, described in a printed publication, or in public use, on sale, or otherwise available to the public before the effective filing date of the claimed invention. Claim(s) 1-6 and 8-20 is/are rejected under 35 U.S.C. 102(a)(1) as being anticipated by Lin (USPN. 2019/0280879). Regarding claims 1-6 and 8-20, Lin discloses: 1. A system, comprising: a plurality of computing devices, respectively comprising at least one processor and a memory, that are configured to implement a distributed database system (fig. 1 and 6); wherein the distributed database system comprises a plurality of database instances, and wherein a first one of the plurality of database instances is configured to (fig. 1-2, nodes 106 and 108, cloud computing nodes running a distributed ledger): receive a request that causes a write to a database hosted by the distributed database system (Abstract, transaction request in the form of an update/write); synchronously replicate the write to the database to a second one and a third one of the plurality of database instances, wherein to synchronously replicate the write, the first one of the plurality of database instances is configured to (fig. and pars. 91-92, respective copies stored in Participants A-C): generate a replication message for the write to include the write as part of an ordered replication stream from the first one of the database instances to the second one the plurality of database instances (fig. 5, item 506, par. 114, EC message is created); apply an erasure coding scheme to the replication message that divides and encodes the replication message for the write to the database into a number of chunks, wherein the erasure coding scheme allows the replication message to be reassembled with less than the number of chunks (fig. 5, items 504 and 506, par. 116, EC message divided into number of blocks); and perform a same number of communications corresponding to the number of chunks to separately send the chunks of the replication message individually to both the second one and the third one of the plurality of database instances across a network (fig. 4, par. 110, distributed system works in various steps and any order and fig. 5, par. 116, “EC blocks 508 are sent to the respective backup nodes 406 with the initial messages, see below for further mapping), that includes a plurality of redundant paths that provide alternative routes between the first one of the plurality of database instances and the second one and the third one of the plurality of database instances, wherein each of the plurality of communications can individually fail to be received at the second and third ones of the plurality of database instances (fig. 5, par. 116, “EC blocks 508 are sent to the respective backup nodes 406 with the initial messages. Fig. 4, par. 121, the node 404 sends a plurality of messages to backup nodes including first initial and second initial and third messages, note that backup nodes may be construed as a distributed backup node. The messages are used to reconstruct tree and verify messages. Note that par. 128 teaches the messages/transaction to reconstruct may fail, however, this limitation is not required to take place in the claimed limitation by the use of word “can”. Note that the claimed subject matter in view of the specification is focused on plural distributions as discussed in pars. 61 and 62 and fig. 6, item 630, instant publication, and prior art Lin teaches the same erasure code techniques in pars. 114-116 and 121 wherein many network nodes are requested to submit the most recent sequence number of latest block information to recover, synchronize and provide consensus of entire system, see pa. 169); receive a first acknowledgement that the write has been applied for the second one of the plurality of database instances (figs. 6-8, verify consensus) according to a first number of the chunks received at the second one of the plurality of database instances from the first one of the plurality of database instances (pars. 121-122, primary node 404 sends out messages to multiple backup nodes/database instances and receives a message back from multiple backup nodes that message has been received); receive a second acknowledgement that the write has been applied for the third one of the plurality of database instances according to a second number of the chunks received at the third one of the plurality of database instances from the first one of the plurality of database instances, wherein the first number of chunks received at the second one of the plurality of the database instances is different than the second number of the chunks received at the third one of the plurality of database instances (pars. 121-122, primary node 404 sends out messages to multiple backup nodes/database instances and receives a message back from multiple backup nodes that message has been received, and pars. 116-117, EC blocks comprise different sizes from each other and par. 181, subset of EC blocks may be retrieved in the ECHO messages to reconstruct a target transaction hence both size and subset of EC code is variable) according to a failure of at least one of the same communications from the first one of the database instances along at least one of the plurality of redundant paths to reach the third one of the plurality of database instances (par. 169, nodes participate in communication and based on synchronization among the nodes participate in the consensus process equated to the claimed failure of the same communication along plurality of redundant paths. Note that consensus may fail based on quorum verification based on ECHO messages, see par. 148); after receipt of the first and second acknowledgements that the write has been applied for the second one and the third one of the plurality of database instances, send a response to the request that indicates that the write is committed to the database (figs. 6-8, pars. 121-123 verify consensus on transaction). 2. The system of claim 1, wherein the first one of the plurality of database instances is further configured to: after an elapsed period of time without receiving at least one acknowledgment, resend one or more of the chunks of the replication message or send one or more further chunks of the replication message determined according to the erasure coding scheme (pars. 109 and 154, consensus process comprising change process from backup node). 3. The system of claim 1, wherein the second one of the plurality of database instances are configured to: receive at least some of the chunks of the replication message (fig. 5, par. 116, EC blocks 508 are sent and received to the respective backup nodes 406 with the initial messages); determine that a sufficient number of the chunks to reassemble the replication message have been received (figs. 6-8, verify consensus); reassemble the replication message (par. 127-128, reconstruct the transaction request based on subset of messages); apply the write indicated in the replication message and send the acknowledgment that the write has been committed to the first one of the plurality of database instances (figs. 6-8, pars. 122-123 and 182, verify consensus on transaction and status nodes are in sync). 4. The system of claim 1, wherein the first one of the plurality of databases instances is in a first region of a provider network that implements the distributed database system and wherein the second one of the plurality of database instances is in a second region of the provider network (fig. 2, distributed nodes and regions). 5. A method, comprising (fig. 1-2): receiving, at a first database instance of a distributed database system, a request that causes a write to a database (Abstract, transaction request in the form of an update/write); synchronously replicating, by the distributed database system, the write to the database to a second database instance and a third database instance of the distributed database system, comprising (fig. and pars. 91-92, respective copies stored in Participants A-C): dividing and encoding a replication message for the write to the database into a number of chunks according to an erasure coding scheme, wherein the erasure coding scheme allows the replication message to be reassembled with less than the number of chunks (fig. 5, items 504 and 506, par. 116, EC message divided into number of blocks); performing by the first database instance, a same number of communications corresponding to the number of chunks to separately send the chunks of the replication message individually to both the second one and the third one of the plurality of database instances across a network (fig. 4, par. 110, distributed system works in various steps and any order and fig. 5, par. 116, “EC blocks 508 are sent to the respective backup nodes 406 with the initial messages, see below for further mapping), that includes a plurality of redundant paths that provide alternative routes between the first one of the plurality of database instances and the second one and the third one of the plurality of database instances, wherein each of the plurality of communications can individually fail to be received at the second and third ones of the plurality of database instances (fig. 5, par. 116, “EC blocks 508 are sent to the respective backup nodes 406 with the initial messages. Fig. 4, par. 121, the node 404 sends a plurality of messages to backup nodes including first initial and second initial and third messages, note that backup nodes may be construed as a distributed backup node. The messages are used to reconstruct tree and verify messages. Note that par. 128 teaches the messages/transaction to reconstruct may fail, however, this limitation is not required to take place in the claimed limitation by the use of word “can”. Note that the claimed subject matter in view of the specification is focused on plural distributions as discussed in pars. 61 and 62 and fig. 6, item 630, instant publication, and prior art Lin teaches the same erasure code techniques in pars. 114-116 and 121 wherein many network nodes are requested to submit the most recent sequence number of latest block information to recover, synchronize and provide consensus of entire system, see pa. 169); receiving, at the first database instance, a first acknowledgement that the write has been applied for the second one of the plurality of database instances (figs. 6-8, verify consensus) according to a first number of the chunks received at the second one of the plurality of database instances from the first one of the plurality of database instances (pars. 121-122, primary node 404 sends out messages to multiple backup nodes/database instances and receives a message back from multiple backup nodes that message has been received); receiving, at the first database instance, a second acknowledgement that the write has been applied for the third one of the plurality of database instances according to a second number of the chunks received at the third one of the plurality of database instances from the first one of the plurality of database instances, wherein the first number of chunks received at the second one of the plurality of the database instances is different than the second number of the chunks received at the third database instance (pars. 121-122, primary node 404 sends out messages to multiple backup nodes/database instances and receives a message back from multiple backup nodes that message has been received, and pars. 116-117, EC blocks comprise different sizes from each other and par. 181, subset of EC blocks may be retrieved in the ECHO messages to reconstruct a target transaction hence both size and subset of EC code is variable) according to a failure of at least one of the same communications from the first one of the database instances along at least one of the plurality of redundant paths to reach the third one of the plurality of database instances (par. 169, nodes participate in communication and based on synchronization among the nodes participate in the consensus process equated to the claimed failure of the same communication along plurality of redundant paths. Note that consensus may fail based on quorum verification based on ECHO messages, see par. 148); and sending, by the first database instance, a response to the request that indicates that the write is committed to the database (figs. 6-8, pars. 121-123 verify consensus on transaction). 6. The method of claim 5, further comprising: after an elapsed period of time without receiving an acknowledgment, resending one or more of the chunks of the replication message or sending one or more further chunks of the replication message determined according to the erasure coding scheme (pars. 109 and 154, consensus process comprising change process from backup node). 8. The method of claim 5, further comprising: receiving, at the first database instance of a distributed database system, a second request that causes a second write to the database (Abstract, transaction request in the form of an update/write); dividing and encoding a second replication message for the second write to the database into a second number of chunks according to the erasure coding scheme (fig. 5, items 504 and 506, par. 116, EC message divided into number of blocks); performing a further plurality of communications to separately send the chunks of the second replication message to the second database instance across the network wherein each of the plurality of communications can individually fail to be received at the second one of the plurality of database instances (fig. 5, par. 116, “EC blocks 508 are sent to the respective backup nodes 406 with the initial messages. Fig. 4, par. 121, the node 404 sends a plurality of messages to backup nodes including first initial and second initial messages, note that backup nodes may be construed as a distributed backup node. The messages are used to reconstruct tree and verify messages. Note that par. 128 teaches the messages/transaction to reconstruct may file, however, this limitation is no required to take place in the claimed limitation by the use of word “can”); and after failing to receive an acknowledgement that the second write has been applied for the second database instance, sending, by the first database instance, a response to the request that indicates that the second request failed (pars. 128 and 148, response that request failed). 9. The method of claim 5, wherein an adjudicator for the second database reassembles at least some of the chunks of the replication message to apply the write for the second database instance (par. 127-128, reconstruct the transaction request based on subset of messages). 10. The method of claim 5, wherein the erasure coding scheme is a rateless erasure coding scheme (par. 115, EC code types). 11. The method of claim 5, further comprising: receiving, by the second database instance, at least some of the chunks of the replication message (fig. 5, par. 116, EC blocks 508 are sent and received to the respective backup nodes 406 with the initial messages); determining, by the second database instance, that a sufficient number of the chunks to reassemble the replication message have been received (par. 127-128, reconstruct the transaction request based on subset of messages); reassembling, by the second database instance, the replication message (par. 127-128, reconstruct the transaction request based on subset of messages); applying, by the second database instance, the write indicated in the replication message and sending, by the second database instance, the acknowledgment that the write has been committed to the first one of the plurality of database instances (figs. 6-8, pars. 122-123 and 182, verify consensus on transaction and status nodes are in sync). 12. The method of claim 5, wherein the first databases instance is in a first region of a provider network that implements the distributed database system and wherein the second database instance is in a second region of the provider network (fig. 2, distributed nodes and regions). 13. The method of claim 5, wherein the distributed database system is a non-relational database service implemented as part of a provider network (figs. 1-2, pars. 91-92, network nodes comprise different features and structures to perform specific jobs). Regarding medium claims 14-20, they claim substantially the same subject matter rejected above with respect to system claims 1-4 and method claims 5, 6 and 8-13 and are therefore rejected to on the merits. In addition, regarding claim 17, Lin further discloses an adjudicator for the second database reassembles at least some of the chunks (figs. 2, 13 and 14, items 1312 and 1410 par. 127-128, reconstruct the transaction request based on subset of messages), and further discloses wherein the erasure coding scheme is a maximum distance separable erasure coding scheme (par. 115, optimal erasure code and EC code types). Response to Arguments Applicant's arguments filed 4/20/26 have been fully considered but they are not persuasive. See comments below. Applicant alleges the newly amended limitation is novel over Lin according to failure. Examiner disagrees. The newly amended limitation is rejected under 112 as being indefinite (please see rejection above). In addition, with regard to acknowledgments, Lin teaches nodes participate in communication and based on synchronization among the nodes participate in the consensus process which examiner equates to the claimed failure of the same communication along plurality of redundant paths. Note that the consensus may fail based on quorum verification and further based on ECHO messages, see par. 148. The consensus among nodes and ECHO messages teach the claimed limitation. No other allegations were raised. Previous allegations and responses: Applicant alleges the claim sends “same number of communications” corresponding to “number of chunks” to both databases, then acknowledges from the other databases that “different number of chunks received at the different instances”. Examiner is not persuaded. The claimed subject matter comprises sending chunks across “a plurality of redundant paths that provide alternative routes between the… plurality of database instances”. This implies that the chunks at some point are different to generate alternative routes. Similarly, Lin enables different size and same size chunks to be sent over to nodes/instance databases ((pars. 121-122, primary node 404 sends out messages to multiple backup nodes/database instances and receives a message back from multiple backup nodes that message has been received, and pars. 116-117, EC blocks comprise different sizes from each other and par. 181, subset of EC blocks may be retrieved in the ECHO messages to reconstruct a target transaction hence both size and subset of EC code is variable). The size of the chunks and subsets used to message between the nodes may differ and may be collected from a plurality of nodes to verify and or reconstruct data/transaction. Examiner believes all the allegations with regard to the pending claims have been addressed. Previous allegations and responses: Applicant alleges the newly amened features cited below: “perform a plurality of communications to separately send the chunks of the replication message individually to the second one of the plurality of database instances across a network (fig. 4, par. 110, distributed system works in various steps and any order and fig. 5, par. 116, “EC blocks 508 are sent to the respective backup nodes 406 with the initial messages, see below for further mapping), that includes a plurality of redundant paths that provide alternative routes between the first one of the plurality of database instances and the second one of the plurality of database instances, wherein each of the plurality of communications can individually fail to be received at the second one of the plurality of database instances (fig. 5, par. 116, “EC blocks 508 are sent to the respective backup nodes 406 with the initial messages. Fig. 4, par. 121, the node 404 sends a plurality of messages to backup nodes including first initial and second initial messages, note that backup nodes may be construed as a distributed backup node. The messages are used to reconstruct tree and verify messages. Note that par. 128 teaches the messages/transaction to reconstruct may fail, however, this limitation is no required to take place in the claimed limitation by the use of word “can”)”. Lin teaches a distributed system with a plurality of nodes that are distributed over the network. Each message sent from the primary node may be directed to a distributed backup node that is shared as described in pars. 86, 91 and 110. In essence, multiple messages are sent to a plurality of nodes of a distributed system that has flexibility and may have different applications in some environments which comprise sending and receiving the same set of instructions as the claimed subject matter (par. 110). Applicant also raises an issue that communications can individually fail. This however is the case in the field of backup systems. Lin specifically teaches reaching consensus or failing to reconstruct (par. 128). As such, all issues have been addressed as they apply to all the pending claims. Previous responses relevant to 12/26/24 amendment: Applicant argues Lin does not teach the limitation “separately send the chunks…” alleging the same chunks are sent in the instant application whereas Lin sends different chunks. In response, Examiner disagrees. The relevant portion of the OA reads, “apply an erasure coding scheme to the replication message that divides and encodes the replication message for the write to the database into a number of chunks, wherein the erasure coding scheme allows the replication message to be reassembled with less than the number of chunks (fig. 5, items 504 and 506, par. 116, EC message divided into number of blocks); and separately sending the chunks of the replication message to the second database instance across a network that includes a plurality of redundant paths that provide alternative routes between the first database instance and the second database instance (fig. 5, par. 116, “EC blocks 508 are sent to the respective backup nodes 406 with the initial messages. Backup nodes send ECHO message to primary node and other backup nodes, par. 124. The chunks are verifiable or do not meet consensus, thus comprise separate chunks which can be used for reconstruction, see fig. 8)”. Applicant opinions the claimed limitation sends “the same chunks” yet provides alternative routes between the databases respectively. Nonetheless, Lin performs verifications with backup copies, the backup copies can comprise the entire chunks and copies of blockchain (par. 90) by using multiple nodes (fig. 4 and 8, verifications). The same allegations are carried for all the independent claims. As such, all allegations are believed moot. Conclusion The prior art made of record and not relied upon is considered pertinent to applicant's disclosure in the field of synchronizing databases: USPN. 12,021,926: fig. 8 and Abstract: USPN. 2016/0323103: par. 131, fig. 12, segmented data, message, backup USPN. 2010/0037056 par. 531, erasure, distributed backup nodes Amazon application teaches replicating messages using different erasure coding schemes. Any inquiry concerning this communication or earlier communications from the examiner should be directed to MARCIN R FILIPCZYK whose telephone number is (571)272-4019. The examiner can normally be reached M-F 7-4 EST. 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, Kavita Stanley can be reached at 571-272-8352. 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. June 12, 2026 /MARCIN R FILIPCZYK/Primary Examiner, Art Unit 2153
Read full office action

Prosecution Timeline

Show 7 earlier events
Jun 26, 2025
Response after Non-Final Action
Jul 22, 2025
Non-Final Rejection mailed — §102, §112
Oct 22, 2025
Response Filed
Jan 20, 2026
Final Rejection mailed — §102, §112
Apr 20, 2026
Response after Non-Final Action
May 20, 2026
Request for Continued Examination
May 22, 2026
Response after Non-Final Action
Jun 17, 2026
Non-Final Rejection mailed — §102, §112 (current)

Precedent Cases

Applications granted by this same examiner with similar technology

Patent 12681920
ELECTRONIC DEVICE INCLUDED IN BLOCKCHAIN NETWORK AND METHOD FOR OPERATING THE SAME
2y 0m to grant Granted Jul 14, 2026
Patent 12682398
DUAL LEDGER SYNCING
1y 6m to grant Granted Jul 14, 2026
Patent 12675532
CUSTOMIZED RECOMMENDATION GENERATION USING ENTERPRISE DATA ANALYSIS AND INFERENCE
3y 2m to grant Granted Jul 07, 2026
Patent 12664179
Supporting Partial JSON Update In Replication Environment
2y 2m to grant Granted Jun 23, 2026
Patent 12639377
Resolving Points of Interest by Text Stylization
1y 3m to grant Granted May 26, 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

5-6
Expected OA Rounds
64%
Grant Probability
99%
With Interview (+36.8%)
3y 6m (~2m remaining)
Median Time to Grant
High
PTA Risk
Based on 454 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