Systems and methods for performing record actions in a multi-tenant database and application system
First Claim
1. A system comprising:
- a memory; and
a server communicatively connected to the memory, the server providing a multi-tenant database and application service that includes a plurality of records, each of the plurality of records associated with a tenant in the multi-tenant database and including at least one connection to another tenant in the multi-tenant database, the server configured to;
provide a message queue configured for storing messages, including record action messages and preprocess messages, wherein each of the preprocess messages identify a single record to be updated;
provide an event queue configured for storing events; and
process record actions on the plurality of records by;
selecting a plurality of preprocess messages in the message queue for processing;
processing the selected plurality of preprocess messages by;
identifying a plurality of connections corresponding to the single record to be updated, andgenerating a plurality of record action messages in the message queue and a plurality of record action events in the event queue associated with the single record to be updated;
returning control to a user before the generated plurality of record action events are executed, wherein execution of the generated plurality of record action events occurs in the background of the system while the user retains control of the system by;
selecting the plurality of record action messages in the message queue for processing, the selected plurality of record action messages corresponding to a plurality of record actions to be performed based on the identified plurality of connections corresponding to the single record to be updated in the multitenant database, wherein the selected plurality of record action messages corresponds to a same source tenant and a same connection in the multi-tenant database;
identifying the plurality of record action events in the event queue corresponding to the selected plurality of record action messages; and
processing the identified plurality of record action events as a batch to execute the plurality of record actions.
1 Assignment
0 Petitions
Accused Products
Abstract
A system and method for executing record actions in a multi-tenant database and application service is provided. The system and method is configured to provide a message queue and an event queue, the message queue configured to store a plurality of messages corresponding to record actions and the event queue configured to store a corresponding list of events. The system and method are configured to process record actions on the plurality of records by selecting a plurality of messages in the message queue for processing, the selected plurality of messages corresponding to a plurality of record actions on records in the multi-tenant database, identifying a plurality of events in the event queue corresponding to the selected plurality of messages, and processing the identified plurality of events as a batch to execute the plurality of record actions.
191 Citations
6 Claims
-
1. A system comprising:
-
a memory; and a server communicatively connected to the memory, the server providing a multi-tenant database and application service that includes a plurality of records, each of the plurality of records associated with a tenant in the multi-tenant database and including at least one connection to another tenant in the multi-tenant database, the server configured to; provide a message queue configured for storing messages, including record action messages and preprocess messages, wherein each of the preprocess messages identify a single record to be updated; provide an event queue configured for storing events; and process record actions on the plurality of records by; selecting a plurality of preprocess messages in the message queue for processing; processing the selected plurality of preprocess messages by; identifying a plurality of connections corresponding to the single record to be updated, and generating a plurality of record action messages in the message queue and a plurality of record action events in the event queue associated with the single record to be updated; returning control to a user before the generated plurality of record action events are executed, wherein execution of the generated plurality of record action events occurs in the background of the system while the user retains control of the system by; selecting the plurality of record action messages in the message queue for processing, the selected plurality of record action messages corresponding to a plurality of record actions to be performed based on the identified plurality of connections corresponding to the single record to be updated in the multitenant database, wherein the selected plurality of record action messages corresponds to a same source tenant and a same connection in the multi-tenant database; identifying the plurality of record action events in the event queue corresponding to the selected plurality of record action messages; and
processing the identified plurality of record action events as a batch to execute the plurality of record actions. - View Dependent Claims (2, 3, 4, 5)
-
-
6. A system comprising:
-
a memory; and a multi-tenant database server, the multi-tenant database server communicatively connected to the memory and providing access to a plurality of records in a multi-tenant database, each of the plurality of records associated with a source tenant using the multi-tenant database and including at least one connection to target tenant using the multi-tenant database, and wherein the multi-tenant database server comprises; a message queue configured for storing a messages for use with the multi-tenant database, the messages including record action messages and preprocess messages, wherein each of the preprocess messages identify a single record to be updated; an event queue for storing events for use with the multi-tenant database, the events including record action events and preprocess events; a preprocess message picker for selecting a plurality of preprocess messages in the message queue; a preprocess message handler configured to process the selected plurality of preprocess events to identify a plurality of connections corresponding to the single record to be updated and to generate a plurality of record action messages in the message queue and a plurality of record action events in the event queue that correspond to the single record to be updated, and wherein the preprocess message handler is further configured to return control to a user before the generated plurality of record action events are executed; a message picker for selecting a subset of the plurality of record action messages in the message queue for processing, the message picker configured to select the subset of the plurality of record action messages by selecting messages corresponding to a same source tenant and a same connection; and a message handler, the message handler configured to identify a plurality of record action events in the event queue corresponding to the selected subset of the plurality of record action messages and process the identified plurality of record action events as a batch to execute a plurality of record actions; wherein the message picker is configured to select the subset of the plurality of record action messages, and the message handler is configured to identify and process the plurality of record action events, as background operations in the system after control is returned to the user.
-
Specification