IP Library Granted Patent US 9,846,719
Granted Patent B2
US 9,846,719 · App. 15/424,541 · Granted Dec 19, 2017

Dependent commit queue for a database

Inventor: David Labuda (Hillsborough, CA)
Assignee: Matrixx Software, Inc.
G06F17/30377G06F17/30351
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 9,846,719
App. No.
15/424,541
Granted
Dec 19, 2017
Kind
B2
Abstract

A database comprises a database interface and a database updater. The database interface receives a first set of information and a second set of information to be updated in the database. The database updater updates a second set of information in the database based at least in part on a condition that a first set of information in the database has been previously updated.

Claims (51)

1. A database, comprising:

an interface configured to:

receive an indication to start a first process and a second process; and

a processor configured to:

read a first value for element A for the first process;

read the first value for element A for the second process;

read a first value for element B for the second process;

calculate a first new value A1 for element A and a first new value B1 for element B for the second process;

update the first value for element A to the first new value A1 and the first value for element B to the first new value B1;

read the first new value B1 for element B for the first process;

calculate a second new value A2 for element A based at least in part on the first value for element A for the first process and a second new value B2 for element B based at least in part on the first new value B1 for element B for the first process;

update an actual value for element A to the second new value A2 in the event that the actual value for element A meets a first boundary condition to reduce database overheads in processing of the first process and the second process; and

update an actual value for element B to the second new value B2 in the event that the actual value for element B meets a second boundary condition to reduce database overheads in processing of the first process and the second process.

2. The database of claim 1 , wherein the first boundary condition is based on the first value for element A.

3. The database of claim 1 , wherein the second boundary condition is based on the first new value B1 for element B.

4. The database of claim 1 , wherein the first boundary condition comprises a first lower bound.

5. The database of claim 1 , wherein the first boundary condition comprises a first upper bound.

6. The database of claim 1 , wherein the second boundary condition comprises a second lower bound.

7. The database of claim 1 , wherein the second boundary condition comprises a second upper bound.

8. The database of claim 1 , wherein in the event that the first value for element A does not meet the first boundary condition, the update of the actual value for element A to the second new value A2 is aborted.

9. The database of claim 1 , wherein in the event that the actual value for element B does not meet the second boundary condition, the update of the actual value for element B to the second new value B2 is aborted.

10. A method for a database, comprising:

receiving an indication to start a first process and a second process; and

reading a first value for element A for the first process;

reading the first value for element A for the second process;

reading a first value for element B for the second process;

calculating, using a processor, a first new value A1 for element A and a first new value B1 for element B for the second process;

updating the first value for element A to the first new value A1 and the first value for element B to the first new value B1;

reading the first new value B1 for element B for the first process;

calculating a second new value A2 for element A based at least in part on the first value for element A for the first process and a second new value B2 for element B based at least in part on the first new value B1 for element B for the first process;

updating an actual value for element A to the second new value A2 in the event that the actual value for element A meets a first boundary condition to reduce database overheads in processing of the first process and the second process; and

updating an actual value for element B to the second new value B2 in the event that the actual value for element B meets a second boundary condition to reduce database overheads in processing of the first process and the second process.

11. The method of claim 10 , wherein the first boundary condition is based on the first value for element A.

12. The method of claim 10 , wherein the first boundary condition is based on the first value B1 for element B.

13. The method of claim 10 , wherein the first boundary condition comprises a first lower bound.

14. The method of claim 10 , wherein the first boundary condition comprises a first upper bound.

15. The method of claim 10 , wherein the second boundary condition comprises a second lower bound.

16. The method of claim 10 , wherein the second boundary condition comprises a second upper bound.

17. The method of claim 10 , wherein in the event that the first value for element A does not meet the first boundary condition, the update of the actual value for element A to the second new value A2 is aborted.

18. The method of claim 10 , wherein in the event that the actual value for element B does not meet the second boundary condition, the update of the actual value for element B to the second new value B2 is aborted.

19. A computer program product for a database, the computer program product being embodied in a non-transitory computer readable storage medium and comprising computer instructions for:

receiving an indication to start a first process and a second process; and

reading a first value for element A for the first process;

reading the first value for element A for the second process;

reading a first value for element B for the second process;

calculating, using a processor, a first new value A1 for element A and a first new value B1 for element B for the second process;

updating the first value for element A to the first new value A1 and the first value for element B to the first new value B1;

reading the first new value B1 for element B for the first process;

calculating a second new value A2 for element A based at least in part on the first value for element A for the first process and a second new value B2 for element B based at least in part on the first new value B1 for element B for the first process;

updating an actual value for element A to the second new value A2 in the event that the actual value for element A meets a first boundary condition to reduce database overheads in processing of the first process and the second process; and

updating an actual value for element B to the second new value B2 in the event that the actual value for element B meets a second boundary condition to reduce database overheads in processing of the first process and the second process.

Assignments (5)
TERMINATION AND RELEASE OF SECURITY INTEREST IN INTELLECTUAL PROPERTY, RECORDED AT REEL: 057719, FRAME: 0417 Recorded Dec 23, 2025
From: WILMINGTON SAVINGS FUND SOCIETY, FSB
To: MATRIXX SOFTWARE, INC.
Reel/Frame 074052/0748 →
SECURITY INTEREST Recorded Feb 14, 2024
From: MATRIXX SOFTWARE, INC.
To: SILICON VALLEY BANK
Reel/Frame 066597/0905 →
SECURITY INTEREST Recorded Dec 7, 2021
From: MATRIXX SOFTWARE, INC.
To: SILICON VALLEY BANK
Reel/Frame 058322/0431 →
SECURITY INTEREST Recorded Oct 6, 2021
From: MATRIXX SOFTWARE, INC.
To: WILMINGTON SAVINGS FUND SOCIETY, FSB (AS AGENT)
Reel/Frame 057719/0417 →
INTELLECTUAL PROPERTY SECURITY AGREEMENT Recorded Apr 3, 2019
From: MATRIXX SOFTWARE, INC.
To: SILICON VALLEY BANK
Reel/Frame 048783/0582 →
Continuity (4)
Continuation 15052213 · Feb 24, 2016
Continuation 13933443 · Jul 2, 2013
Continuation 12380983 · Mar 5, 2009
Related Publication 20170228419A1 · Aug 10, 2017