Abstract:
A staging table created in a database system may store a snapshot of live database table captured prior to an unintended change to the live database table. One or more entries in the staging table may be updated to incorporate one or more intended changes to the live database table that occurred after the unintended change. The live database table may be updated by merging each of the updated entries from the staging table to the live database table. The updated database table may eliminate the unintended change.
Abstract:
A system may identify gap events in a change detection stream. When changes in data are transmitted to a downstream system, the system may identify intermittent portions of the transmission where data is missing (e.g., a gap event). In some examples, a gap event may be caused by system maintenance or one or more system errors. After identifying the gap event, the system may bridge the gap event using metadata associated with the gap event. The associated metadata may be transmitted (e.g., via a gap event identification message) to the downstream system, which may prevent the downstream system from experiencing computational inefficiencies due to the gap event.
Abstract:
In accordance with embodiments, there are provided mechanisms and methods for facilitating an auction-based fair allocation and usage of thread resources for user messages according to one embodiment in an on-demand services environment. In one embodiment and by way of example, a method includes receiving job requests and bids from a plurality of organizations over a network, where each job request and the corresponding bid is placed by a user associated with an organization having a resource currency value within a multi-tenant database system via a user interface at a computing device over the network, determining resource currency values associated with pending jobs relating to the plurality of organizations, wherein the resource currency values corresponds to resources dedicated to the pending jobs, and performing an auction of the received bids for resources that are not dedicated and remains available for purchase, where a bid includes a purchase request to purchase the available resources. The method may further include prioritizing the job requests based on the dedicated resources and the auction of the available resources, and processing the job requests based on the prioritized job requests.
Abstract:
A messaging system implements messaging among application servers and databases, utilizing other servers that implement messaging brokers. A large flood of incoming messages can bring down messaging brokers by overflowing the message queues, negatively impacting performance of the overall system. This disclosure in some embodiments detects and identifies “flooders” in a timely manner and isolates their message traffic to dedicated queues to avoid impacting other system users. Subsequently, a preferred system de-allocates the queues and returns the messaging system to normal operation when flooding conditions subside, and “sweeps” up any remaining orphan messages.
Abstract:
In accordance with embodiments, there are provided mechanisms and methods for facilitating tiered service model-based fair allocation of resources for application servers in multi-tenant environments. In one embodiment and by way of example, a method includes collecting, by and incorporating into the database system, data relating to job types associated with one or more tenants of a plurality of tenants within a multi-tenant database system, computing, based on the data, an actual resource use and an expected resource allocation associated with each job type, and assigning classifications to the job types based on their corresponding actual resource use and the expected resource allocation. The method may further include routing the job types between tiers based on the assigned classifications, where the routing includes at least one of promoting, demoting, and maintaining one or more tiers for the job types.
Abstract:
A request may be received to relocate source data within a distributed database system arranged in a hierarchy composed of a plurality of levels. The plurality of levels may include a local level that includes a plurality of pods, which may be end points in the hierarchy. The data may be stored at a source pod. The request may identify a designated level in the hierarchy at which to relocate the source data. A target pod within the distributed database system may be selected. The source pod and the target pod may be located remotely from one another. The data may be replicated to the target pod via a local change bus in communication with the source pod. The local change bus may capture changes made to data stored in the source pod and transmit the captured changes to the target pod via the hierarchy.
Abstract:
A resource utilization level and a data size may be determined for each organization within a computing pod located within an on-demand computing services organization configured to provide computing services. One of the organizations may be selected for migration away from the computing pod based on the resource utilization levels and the data sizes. The designated organization may have a respective resource utilization level that is high in relation to its respective data size.
Abstract:
Migration specific action requests to perform a set of migration specific actions are sent from a source system instance to a target system instance. Migration specific action responses are received from the target system instance. Based on the migration specific action responses, traffic lights for resource utilization of the target system instance are determined. Based on the traffic lights, a concurrency limit is determined for the specific time. The concurrency limit is applied to scale a total number of ongoing migration specific actions to be requested of the target system instance at the specific time.
Abstract:
In accordance with embodiments, there are provided mechanisms and methods for facilitating elastic allocation of tenant-specific queue resources in an on-demand services environment in a multi-tenant environment according to one embodiment. In one embodiment and by way of example, a method includes allocating resources to a plurality of tenants, identifying, in runtime, one or more offending tenants of the plurality of tenants and one or more victim tenants of the plurality of tenants. The one or more offending tenants consume above their allocated share of the resources within a message type, and the one or more victim tenants consume below their allocated share of the resources or none of the resources within the message type. The method may further include isolating, in runtime, the offending tenants and the victim tenants, and routing, in runtime, each tenant of the offending tenants and the victim tenants to a queue dedicated to the tenant and the message type.
Abstract:
Migration configuration data for an organization migration to move application data and application services of a to-be-migrated organization hosted at a source system instance to a target system instance is received. Migration components respectively representing to-be-migrated systems of record in a to-be-migrated organization are registered. In response to receiving an instruction to enter a specific organization migration state, migration steps for each migration component in the migration components are identified for execution in the specific organization migration state. Each migration component in the migration components automatically executes migration steps determined for each such migration component for execution in the specific organization migration state.