Prosecution Insights
Last updated: July 17, 2026
Application No. 17/883,514

PERFORMING AN OPERATION IN A TREE STRUCTURE

Non-Final OA §103
Filed
Aug 08, 2022
Examiner
MITIKU, BERHANU
Art Unit
2156
Tech Center
2100 — Computer Architecture & Software
Assignee
International Business Machines Corporation
OA Round
5 (Non-Final)
55%
Grant Probability
Moderate
5-6
OA Rounds
9m
Est. Remaining
84%
With Interview

Examiner Intelligence

Grants 55% of resolved cases
55%
Career Allowance Rate
218 granted / 396 resolved
At TC average
Strong +29% interview lift
Without
With
+28.8%
Interview Lift
resolved cases with interview
Typical timeline
4y 8m
Avg Prosecution
14 currently pending
Career history
420
Total Applications
across all art units

Statute-Specific Performance

§101
1.2%
-38.8% vs TC avg
§103
94.7%
+54.7% vs TC avg
§102
3.4%
-36.6% vs TC avg
§112
0.2%
-39.8% vs TC avg
Black line = Tech Center average estimate • Based on career data from 396 resolved cases

Office Action

§103
DETAILED ACTION Notice of Pre-AIA or AIA Status 1. The present application, filed on or after March 16, 2013, is being examined under the first inventor to file provisions of the AIA . Response to Amendment 2. This Office Action is responsive to the Pre-Brief Appeal Conference decision made on May 16, 2025. 3. Claims 1-20 are pending, of which claims 1 and 11 are in independent form. Response to Arguments 4. Applicant’s arguments, see “II. CLAIM REJECTIONS AND RESPONSE TO CLAIM REJECTIONS UNDER 35 U.S.C. § 103”, filed on March 17, 2026, with respect to the independent claims have been fully considered and are persuasive. Specifically, Applicant argues that the combination of Trika et al. (US2019/0034427A1) and Goswami (US20220107925) does not adequately teach or suggest the limitations reciting: “determining … one of the non-leaf nodes to perform the operation based on the key of the record and using the cache of the determined non-leaf node;” and “performing … the operation in the determined non-leaf node using the cache of the determined non-leaf node without traversing through the tree structure to a lead node;” The examiner relied on Trika for the tree structure and relied on Goswami for the alleged teaching that non-leaf nodes include caches and that operations are performed using cached non-leaf nodes. Upon reconsideration of Applicant’s arguments and the cited portion of the references, the Examiner agrees that the previously cited disclosures do not expressly or inherently teach the claimed requirement that a selected non-leaf node includes its own cache and that the claimed operation is performed in the selection non-leaf node using that cache without traversal to leaf node. Trika generally discloses storage and management of key-value data structures using memory and buffer circuitry. However, the cited portions of Trika do not specifically disclose determining a particular non-leaf node to perform an operation based on a key and performing the operation within that non-leaf node using a cache associated with that node. Likewise, Goswami discloses a B-tree cache index stored in a memory having a faster access speed than persistent storage. While Goswami discusses intermediate nodes and leaf nodes of a B-tree cache index, the cited portions do not sufficiently teach or suggest that each non-leaf node includes a cache or that an operation is performed in a selected non-leaf node using the cache of that node without traversing to a leaf node, as required by the claims. However, upon further consideration, a new ground(s) of rejection is made in view of Gupta et al. (US 20200233801 A1), Bender et al. (US 20150370860 A1), and Archak et al. (US20120072656 A1). Claim Objections 5. Claim 5 is objected to because of the following informalities: Claim 5 recites “one or more processing units processors” which appear to a typographical error. Appropriate correction is required. Claim Rejections - 35 USC § 103 6. 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. 7. 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. 8. The factual inquiries for establishing a background for determining obviousness under 35 U.S.C. 103 are summarized as follows: 1. Determining the scope and contents of the prior art. 2. Ascertaining the differences between the prior art and the claims at issue. 3. Resolving the level of ordinary skill in the pertinent art. 4. Considering objective evidence present in the application indicating obviousness or nonobviousness. 9. Claims 1-4, 6-8, 10-12, 14-16, and 18-20 are rejected under 35 U.S.C. 103 as being unpatentable over Gupta et al. US 20200233801 A1 (hereinafter Gupta) in view of Bender et al. US 20150370860 A1 (hereinafter Bender). Regarding claim 1, Gupta discloses a computer implemented method, comprising: receiving, by one or more processing units, an operation to be performed in a tree structure, wherein the tree structure comprises a plurality of non-leaf nodes (Gupta [Abstract] e.g., “Certain aspects provide systems and methods for performing an operation on a Bε-tree”. See also [0031] e.g., “…operations performed on a tree typically include write operations, such as insertions, modifications, or deletions of data in the Bε-tree.”, see also [Abstract] e.g., “… upon determining to flush the message to a non-leaf child node … upon determining to flush the message to a leaf node “. Gupta teaches operations performed on a Bε-tree having non-leaf and leaf nodes), and a plurality of leaf nodes, wherein each of the plurality of non-leaf nodes includes a cache, and the operation is associated with a record comprising a pair of a key and a value (Gupta [Abstract] e.g., “… writing a message associated with the operation to a first slot in a first buffer of a first non-leaf node of the Bε-tree…”. See also [0018] e.g., “Buffer 162 of node 1 includes two insert messages, “insert(35)” and “insert(49)”.”, see also [0036] e.g., “Flushing the message to the leaf node in a sorted manner includes reading the contents (e.g., key-value pairs) of the leaf…”, see also [Abstract] e.g., “…flushing the message in an append-only manner to a second slot in a second buffer of the non-leaf child node…”. Gupta’s buffer of the non-leaf node stores messages containing key-value pars and therefore corresponds to the claimed cache storing records comprising key-value pairs.); determining, by the one or more processing units, one of the non-leaf nodes to perform the operation based on the key of the record and using the cache of the determined non-leaf node (Gupta [0018] e.g., “… if buffer 162 included a message with a key that had a value higher than 50, the message would have been flushed to node 4 … if buffer 162 included a message with a key that had a value lower than 20, the message would have been flushed”. Gupta determines a destination non-leaf node according to key values and associated with the message and stores/processes the message using the buffer of that determined non-leaf node); and performing, by the one or more processing units, the operation in the determined non-leaf node (Gupta [Abstract] e.g., “… writing a message associated with the operation to a first slot in a first buffer of a first non-leaf node…”. Gupta performs the insert/delete operation by writing the operation message into the buffer of the selected non-leaf node) using the cache of the determined non-leaf node (Gupta [Abstract] e.g., “… first buffer of a first non-leaf node…”. The operation is performed using the non-leaf-node buffer), [without traversing through the tree structure to a leaf node]. Gupta does not explicitly disclose without traversing through the tree structure to a leaf node. Bender discloses without traversing through the tree structure to a leaf node (Bender [0743] e.g., “… merge messages at nonleaf nodes of the tree, and on look up to sometimes get values directly out of messages stored at nonleaf nodes”. Bender teaches that information maintained in messages stored at non-leaf nodes can be directly utilized at the non-leaf node level). It would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention to combine Gupta’s non-leaf node buffers in the manner taught by Bender, namely by directly utilizing information maintained in messages stored at non-leaf nodes, because Bender teaches that values may be obtained directly from message stored at non-leaf nodes. Such a modification would improve efficiency by reducing accesses to leaf nodes while preserving the buffered-tree architecture. Regarding claim 2, the rejection of claim 1 is hereby incorporated by reference, Gupta and Bender discloses a computer implemented method, wherein the operation includes inserting the record into the tree structure and the determination of the one of the non-leaf nodes based on the key of the record further comprises: comparing, by the one or more processing units, the key of the record with keys stored in the plurality of non-leaf nodes, respectively (Gupta [0018] e.g., “… if buffer 162 included a message with a key that had a value higher than 50, the message would have been flushed to node 4 … if buffer 162 included a message with a key that had a value lower than 20…” A person of ordinary skill would understand that routing a message according to whether its key is: less than 20, between 20 and 50, and greater than 50). Regarding claim 3, the rejection of claim 1 is hereby incorporated by reference, Gupta and Bender discloses a computer implemented method, wherein performing the operation in the determined non-leaf node further comprises: storing, by the one or more processing units, the record in a cache of the determined non-leaf node (Gupta [Abstract] e.g., “… writing a message associated with the operation to a first slot in a first buffer of a first non-leaf node…” The record (key-value pair) is stored in the non-leaf node buffer). Regarding claim 4, the rejection of claim 1 is hereby incorporated by reference, Gupta and Bender discloses a computer implemented method, wherein a cache of the determined non-leaf node comprises a number of caching blocks, each corresponding to a child node of the non-leaf node (Gupta [Abstract] e.g., “… writing a message associated with the operation to a first slot in a first buffer of a first non-leaf node…”, see also [Abstract] e.g., …flushing the message in an append-only manner to a second slot in a second buffer of the non-leaf child node…”. Further [Figure 4] illustrates: Slot A (element 486], Slot B (element 488), and Slot C (element 490) within non-leaf node buffering structure). The slots (486, 488, 490) are separate storage regions within the non-leaf buffer and correspond to different child-node key ranges. Therefore, the slots constitute the claimed “caching blocks” each corresponding to a child node of the non-leaf node), and wherein the record is stored in one of the caching blocks based on the key of the record (Gupta [0018] e.g., “… when buffer 162 is full, messages “insert(35)” and insert (49) are flushed to node 3 … if buffer 162 included a message with a key that had a value higher than 50, the message would have been flushed to node 4.”. The slots are subdivisions of the non-leaf nod buffering structure and are used according to key ranges corresponding to child-node paths. ). Regarding claim 6, the rejection of claim 1 is hereby incorporated by reference, Gupta and Bender discloses a computer implemented method, wherein the operation is configured to delete the record from the tree structure, further comprises: determining, by the one or more processing units, the non-leaf node that includes a cache storing the key of the record to be deleted (Gupta [0018] e.g., “… if buffer 162 included a message with a key that had a value higher than 50, the message would have been flushed to node 4 … if buffer 162 included a message with a key that had a value lower than 20…”. Gupta associated messages with key ranges and stores those messages in non-leaf node buffers according to the key values. Accordingly, Gupta teaches determining the non-leaf node whose buffer stores the message associated with the key); and deleting, by one or more processing units, the record from the determined non-leaf node (Gupta [0031] e.g., “… operations performed on a tree typically include write operations, such as insertions, modifications, or deletions of data in the Bε-tree”. Because Gupta stores operation messages in non-leaf node buffers and expressly teaches deletion operations, Gupta teaches deleting a record associated with a key from the determined non-leaf node buffer). Regarding claim 7, the rejection of claim 1 is hereby incorporated by reference, Gupta and Bender discloses a computer implemented method, wherein the operation is configured to update the value of the record in the tree structure, further comprises: determining, by the one or more processing units, one of the non-leaf nodes that includes a cache storing the key of the record (Gupta [0018] e.g., “Buffer 162 on node 1 includes twoo insert messages, “insert(35)” and “insert(49)”. The two messages each include a key-value pair … if buffer 162 included a message with a key that had a value higher than 50, the message would have been flushed to node 4”); and updating, by the one or more processing units, the value of the record in the cache of the determined non-leaf node (Gupta [0031] e.g., “… operations performed on a tree typically include write operations, such as insertions, modifications, or deletions of data in the Bε-tree.”. Gupta expressly teaches modification operations. Gupta further teaches that records/messages are stored in non-leaf node buffers according to their keys. Therefore, Gupta teaches determining the non-leaf node buffer storing the key-associated record and modifying (updating) the value associated with that key within the non-leaf node buffer). Regarding claim 8, the rejection of claim 1 is hereby incorporated by reference, Gupta and Bender discloses a computer implemented method, further comprising: receiving, by the one or more processing units, a read operation to read one or more records in the tree structure (Gupta [Abstract] e.g., “… a first filter associated with the first slot is used for query operations associated with the first slot”. Query operations correspond to read operations), wherein at least one record of the one or more records is stored in a cache of one of the non-leaf nodes (Gupta [0018] e.g., “Buffer 162 of node 1 includes two insert messages … The two messages each include a key-value pair “. The records are stored in the non-leaf node buffer (claimed cache)); merging, by the one or more processing units, the at least one record stored in the cache of the one of the non-leaf nodes to a corresponding leaf node (Gupta [Abstract] e.g., “…upon determining to flush the message to a leaf node, flushing the message to the leaf node in a sorted manner.”. The flush operation corresponds to merging the second from the non-leaf node buffer into the corresponding leaf node); and reading, by the one or more processing units, data based on one or more values of the one or more records (Bender [0743] e.g., “… merge messages at nonleaf nodes of the tree, and on look up to sometimes get values directly out of messages stored at nonleaf nodes” Bender teaches reading values associated with records maintained in non-leaf node message structure). Gupta teaches the read/query architecture and flushing to leaves. Bender teaches obtaining values from messages stored at non-leaf nodes. It would have been obvious to employ Gupta’s buffered-tree structure using Bender’s technique of obtaining values from non-leaf node messages to facilitate read operations. Regarding claim 11, the rejection of claim 10 is hereby incorporated by reference, Gupta and Bender discloses an apparatus, wherein the operation is configured to insert the record into the determined non-leaf node further comprises: comparing the key of the record with keys stored in the respective non-leaf nodes (Gupta [0018] e.g., “… if buffer 162 included a message with a key that had a value higher than 50, the message would have been flushed to node 4 … if buffer 162 162 included a message with a key that had a value lower than 20…” A person of ordinary skill would understand that routing a message according to whether its key is: less than 20, between 20 and 50, and greater than 50). Regarding claim 12, the rejection of claim 10 is hereby incorporated by reference, Gupta and Bender discloses an apparatus, wherein performing the operation in the determined non-leaf node comprises: storing the record in a cache of the determined non-leaf node (Gupta [Abstract] e.g., “… writing a message associated with the operation to a first slot in a first buffer of a first non-leaf node…” The record (key-value pair) is stored in the non-leaf node buffer). Regarding claim 14, the rejection of claim 10 is hereby incorporated by reference, Gupta and Bender discloses an apparatus, wherein the operation is configured to delete the record from the tree structure, and wherein determining one of the non-leaf nodes based on the key of the record comprises: determining one of the non-leaf nodes, which comprises a cache storing the key of the record (Gupta [0018] e.g., “… if buffer 162 included a message with a key that had a value higher than 50, the message would have been flushed to node 4 … if buffer 162 included a message with a key that had a value lower than 20…”. Gupta associated messages with key ranges and stores those messages in non-leaf node buffers according to the key values. Accordingly, Gupta teaches determining the non-leaf node whose buffer stores the message associated with the key); and deleting the record from the determined non-leaf node (Gupta [0031] e.g., “… operations performed on a tree typically include write operations, such as insertions, modifications, or deletions of data in the Bε-tree”. Because Gupta stores operation messages in non-leaf node buffers and expressly teaches deletion operations, Gupta teaches deleting a record associated with a key from the determined non-leaf node buffer). Regarding claim 15, the rejection of claim 10 is hereby incorporated by reference, Gupta and Bender discloses an apparatus, wherein the operation is configured to update a value of the record in the tree structure, and wherein determining one of the non-leaf nodes based on the key of the record comprises: determining the non-leaf node that includes a cache storing the key of the record (Gupta [0018] e.g., “Buffer 162 on node 1 includes two insert messages, “insert(35)” and “insert(49)”. The two messages each include a key-value pair … if buffer 162 included a message with a key that had a value higher than 50, the message would have been flushed to node 4”); and performing the operation in the determined non-leaf node by updating the value of the record in the cache of the determined non-leaf node (Gupta [Abstract] e.g., “… writing a message associated with the operation to a first slot in a first buffer of a first non-leaf node…”. Gupta performs the insert/delete operation by writing the operation message into the buffer of the selected non-leaf node) using the cache of the determined non-leaf node (Gupta [Abstract] e.g., “… first buffer of a first non-leaf node…”. The operation is performed using the non-leaf-node buffer). Regarding claim 16, the rejection of claim 10 is hereby incorporated by reference, Gupta and Bender discloses an apparatus, further comprising: receiving a read operation to read one or more records in the tree structure (Gupta [Abstract] e.g., “… a first filter associated with the first slot is used for query operations associated with the first slot”. Query operations correspond to read operations); determining the one of the non-leaf nodes including the one or more records to be read, based on the respective key associated with the one or more records (Gupta [0018] e.g., “Buffer 162 on node 1 includes two insert messages, “insert(35)” and “insert(49)”. The two messages each include a key-value pair … if buffer 162 included a message with a key that had a value higher than 50, the message would have been flushed to node 4”), wherein at least one record of the one or more records is stored in a cache of one of the non-leaf nodes (Gupta [0018] e.g., “Buffer 162 of node 1 includes two insert messages … The two messages each include a key-value pair “. The records are stored in the non-leaf node buffer (claimed cache)); merging the at least one record stored in the cache of the non-leaf node to the corresponding leaf node of the one of the non-leaf nodes (Gupta [Abstract] e.g., “…upon determining to flush the message to a leaf node, flushing the message to the leaf node in a sorted manner.”. The flush operation corresponds to merging the second from the non-leaf node buffer into the corresponding leaf node); and reading data based on one or more values of the one or more records, respectively (Bender [0743] e.g., “… merge messages at nonleaf nodes of the tree, and on look up to sometimes get values directly out of messages stored at nonleaf nodes” Bender teaches reading values associated with records maintained in non-leaf node message structure). Gupta teaches the read/query architecture and flushing to leaves. Bender teaches obtaining values from messages stored at non-leaf nodes. It would have been obvious to employ Gupta’s buffered-tree structure using Bender’s technique of obtaining values from non-leaf node messages to facilitate read operations. Regarding claim 19, the rejection of claim 18 is hereby incorporated by reference, Gupta and Bender discloses an apparatus a computer program product, wherein the operation is configured to insert the record into the tree structure further comprising: determining the one of the non-leaf nodes by comparing the key of the record with keys stored in the respective non-leaf nodes (Gupta [0018] e.g., “Buffer 162 on node 1 includes two insert messages, “insert(35)” and “insert(49)”. The two messages each include a key-value pair … if buffer 162 included a message with a key that had a value higher than 50, the message would have been flushed to node 4”); and performing the operation to insert the record in the determined one of the non-leaf nodes and storing the record in a cache of the determined non-leaf node (Gupta [Abstract] e.g., “… writing a message associated with the operation to a first slot in a first buffer of a first non-leaf node…”. Gupta performs the insert/delete operation by writing the operation message into the buffer of the selected non-leaf node) using the cache of the determined non-leaf node (Gupta [Abstract] e.g., “… first buffer of a first non-leaf node…”. The operation is performed using the non-leaf-node buffer). Regarding claim 20, the rejection of claim 18 is hereby incorporated by reference, Gupta and Bender discloses an apparatus a computer program product, wherein the received operation further comprises: receiving a read operation to read one or more records in the tree structure, wherein at least one record of the one or more records is stored in a cache of one of the non-leaf nodes (Gupta [0018] e.g., “Buffer 162 of node 1 includes two insert messages … The two messages each include a key-value pair “. The records are stored in the non-leaf node buffer (claimed cache)); merging the at least one record stored in the cache of the non-leaf node to a corresponding leaf node (Gupta [Abstract] e.g., “…upon determining to flush the message to a leaf node, flushing the message to the leaf node in a sorted manner.”. The flush operation corresponds to merging the second from the non-leaf node buffer into the corresponding leaf node); and reading data based on one or more value of the one or more records (Bender [0743] e.g., “… merge messages at nonleaf nodes of the tree, and on look up to sometimes get values directly out of messages stored at nonleaf nodes” Bender teaches reading values associated with records maintained in non-leaf node message structure). Gupta teaches the read/query architecture and flushing to leaves. Bender teaches obtaining values from messages stored at non-leaf nodes. It would have been obvious to employ Gupta’s buffered-tree structure using Bender’s technique of obtaining values from non-leaf node messages to facilitate read operations. 10. Claims 5, 9, 13, and 17 are rejected under 35 U.S.C. 103 as being unpatentable over Gupta et al. US 20200233801 A1 (hereinafter Gupta) in view of Bender et al. US 20150370860 A1 (hereinafter Bender) as applied to claims 1-4, 6-8, 10-12, 14-16, and 18-20 above, and further in view of Archak et al. US20120072656 A1 (hereinafter Archak). Regarding claim 5, the rejection of claim 1 is hereby incorporated by reference, Gupta and Bender discloses a computer implemented method, further comprises: storing, by one or more processing units, the key of the record in a cache of the determined non-leaf node (Gupta [0018] e.g., “… “insert(35)” and “insert(49)”…”. Keys are stored in the buffered messages). Gupta does not explicitly disclose: arranging, by the one or more processing units, the key of the record such that two or more key records are in ascending order. Archak discloses arranging, by the one or more processing units, the key of the record such that two or more keys of records are in an ascending order (Archak [0076] e.g., “… C0 flushes all key-value pairs in sorted order … “ Sorted order inherently places keys in ascending order). It would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention to incorporate the sorted key-value pair organization taught by Archak into the buffered B-epsilon-tree architecture of Gupta because Archak teaches maintaining key-value pairs in sorted order within the storage hierarchy, which facilitates efficient storage, merging, and retrieval operations. The combination would have predictably resulted in storing and arranging keys associated with records in ascending order within Gupta’s non-leaf node buffer structures. Regarding claim 9, the rejection of claim 1 is hereby incorporated by reference, Gupta and Bender discloses a computer implemented method, wherein at least one record is stored in a cache of one of the non-leaf nodes (Gupta [0018] e.g., “Buffer 162 of node 1 includes two insert messages…”. The records reside in the non-leaf node buffer), the method further comprising: merging, by one or more processing units, the one or more records stored in the cache of the non-leaf nodes to the leaf node corresponding to the cache (Gupta [Abstract] e.g., “…upon determining to flush the message to a leaf node, flushing the message to the leaf node in a sorted manner.”. Gupta teaches moving buffered records/messages from non-leaf node buffers into leaf node), [based on a timer]. The combination of Gupta and Bender does not explicitly teach based on a timer. Archak discloses merging operation: based on a timer (Archak [0048] e.g., “… perform a portion of a next set of merges during each insertion. This can be achieved by performing merges asynchronously in the storage tiers while using a timer to throttle insertions into C0 … or by synchronously performing a portion of the next scheduled merge before each insertion into C0”. Archak teaches timer-controlled merge scheduling and scheduled merge operations. It would have been obvious to apply Archak’s timer-based merge scheduling techniques to Gupta’s buffered-tree flush operations to regulate the timing of merge activity while maintaining efficient throughput. It would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention to apply the timer-controlled merge scheduling techniques taught by Archak to Gupta’s buffered B-epsilon-tree flush operations because Archak teaches performing scheduled and timer-regulated merge operations within a multi-tier storage hierarchy. Applying such timer-based merge control to Gupta’s buffered-tree architecture would have predictably regulated the timing of record propagation from non-leaf node buffers to leaf nodes while maintaining system throughput and merge efficiency. Regarding claim 13, the rejection of claim 12 is hereby incorporated by reference, Gupta, Bender, and Archak discloses an apparatus, wherein at least one key is stored in the cache of the determined non-leaf node, and wherein additionally storing the record in the cache of the determined non-leaf node comprises: storing the key of the record in the cache of the determined non-leaf node, such that the keys are arranged in an ascending order (Archak [0076] e.g., “… C0 flushes all key-value pairs in sorted order … “ Sorted order inherently places keys in ascending order). Regarding claim 17, the rejection of claim 10 is hereby incorporated by reference, Gupta, Bender, and Archak discloses an apparatus, wherein at least one record is stored in a cache of one of the non-leaf nodes, wherein the read operation further comprises: merging the one or more records to the leaf nodes based on a timer (Archak [0048] e.g., “… perform a portion of a next set of merges during each insertion. This can be achieved by performing merges asynchronously in the storage tiers while using a timer to throttle insertions into C0 … or by synchronously performing a portion of the next scheduled merge before each insertion into C0”. Archak teaches timer-controlled merge scheduling and scheduled merge operations. It would have been obvious to apply Archak’s timer-based merge scheduling techniques to Gupta’s buffered-tree flush operations to regulate the timing of merge activity while maintaining efficient throughput. Conclusion 11. Any inquiry concerning this communication or earlier communications from the examiner should be directed to BERHANU MITIKU whose telephone number is (571)270-1983. The examiner can normally be reached Monday – Friday 8:30AM – 4:00PM. 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, Ajay Bhatia can be reached at 571-272-3906. 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. /BERHANU MITIKU/ Examiner, Art Unit 2156 /AJAY M BHATIA/Supervisory Patent Examiner, Art Unit 2156
Read full office action

Prosecution Timeline

Show 7 earlier events
May 28, 2025
Non-Final Rejection mailed — §103
Aug 13, 2025
Interview Requested
Aug 20, 2025
Examiner Interview Summary
Aug 20, 2025
Response Filed
Aug 20, 2025
Applicant Interview (Telephonic)
Dec 19, 2025
Non-Final Rejection mailed — §103
Mar 17, 2026
Response Filed
Jun 15, 2026
Non-Final Rejection mailed — §103 (current)

Precedent Cases

Applications granted by this same examiner with similar technology

Patent 12664174
DATA PERSISTENCE FORMATS MANAGEMENT FOR COLUMN LOADABLE COLUMNS
2y 6m to grant Granted Jun 23, 2026
Patent 12657160
AUTOMATIC FILE CREATION AND LOCATION SELECTION STANDARDIZATION
2y 9m to grant Granted Jun 16, 2026
Patent 12625900
UNIFIED DATA CLASSIFICATION TECHNIQUES
3y 10m to grant Granted May 12, 2026
Patent 12602143
METHODS TO INFER CONTENT RELATIONSHIPS FROM USER ACTIONS AND SYSTEM AUTOMATIONS
3y 6m to grant Granted Apr 14, 2026
Patent 12591557
BLOCKCHAIN AUDIT SYSTEM
2y 9m to grant Granted Mar 31, 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
55%
Grant Probability
84%
With Interview (+28.8%)
4y 8m (~9m remaining)
Median Time to Grant
High
PTA Risk
Based on 396 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