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
This Office Action corresponds to application 1/9058,668 which was filed on 2/20/2025 and claims benefit of 63/567,627 filed 03/20/2024.
Response to Amendment
In the reply filed 4/28/2026, claims 1-2, 4, 9-10, 12, 17-18, and 20 have been amended. No additional claims have been added or cancelled. Accordingly, claims 1-20 are currently pending.
The 35 USC 101 rejections have been withdrawn in light of the amendments/arguments.
Response to Arguments
Applicants’ arguments filed 4/28/2026 have been fully considered but are moot in view of new grounds of rejection.
Claim Rejections - 35 USC § 103
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-3, 9-11, and 17-19 is/are rejected under 35 U.S.C. 103 as being unpatentable over Wetterau et al. (US2021/0097036, previously presented in ‘892), hereinafter Wetterau, in view of Zhang (US2015/0278281, previously presented in ‘892), and Brahmadesam et al. (US11455290), hereinafter Brahmadesam.
Regarding Claim 1:
Wetterau teaches:
A data management system comprising: a processor (Wetterau, figure 6, note processor); and
a non-transitory computer-readable storage medium having instructions executable by the processor (Wetterau, figure 6, note processor and memory) for:
identifying a database having a plurality of data tables and a transaction table, the transaction table specifying a set of transactions and whether each transaction is valid or invalid (Wetterau, figures 3A-5, [0017, 0098, 0124-0129, 0137], note identifying data tables and transaction tables in a storage system; note the transaction table stores state and version information which can be used to determine if the transaction is currently valid or invalid);
receiving a request to store data to a plurality of separate data tables, the request specifying a first data entry for a first data table and a second data entry for a second data table (Wetterau, figures 3A-5, [0123], note receiving a request to perform a write data to multiple storage nodes);
determining a transaction identifier for the request (Wetterau, figures 3A-5, [0129, 0137], note creating an entry in the transaction table includes creating/determining the transaction ID);
storing the first data entry in the first data table in association with the transaction identifier (Wetterau, figures 3A-5, [0130], note executing the write transaction for each data entry, e.g., storing the data);
storing the second data entry in the second data table in association with the transaction identifier (Wetterau, figures 3A-5, [0130], note executing the write transaction for each data entry, e.g., storing the data); and
after storing the first and second data entries, storing the transaction identifier in the transaction table indicating that the transaction identifier is valid, wherein queries to the database are executed on transactions indicated as valid in the transaction table (Wetterau, figures 3A-5, [0130], note executing the write transaction for each data entry, e.g., storing the data, and then updating the status in the transaction table so subsequent queries may retrieve the requested objects).
While Wetterau teaches storing data in data tables using a transaction table, Wetterau doesn’t teach storing the transaction identifier in the table after storing the first and second data entries. However, Zhang is in the same field of endeavor, data management, and Zhang teaches:
after storing the first and second data entries, storing the transaction identifier in the transaction table indicating that the transaction identifier is valid, wherein queries to the database are executed on transactions indicated as valid in the transaction table (Zhang, [0006, 0014-0015], note the transaction IDs are updated when the transaction is complete. When combined with the previously cited reference this would be for the first and second data entries as taught by Wetterau).
It would have been obvious to one of ordinary skill in the art before the effective date of filing to modify the cited references to incorporate the teachings of Zhang because all references are directed towards data management and because Zhang would expand upon the teachings of the previously cited references in data integrity which would improve the efficiency by utilizing transaction IDs to improve performance (Zhang, [0013-0016]).
While Wetterau as modified teaches storing data in data tables using a transaction table, Wetterau as modified doesn’t teach that the queries are only executed on the data tables for transaction indicated as valid in the transaction table. However, Brahmadesam is in the same field of endeavor, data management and information retrieval, and Brahmadesam teaches:
after storing the first and second data entries, storing the transaction identifier in the transaction table indicating that the transaction identifier is valid, wherein queries to the database are only executed on the plurality of data tables for transactions indicated as valid in the transaction table (Brahmadesam, figure 5, column 14 lines 56-63, column 15 lines 34-46, column 16 lines 11-32, note receiving a query and querying the transaction table to identify change logs from transactions that have committed, e.g., are valid; note that the change logs, e.g. requested data tables, are queried after the transaction table was accessed and valid change logs were identified; note transaction tables comprising transaction identifiers and updated after storing data entries. When combined with the previously cited references, this would be for the valid data teaches as taught by Wetterau and Zhang).
It would have been obvious to one of ordinary skill in the art before the effective date of filing to modify the cited references to incorporate the teachings of Brahmadesam because all references are directed towards data management and information retrieval and because Brahmadesam would expand upon the teachings of the previously cited references in information retrieval which would improve the efficiency by only accessing relevant data (Brahmadesam, column 16 lines 11-32).
Regarding Claim 2:
Wetterau as modified shows the system as disclosed above;
Wetterau as modified further teaches:
wherein the instructions for the data management system are further executable for: receiving, from a querying system, a query to the database (Wetterau, figure 5, [0130-0139], note receiving a query to read from the database);
accessing the transaction table before querying the data tables (Wetterau, figure 5, [0130-0139], note accessing the transaction table) (Brahmadesam, figure 5, column 14 lines 56-63, column 15 lines 34-46, column 16 lines 11-32, note receiving a query and querying the transaction table to identify change logs from transactions that have committed, e.g., are valid; note that the change logs, e.g. requested data tables, are queried after the transaction table was accessed and valid change logs were identified; note transaction tables comprising transaction identifiers and updated after storing data entries. When combined with the previously cited references, this would be for the valid data teaches as taught by Wetterau and Zhang);
filtering data in the transaction table before querying the data tables to identify one or more transactions, each of the one or more transactions indicated as valid and associated with respective transaction identifiers (Wetterau, figure 5, [0130-0139], note determining which transactions are associated with the query, which is interpreted as filtering) (Brahmadesam, figure 5, column 14 lines 56-63, column 15 lines 34-46, column 16 lines 11-32, note receiving a query and querying the transaction table to identify change logs from transactions that have committed, e.g., are valid; note that only the shards or valid change logs are identified to be queried, e.g., filtering data in the transaction table before the querying. When combined with the previously cited references, this would be for the valid data teaches as taught by Wetterau and Zhang);
retrieving, from the plurality of data tables, data associated with the one or more transaction identifiers (Wetterau, figure 5, [0130-0139], note determining which transactions are associated with the query and if the transactions are valid and ready to be retrieved, executing the query, e.g., retrieving the data associated with the transaction identifiers) (Brahmadesam, figure 5, column 14 lines 56-63, column 15 lines 34-46, column 16 lines 11-32, note receiving a query and querying the transaction table to identify change logs from transactions that have committed, e.g., are valid; note that the change logs, e.g. requested data tables, are queried after the transaction table was accessed and valid change logs were identified; note transaction tables comprising transaction identifiers and updated after storing data entries. When combined with the previously cited references, this would be for the valid data teaches as taught by Wetterau and Zhang);
applying the received query to the retrieved data to generate a query response (Wetterau, figure 5, [0130-0139], note determining which transactions are associated with the query and if the transactions are valid and ready to be retrieved, executing the query, e.g., retrieving the data associated with the transaction identifiers); and
transmitting the query response to the querying system (Wetterau, figure 5, [0130-0139], note providing the data to the front-end system or the client).
It would have been obvious to one of ordinary skill in the art before the effective date of filing to modify the cited references to incorporate the teachings of Brahmadesam because all references are directed towards data management and information retrieval and because Brahmadesam would expand upon the teachings of the previously cited references in information retrieval which would improve the efficiency by only accessing relevant data (Brahmadesam, column 16 lines 11-32).
Regarding Claim 3:
Wetterau as modified shows the system as disclosed above;
Wetterau as modified further teaches:
wherein transactions to the plurality of data tables of the database are not jointly idempotent (Wetterau, figures 3A-5, [0124-0139], note the data tables may not be jointly idempotent).
Claim 9 discloses substantially the same limitations as claim 1 respectively, except claim 9 is directed to a method while claim 1 is directed to a system. Therefore claim 9 is rejected under the same rationale set forth for claim 1.
Claim 10 discloses substantially the same limitations as claim 2 respectively, except claim 10 is directed to a method while claim 2 is directed to a system. Therefore claim 10 is rejected under the same rationale set forth for claim 2.
Claim 11 discloses substantially the same limitations as claim 3 respectively, except claim 11 is directed to a method while claim 3 is directed to a system. Therefore claim 11 is rejected under the same rationale set forth for claim 3.
Claim 17 discloses substantially the same limitations as claim 1 respectively, except claim 17 is directed to a non-transitory computer-readable storage medium while claim 1 is directed to a system. Therefore claim 17 is rejected under the same rationale set forth for claim 1.
Claim 18 discloses substantially the same limitations as claim 2 respectively, except claim 18 is directed to a non-transitory computer-readable storage medium while claim 2 is directed to a system. Therefore claim 18 is rejected under the same rationale set forth for claim 2.
Claim 19 discloses substantially the same limitations as claim 3 respectively, except claim 19 is directed to a non-transitory computer-readable storage medium while claim 3 is directed to a system. Therefore claim 19 is rejected under the same rationale set forth for claim 3.
Claim Rejections - 35 USC § 103
Claim(s) 4, 12, and 20 is/are rejected under 35 U.S.C. 103 as being unpatentable over Wetterau in view of Zhang, Brahmadesam, and Colrain et al. (US2017/0220621), hereinafter Colrain.
Regarding Claim 4:
Wetterau as modified shows the system as disclosed above;
Wetterau as modified further teaches:
invalidating an entry in one of the data tables by invalidating a transaction in the transaction table (Wetterau, figure 3c, [0120], note a transaction may be aborted; note the transaction state is updated to aborted, e.g., invalid) (Zhang, figure 2, [0014-0016, 0021, 0032-0033], note aborting a transaction);
While Wetterau as modified teaches invalidating a transaction, to further support this interpretation Colrain is in the same field of endeavor, data management and information retrieval, and Colrain teaches:
invalidating an entry in one of the data tables by invalidating a transaction in the transaction table (Colrain, [0099], note recording a transaction as invalid in the transaction table and subsequent queries are rejected due to the transaction being invalidated).
It would have been obvious to one of ordinary skill in the art before the effective date of filing to modify the cited references to incorporate the teachings of Colrain because all references are directed towards data management and because Colrain would expand upon the teachings of the previously cited references in data management, accessibility, and accuracy would improve the efficiency of the system by allowing transactions to be invalidated and thereby saving processing, space, and time.
Claim 12 discloses substantially the same limitations as claim 4 respectively, except claim 12 is directed to a method while claim 4 is directed to a system. Therefore claim 12 is rejected under the same rationale set forth for claim 4.
Claim 20 discloses substantially the same limitations as claim 4 respectively, except claim 20 is directed to a non-transitory computer-readable storage medium while claim 4 is directed to a system. Therefore claim 20 is rejected under the same rationale set forth for claim 4.
Claim Rejections - 35 USC § 103
Claim(s) 5-8 and 13-16 is/are rejected under 35 U.S.C. 103 as being unpatentable over Wetterau in view of Zhang, Brahmadesam, and Chrysanthakopoulos et al. (US2017/0374161, previously presented in ‘892), hereinafter Chrysanthakopoulos.
Regarding Claim 5:
Wetterau as modified shows the system as disclosed above;
Wetterau as modified further teaches:
receiving a request to invalidate a transaction (Wetterau, figure 3c, [0120], note a transaction may be aborted) (Zhang, figure 2, [0014-0016, 0021, 0032-0033], note aborting a transaction);
accessing the transaction table (Wetterau, figures 3A-5, [0124-0139], note accessing the transaction table for any operation to the data entries);
filtering data in the transaction table to identify the transaction, the transaction indicated as valid and associated with a transaction identifier (Wetterau, figures 3A-5, [0130-0139], note determining which transactions are associated with the query, which is interpreted as filtering); and
storing the transaction identifier as a new record in the transaction table, the new record associated with a new timestamp and indicating that the transaction is invalid (Wetterau, figures 3A-5, [01020, 0130], note updating the transaction table for the aborted transaction) (Zhang, figure 2, [0014-0016, 0031, 0039], note storing a new transaction ID and updating a transaction table for the aborted transaction indicating it is invalid).
It would have been obvious to one of ordinary skill in the art before the effective date of filing to modify the cited references to incorporate the teachings of Zhang because all references are directed towards data management and because Zhang would expand upon the teachings of the previously cited references in data integrity which would improve the efficiency by utilizing transaction IDs to improve performance (Zhang, [0013-0016]).
While Wetterau as modified teaches invalidating a transaction, Wetterau as modified doesn’t specifically state the request to abort is coming from the client. However, Chrysanthakopoulos is in the same field of endeavor, data management, and Chrysanthakopoulos teaches:
receiving, from a client device, a request to invalidate a transaction (Chrysanthakopoulos, [0082], note the client may request to cancel a transaction, which is interpreted as invalidating the transaction).
It would have been obvious to one of ordinary skill in the art before the effective date of filing to modify the cited references to incorporate the teachings of Chrysanthakopoulos because all references are directed towards data management and because Chrysanthakopoulos would expand upon the teachings of the previously cited references in data integrity and management which would improve the efficiency of the system by allowing transactions to be cancelled and thereby saving processing, space, and time.
Regarding Claim 6:
Wetterau as modified shows the system as disclosed above;
Wetterau as modified further teaches:
wherein the transaction is invalidated because at least one of the data entries corresponding to the transaction identifier is erroneous (Chrysanthakopoulos, figures 12-13, [0076, 0081-0082, 0088, 0090], note the transaction may fail due to data conflicts, which is interpreted as erroneous).
It would have been obvious to one of ordinary skill in the art before the effective date of filing to modify the cited references to incorporate the teachings of Chrysanthakopoulos because all references are directed towards data management and because Chrysanthakopoulos would expand upon the teachings of the previously cited references in data integrity and management which would improve the efficiency of the system by allowing transactions to be cancelled and thereby saving processing, space, and time.
Regarding Claim 7:
Wetterau as modified shows the system as disclosed above;
Wetterau as modified further teaches:
wherein at least one other data entry corresponding to the transaction identifier is not erroneous (Wetterau, figures 3A-5, [0124-0139], note at least one data entry is not erroneous.
Regarding Claim 8:
Wetterau as modified shows the system as disclosed above;
Wetterau as modified further teaches:
wherein an earlier timestamped transaction representing the same data as the invalidated transaction is retrieved responsive to a query to the data management system (Zhang, [0014-0016, 0021, 0033], note aborted transactions may be rolled-backed transactions which means an earlier timestamped transaction representing the data is retrieved responsive to a query such as the querying as taught by Wetterau).
It would have been obvious to one of ordinary skill in the art before the effective date of filing to modify the cited references to incorporate the teachings of Zhang because all references are directed towards data management and because Zhang would expand upon the teachings of the previously cited references in data integrity which would improve the efficiency by utilizing transaction IDs to improve performance (Zhang, [0013-0016]).
Claim 13 discloses substantially the same limitations as claim 5 respectively, except claim 13 is directed to a method while claim 5 is directed to a system. Therefore claim 13 is rejected under the same rationale set forth for claim 5.
Claim 14 discloses substantially the same limitations as claim 6 respectively, except claim 14 is directed to a method while claim 6 is directed to a system. Therefore claim 14 is rejected under the same rationale set forth for claim 6.
Claim 15 discloses substantially the same limitations as claim 7 respectively, except claim 15 is directed to a method while claim 7 is directed to a system. Therefore claim 15 is rejected under the same rationale set forth for claim 7.
Claim 16 discloses substantially the same limitations as claim 8 respectively, except claim 16 is directed to a method while claim 8 is directed to a system. Therefore claim 16 is rejected under the same rationale set forth for claim 8.
Conclusion
The prior art made of record and not relied upon is considered pertinent to applicant's disclosure. Angius et al. (US12007993) teaches using transaction status information when retrieving data.
Applicant's amendment necessitated the new ground(s) of rejection presented in this Office action. Accordingly, THIS ACTION IS MADE FINAL. See MPEP § 706.07(a). Applicant is reminded of the extension of time policy as set forth in 37 CFR 1.136(a).
A shortened statutory period for reply to this final action is set to expire THREE MONTHS from the mailing date of this action. In the event a first reply is filed within TWO MONTHS of the mailing date of this final action and the advisory action is not mailed until after the end of the THREE-MONTH shortened statutory period, then the shortened statutory period will expire on the date the advisory action is mailed, and any nonprovisional extension fee (37 CFR 1.17(a)) pursuant to 37 CFR 1.136(a) will be calculated from the mailing date of the advisory action. In no event, however, will the statutory period for reply expire later than SIX MONTHS from the mailing date of this final action.
Any inquiry concerning this communication or earlier communications from the examiner should be directed to JOHN J MORRIS whose telephone number is (571)272-3314. The examiner can normally be reached M-F 6:00-2:00 PM 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, James Trujillo can be reached at 571-272-3677. 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.
/JOHN J MORRIS/Examiner, Art Unit 2151 7/7/2026
/JAY A MORRISON/Primary Examiner, Art Unit 2151