Prosecution Insights
Last updated: May 29, 2026
Application No. 18/787,200

ROWLOCKING FOR DIVERSE STORES

Final Rejection §103
Filed
Jul 29, 2024
Examiner
EYERS, DUSTIN D
Art Unit
2164
Tech Center
2100 — Computer Architecture & Software
Assignee
SAP SE
OA Round
4 (Final)
58%
Grant Probability
Moderate
5-6
OA Rounds
1y 8m
Est. Remaining
80%
With Interview

Examiner Intelligence

Grants 58% of resolved cases
58%
Career Allowance Rate
131 granted / 227 resolved
+2.7% vs TC avg
Strong +22% interview lift
Without
With
+22.2%
Interview Lift
resolved cases with interview
Typical timeline
3y 6m
Avg Prosecution
15 currently pending
Career history
245
Total Applications
across all art units

Statute-Specific Performance

§101
3.5%
-36.5% vs TC avg
§103
90.4%
+50.4% vs TC avg
§102
4.7%
-35.3% vs TC avg
§112
0.6%
-39.4% vs TC avg
Black line = Tech Center average estimate • Based on career data from 227 resolved cases

Office Action

§103
DETAILED ACTION Claims 1-20 are pending. Claims 1, 8, and 15 have been amended. Claims 1-20 are rejected. 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 . 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- 20 is/are rejected under 35 U.S.C. 103 as being unpatentable over Merker et al., Patent Application Publication No. 2020/0311044 (hereinafter Merker) in view of Freitas et al., Patent Application Publication No. 2002/0052959 (hereinafter Freitas) and Barsness et al., Patent Application Publication No. 2018/0121505 (hereinafter Barsness). Regarding claim 1, Merker teaches: A computer-implemented method comprising: receiving, via a query optimizer of a database execution engine and from a user equipment (Merker Paragraph [0055], The database execution engine 150 may include a query optimizer 110, Paragraph [0021], the execution engine may be configured to receive a query, generate a query plan (including for example query algebra), optimize the query plan), a structured query language (SQL) query targeting a column-store table and a row-store table (Merker Paragraph [0054], where the data can be queried or operated on using operations including SQL commands, Paragraph [0046], the query handler may acquire locks for the data stored in the located row and the column in the row), wherein the SQL query includes a rowlock request to lock at least one row in the column-store table and the row-store table (Merker Paragraph [0046], the query handler may acquire locks for the data stored in the located row and the column in the row); generating, using the query optimizer (Merker Paragraph [0055], The database execution engine 150 may include a query optimizer 110), a query execution plan for execution of the SQL query (Merker Paragraph [0019], To implement the complex sequence, a query execution plan (or query plan for short) may be implemented, Paragraph [0054], where the data can be queried or operated on using operations including SQL commands), wherein generating the query execution plan comprises (Merker Paragraph [0019], To implement the complex sequence, a query execution plan (or query plan for short) may be implemented, Paragraph [0054], where the data can be queried or operated on using operations including SQL commands); wherein each of the plurality of rowlock accessors, the rowlock operator (Merker Paragraph [0006], The locating may also include acquiring locks, by the query handler, for the plurality of rows of the first fragment while reading the plurality of rows of the first fragment (Merker teaches runtime execution while Freitas teaches the accessor)), and the rowlock relation is an operator executed at runtime of the SQL query (Merker Paragraph [0054], where the data can be queried or operated on using operations including SQL commands, Paragraph [0061], When the code for the query plan is ready for execution during runtime, the query execution engine 112 may step through the code performing some of the operations within the database execution engine 150). executing, using a query execution engine of the database execution engine and based on executable code received from a query plan compiler (Merker Paragraph [0057], The query optimizer 110 may form an optimum query plan, which may represent a query algebra, as noted above. To compile a query plan, the query optimizer 110 may provide the query plan to the query plan compiler 116), the query execution plan to execute the SQL query by accessing a given rowlock accessor via the rowlock operator to lock the at least one row (Merker Paragraph [0054], where the data can be queried or operated on using operations including SQL commands (shows that the query can be an SQL query), Paragraph [0057], The query optimizer 110 may form an optimum query plan, which may represent a query algebra, as noted above. To compile a query plan, the query optimizer 110 may provide the query plan to the query plan compiler 116 (shows the query plan), Paragraph [0026], acquiring locks for all of the data tables may, during the sequence of operations, require the operator to read all of the data stored in all of the data tables that have been opened (shows the operator associated with the lock)), Merker does not expressly disclose: creating a plurality of rowlock accessors for a plurality of storage layers responsive to receiving the query with the rowlock request, wherein each rowlock accessor uses a set of coordinates stored in a corresponding column store rowlock accessor factory and row store rowlock accessor factory to access a storage layer of the plurality of storage layers, However, Freitas teaches: creating a plurality of rowlock accessors for a plurality of storage layers responsive to receiving the query with the rowlock request (Freitas Paragraph [0093], the lock table contains one row for each address range (subpart) represented in the table, with each row listing the lock state, current token, and pending queue for that address range (Merker teaches the query plan)), wherein each rowlock accessor uses a set of coordinates stored in a corresponding column store rowlock accessor factory and row store rowlock accessor factory to access a storage layer of the plurality of storage layers (Freitas Paragraph [0094], The "lock state" column expresses the address range's lock state for the adapter owing the lock table, Paragraph [0093], the lock table contains one row for each address range (subpart) represented in the table, with each row listing the lock state, current token, and pending queue for that address range), The claimed invention and Freitas are from the analogous art of rowlock systems. It would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention having the teachings of Merker in view of Freitas to have combined Merker in view of Freitas. Freitas teaches optimizing for a two processor environment, messages exchanged by the processors including lock requests (Paragraph 12). Merker in view of Freitas does not expressly disclose: inserting a rowlock relation into the query execution plan, creating a rowlock operator for the query execution plan, and setting the plurality of rowlock accessors to enable locking of a plurality of targeted rows; and However, Barsness teaches: inserting a rowlock relation into the query execution plan (Barsness Paragraph [0014], the Query Optimizer 174 or another component on Database System 160 considers the effect that a resource-efficient slower query plan will have on other jobs. For example, if the query will lock a large number of rows), creating a rowlock operator for the query execution plan (Barsness Paragraph [0014], the Query Optimizer 174 or another component on Database System 160 considers the effect that a resource-efficient slower query plan will have on other jobs. For example, if the query will lock a large number of rows), and setting the plurality of rowlock accessors to enable locking of a plurality of targeted rows (Barsness Paragraph [0014], the Query Optimizer 174 or another component on Database System 160 considers the effect that a resource-efficient slower query plan will have on other jobs. For example, if the query will lock a large number of rows); and The claimed invention and Barsness are from the analogous art of query execution plans. It would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention having the teachings of Merker in view of Freitas and Barsness to have combined Merker in view of Freitas and Barsness. Barsness teaches optimizing query plans to determine if a query is delayable and executing queries based off of the query plan according to a first schedule (Paragraphs 3 and 4). Regarding claim 2, Merker in view of Freitas and Barsness further teaches: The computer-implemented method of claim 1, wherein the plurality of storage layers include a first persistence layer that corresponds to the column-store table and a second persistence layer that corresponds to the row-store table (Merker Paragraph [0063], while the database's persistence/storage layer 190A-N can perform simpler operations to reduce the processing burden at the database's persistence/storage layer 190A-N (shows multiple persistence layers), Paragraph [0021], there may be provided an execution engine that may decouple the higher-level, application layer from the database layer (e.g., the persistence or storage layer where data including database tables may be stored and/or queried using instructions). Regarding claim 3, Merker in view of Freitas and Barsness further teaches: The computer-implemented method of claim 2, wherein the first and second persistence layers are configured to provide persistent storage of data for the column-store and row-store tables, respectively (Merker Paragraph [0063], while the database's persistence/storage layer 190A-N can perform simpler operations to reduce the processing burden at the database's persistence/storage layer 190A-N (shows multiple persistence layers), Paragraph [0021], there may be provided an execution engine that may decouple the higher-level, application layer from the database layer (e.g., the persistence or storage layer where data including database tables may be stored and/or queried using instructions). Regarding claim 4, Merker in view of Freitas and Barsness further teaches: The computer-implemented method of claim 1, wherein the at least one row is identified by at least one row identifier (Merker Paragraph [0009], the row associated with the identifier includes a plurality of rows of the table). Regarding claim 5, Merker in view of Freitas and Barsness further teaches: The computer-implemented method of claim 1, wherein the query execution engine comprises a plan generation layer and a plan execution layer, and the column store rowlock accessor factory and the row store rowlock accessor factory exist in the plan generation layer of the query execution engine (Freitas Paragraph [0094], The "lock state" column expresses the address range's lock state for the adapter owing the lock table, Paragraph [0093], the lock table contains one row for each address range (subpart) represented in the table, with each row listing the lock state, current token, and pending queue for that address range (Merker teaches the query plan)). Regarding claim 6, Merker in view of Freitas and Barsness further teaches: The computer-implemented method of claim 1, wherein the plurality of rowlock accessors are created during a plan generation phase of the query execution plan (Freitas Paragraph [0094], The "lock state" column expresses the address range's lock state for the adapter owing the lock table, Paragraph [0093], the lock table contains one row for each address range (subpart) represented in the table, with each row listing the lock state, current token, and pending queue for that address range (Merker teaches the query plan)). Regarding claim 7, Merker in view of Freitas and Barsness further teaches: The computer-implemented method of claim 1, wherein the at least one row is locked via a corresponding persistence layer (Freitas Paragraph [0094], The "lock state" column expresses the address range's lock state for the adapter owing the lock table, Paragraph [0093], the lock table contains one row for each address range (subpart) represented in the table, with each row listing the lock state, current token, and pending queue for that address range). Claims 8-20 are rejected in the same manner as claims 1-7 but are merely directed to a different statutory category while claiming the same invention (method, system, and computer readable medium). Merker teaches one or more processors and one or more memories (Paragraph 10). Response to Arguments Applicant’s arguments, see 7-11, filed 03/10/2026, with respect to the rejection(s) of claim(s) 1-20 under 35 U.S.C. 103 have been fully considered and are persuasive. Therefore, the rejection has been withdrawn. However, upon further consideration, a new ground(s) of rejection is made in view of the amendment and the newly cited references. Conclusion The prior art made of record and not relied upon is considered pertinent to applicant's disclosure. Farrar et al., Patent Application Publication No. 2008/0098033 (hereinafter Farrar). Farrar teaches a query plan and determining if a lock was table level or row level (Table 1 between paragraphs 21 and 22). Therefore, the claimed invention and Farrar are analogous art. 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 DUSTIN D EYERS whose telephone number is (408)918-7562. The examiner can normally be reached Monday-Thursday 9:00am-7:00pm ET. 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, Amy Ng can be reached at (571)270-1698. 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. /DUSTIN D EYERS/ Examiner, Art Unit 2164 /AMY NG/ Supervisory Patent Examiner, Art Unit 2164
Read full office action

