← Back to Patent Explorer
US5133075A Expired / Lapsed US ⏱️ 0.0 years remaining

Method of monitoring changes in attribute values of object in an object-oriented database

Assignee: HP Inc
•
Filing: 1988-12-19
•
Granted: 1992-07-21
•
Expires: 2008-12-19
📄 Original PDF 🌐 Google Patents 🔄 Sync Now

Abstract

Abstract A method of monitoring objects in an interactive object-oriented database system. Any of a plurality of client programs can request monitoring of attributes of objects in the database. A record is kept of update transactions initiated by a client. When the client commits the changes, any client which has requested monitoring is notified of any change in the value of an attribute being monitored at the request of that client. The notification interrupts the client and invokes a predesignated client procedure. Overhead is minimized by creating partial view materialization paths and defining monitors ahead of time and by localizing the monitoring.

Inventors

  • 👤 Tore J. M. Risch

Bibliographic Details

Application Number —
Jurisdiction US
Data Source google_patents
Last Synchronized 2026-10-23 14:29
CPC Classifications
G; G06; G06F; G06F16/00; G06F16/20; G06F16/23; G06F16/2358; Y; Y10; Y10S; Y10S707/00; Y10S707/99951; Y10S707/99952

Claims Analysis

Total Claims: 24
Claim 1
Independent Claim 182 words
In a computer database system, a method of monitoring an object in a database in response to a request from any of a plurality of client programs, the method comprising the following steps carried out by the system: keeping a record of any request from a client to monitor an attribute of the object, the attribute depending on another attribute; keeping a record indicating interdependence relationships among the attributes; keeping a record of the value of each attribute being monitored by accessing said interdependence relationship record; during a database update session, keeping a record of any database update transactions initiated by a client; and if a client which has initiated an update transaction requests that said update transaction be stored in the database: determining which monitored attributes may have been affected by said transaction; determining whether the values of any of said attributes have changed by computing updated values form said attributes and comparing the updated values with the values in the attribute value record; and for each value which has changed, notifying any client which had requested monitoring of that attribute.
Claim 2
Dependent Claim 182 words
In a computer database system, a method of monitoring an object in a database in response to a request from any of a plurality of client programs, the method comprising the following steps carried out by the system: keeping a record of any request from a client to monitor an attribute of the object, the attribute depending on another attribute; keeping a record indicating interdependence relationships among the attributes; keeping a record of the value of each attribute being monitored by accessing said interdependence relationship record; during a database update session, keeping a record of any database update transactions initiated by a client; and if a client which has initiated an update transaction requests that said update transaction be stored in the database: determining which monitored attributes may have been affected by said transaction; determining whether the values of any of said attributes have changed by computing updated values form said attributes and comparing the updated values with the values in the attribute value record; and for each value which has changed, notifying any client which had requested monitoring of that attribute.
Claim 3
Dependent Claim 26 words
A method according to claim 1 wherein notifying a client comprises interrupting any task then being performed by the client and invoking a predesignated client procedure.
Claim 4
Dependent Claim 80 words
A method according to claim 1 wherein notifying a client comprises: if the client is in an interruptible state, interrupting any task then being performed by the client and invoking a predesignated client procedure; and if the client is not in an interruptible state: keeping a record of the notification until the client enters an interruptible state; and when the client enters an interruptible state, interrupting any task then being performed by the client and invoking a predesignated client procedure.
Claim 5
Dependent Claim 62 words
A method according to claim 1 wherein notifying a client comprises: if the client is in an interruptible state, interrupting any task then being performed by the client and invoking a predesignated client procedure; and if the client is not in an interruptible state, keeping a record of the notification until the client requests notification and then invoking said predesignated client procedure.
Claim 6
Dependent Claim 28 words
A method according to claim 1 and further comprising optimizing a partial view materialization path for a given attribute in advance of any request to monitor that attribute.
Claim 7
Dependent Claim 26 words
A method according to claim 1 and further comprising defining a monitor procedure for a given attribute in advance of any request to monitor that attribute.
Claim 8
Dependent Claim 24 words
A method according to claim 6 wherein defining a monitor procedure comprises creating means for keeping the record of any request from a client.
Claim 9
Dependent Claim 26 words
A method according to claim 6 wherein defining a monitor procedure comprises creating means for keeping a record of the value of the attribute being monitored.
Claim 10
Dependent Claim 23 words
A method according to claim 1 and further comprising clearing the record of update transactions after determining whether any attribute values have changed.
Claim 11
Dependent Claim 181 words
In a computer database system, a method of monitoring an object in a database in response to a request from any of a plurality of client programs, the method comprising the following steps carried out by the system; keeping a record of any request from a client to monitor an attribute of the object, the attribute depending on another attribute; keeping a record indicating interdependence relationships among the attributes; keeping a record of the value of each attribute being monitored by accessing said interdependence relationship record; during a database update session, keeping a record of any database update transactions initiated by a client; and if a client request notification of any changes which have occurred in an attribute then being monitored for that client: determining which monitored attributes may have been affected during said database update session; determining whether the values of any of said attributes have changed by computing updated values for said attributes an comparing the updated values with the values in the attribute value record; and notifying the client which requested notification of each value which has changed.
Claim 12
Dependent Claim 181 words
In a computer database system, a method of monitoring an object in a database in response to a request from any of a plurality of client programs, the method comprising the following steps carried out by the system; keeping a record of any request from a client to monitor an attribute of the object, the attribute depending on another attribute; keeping a record indicating interdependence relationships among the attributes; keeping a record of the value of each attribute being monitored by accessing said interdependence relationship record; during a database update session, keeping a record of any database update transactions initiated by a client; and if a client request notification of any changes which have occurred in an attribute then being monitored for that client: determining which monitored attributes may have been affected during said database update session; determining whether the values of any of said attributes have changed by computing updated values for said attributes an comparing the updated values with the values in the attribute value record; and notifying the client which requested notification of each value which has changed.
Claim 13
Dependent Claim 29 words
A method according to claim 10 and further comprising keeping a record of the changes for later notification of any other clients for which attributes are then being monitored.
Claim 14
Dependent Claim 29 words
A method according to claim 10 wherein notifying the client which requested notification comprises interrupting any task then being performed by the client and invoking a predesignated client procedure.
Claim 15
Dependent Claim 28 words
A method according to claim 10 and further comprising optimizing a partial view materialization path for a given attribute in advance of any request to monitor that attribute.
Claim 16
Dependent Claim 26 words
A method according to claim 10 and further comprising defining a monitor procedure for a given attribute in advance of any request to monitor that attribute.
Claim 17
Dependent Claim 24 words
A method according to claim 14 wherein defining a monitor procedure comprises creating means for keeping the record of any request from a client.
Claim 18
Dependent Claim 26 words
A method according to claim 14 wherein defining a monitor procedure comprises creating means for keeping a record of the value of the attribute being monitored.
Claim 19
Dependent Claim 23 words
A method according to claim 10 and further comprising clearing the record of update transactions after determining whether any attribute values have changed.
Claim 20
Dependent Claim 259 words
In a computer database system, a method of monitoring an object in a database in response to a request from any of a plurality of client programs, the method comprising the following steps carried out by the system; keeping a record of any request form a client to monitor an attribute of the object, the attribute depending on another attribute; keeping a record indicating interdependence relationships among the attributes; keeping a record of the value of each attribute being monitored by accessing said interdependence relationship record; during a database update session, keeping a record of any database update transactions initiated by a client; if a client which has initiated an update transaction request that said update transaction be stored in the database: determining which monitored attributes may have been affected by said update transaction; determining whether the values of any of said attributes have changed by computing updated values for said attributes and comparing the updated values with the values in the attribute value record; and for each value which has changed, notifying any client which requested monitoring of that attribute; and if a client request notification of any changes which have occurred in an attribute then being monitored for that client: determining which monitored attributes may have been affected during said database update session; determining whether the values of any of said attributes have changed by computing updated values for said attributes and comparing the updated values with the values in the attribute value record; and notifying the client which requested notification of each value which has changed.
Claim 21
Dependent Claim 259 words
In a computer database system, a method of monitoring an object in a database in response to a request from any of a plurality of client programs, the method comprising the following steps carried out by the system; keeping a record of any request form a client to monitor an attribute of the object, the attribute depending on another attribute; keeping a record indicating interdependence relationships among the attributes; keeping a record of the value of each attribute being monitored by accessing said interdependence relationship record; during a database update session, keeping a record of any database update transactions initiated by a client; if a client which has initiated an update transaction request that said update transaction be stored in the database: determining which monitored attributes may have been affected by said update transaction; determining whether the values of any of said attributes have changed by computing updated values for said attributes and comparing the updated values with the values in the attribute value record; and for each value which has changed, notifying any client which requested monitoring of that attribute; and if a client request notification of any changes which have occurred in an attribute then being monitored for that client: determining which monitored attributes may have been affected during said database update session; determining whether the values of any of said attributes have changed by computing updated values for said attributes and comparing the updated values with the values in the attribute value record; and notifying the client which requested notification of each value which has changed.
Claim 22
Dependent Claim 32 words
A method according to claim 18 wherein the last step further comprises keeping a record of the changes for later notification of any other clients for which attributes are then being monitored.
Claim 23
Dependent Claim 26 words
A method according to claim 18 wherein notifying a client comprises interrupting any task then being performed by the client and invoking a predesignated client procedure.
Claim 24
Dependent Claim 23 words
A method according to claim 18 and further comprising clearing the record of update transactions after determining whether any attribute values have changed.

References Cited (Backward Citations)

US4769772A Cited
US4819159A Cited
US4918593A Cited
US4805099A Cited
US4937743A Cited
US4864497A Cited
US4961139A Cited
US4965718A Cited

USPTO Annuity & Maintenance Windows

Annuity Stage Window Opens Payment Deadline Surcharge Period Until Estimated Fee Status
3.5 Years (Year 4) 1995-07-21 1996-01-20 1996-07-21 $2000.00 Window Closed / Lapsed
7.5 Years (Year 8) 1999-07-21 2000-01-20 2000-07-21 $3760.00 Window Closed / Lapsed
11.5 Years (Year 12) 2003-07-21 2004-01-20 2004-07-21 $7700.00 Window Closed / Lapsed

Assigned Categories & Tags

No categories assigned to this patent yet.

Assign Category Tag