Prosecution Timeline

Show 3 earlier events
Aug 22, 2025
Final Rejection mailed — §103
Oct 22, 2025
Applicant Interview (Telephonic)
Oct 22, 2025
Examiner Interview Summary
Oct 27, 2025
Request for Continued Examination
Oct 31, 2025
Response after Non-Final Action
Dec 17, 2025
Non-Final Rejection mailed — §103
Mar 10, 2026
Response Filed
Apr 28, 2026
Final Rejection mailed — §103 (current)

Precedent Cases

Applications granted by this same examiner with similar technology

Patent 12632422
DESIGN AND IMPLEMENTATION OF DATA ACCESS METRICS FOR AUTOMATED PHYSICAL DATABASE DESIGN
5y 0m to grant Granted May 19, 2026
Patent 12625859
Methods and Systems for Detecting Spurious Data Patterns
2y 2m to grant Granted May 12, 2026
Patent 12608423
METHODS AND SYSTEMS FOR ASSOCIATING INTERNET DEVICES
2y 9m to grant Granted Apr 21, 2026
Patent 12596689
DYNAMIC STORAGE JOURNALING PARTITIONS FOR EFFICIENT RESOURCE USE AND IMPROVED SYSTEM THROUGHPUT
3y 9m to grant Granted Apr 07, 2026
Patent 12591554
MANAGING SYSTEM OPERATIONS WITH A SCHEMA MANAGEMENT SYSTEM AND METHODS THEREFOR
1y 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
58%
Grant Probability
80%
With Interview (+22.2%)
3y 6m (~1y 8m remaining)
Median Time to Grant
High
PTA Risk
Based on 227 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