Compensating data corruption causing actions at runtime

US11138182B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-11138182-B2
Application numberUS-201816203125-A
CountryUS
Kind codeB2
Filing dateNov 28, 2018
Priority dateNov 28, 2018
Publication dateOct 5, 2021
Grant dateOct 5, 2021

How to read this patent

A practical reading order for non-experts. Skip the full description unless you need deep technical detail.

  1. Title

    What the patent document calls the invention.

  2. Abstract

    A short plain-language summary of the technical disclosure.

  3. Assignees and inventors

    Who owns or filed the patent and who is credited as inventor.

  4. Key dates

    Filing, priority, publication, and grant dates set the timeline.

  5. First independent claim

    The legal scope of protection — read this for what is actually claimed.

  6. CPC / IPC classifications

    Technology tags used to group this patent with similar filings.

  7. Citations and related patents

    Prior art links and similar publications in this corpus.

Abstract

Official abstract text for this publication.

In a multitenant database, one or more supporting data tables are used to write and store tenant data. Based on the contextual data returning an indication of validity of a detected database transaction, various actions are performed. Data changes may be captured if no valid context is found. At runtime, triggers are used to set a valid context or fix mode context, and database operations causing the data corruptions are captured in a change tracking data structure. The captured data from the database operations include a primary key and an original value for each data change. The original value and primary key for each data change is used to nullify the unintended write.

First claim

Opening claim text (preview).

What is claimed is: 1. A computer-implemented method, comprising: identifying programmatic code markers associated with defining boundaries of at least one execution path performing one or more database operations on one or more data tables associated with a multitenant database, wherein upon receiving a request to perform a database write operation on a data table, initializing a context associated with the database write operation using a programmatic code marker before performing the database write operation and finalizing the context associated with the database write operation after performing the database write operation; determining that a request to perform an unintended database write operation on a supporting data structure associated with the one or more data tables will cause a data corruption to the supporting data structure based on an absence of a valid context; and correcting the data corruption within completion of the unintended database write operation, wherein correcting comprises: capturing the unintended database write operation in a change tracking data structure; initializing a fix mode; reversing the change captured in the change tracking data structure; and finalizing the context associated with the data corruption and ending the fix mode. 2. The method as recited in claim 1 , wherein the supporting data structure comprises a custom index table. 3. The method as recited in claim 1 , wherein the supporting data structure comprises a skinny data table. 4. The method as recited in claim 1 , wherein the at least one execution path is set by one or more database triggers. 5. The method as recited in claim 1 , wherein the at least one execution path is set by one or more database triggers and wherein the captured unintended database write operation includes at least a primary key and an original data value. 6. The method as recited in claim 1 , wherein the at least one execution path is set by one or more database triggers, wherein the captured unintended database write operation includes at least a primary key and an original data value, and wherein at least one of the one or more database triggers reverses one or more data changes in the change tracking data structure using the primary key and the original data value of each data change. 7. The method as recited in claim 1 , wherein the data corruption comprises a non-matching data value in the supporting data structure compared to the one or more data tables. 8. One or more non-transitory computer readable media, storing one or more sequences of instructions, which when executed by one or more processors cause performance of: identifying programmatic code markers associated with defining boundaries of at least one execution path performing one or more database operations on one or more data tables associated with a multitenant database, wherein comprises, upon receiving a request to perform a database write operation on a data table, initializing a context associated with the database write operation using a programmatic code marker before performing the database write operation and finalizing the context associated with the database write operation after performing the database write operation; determining that a request to perform an unintended database write operation on a supporting data structure associated with the one or more data tables will cause a data corruption to the supporting data structure based on an absence of a valid context; and correcting the data corruption within completion of the unintended database write operation, wherein correcting comprises: capturing the unintended database write operation in a change tracking data structure; initializing a fix mode; reversing the change captured in the change tracking data structure; and finalizing the context associated with the data corruption and ending the fix mode. 9. The media as recited in claim 8 , wherein the supporting data structure comprises a custom index table. 10. The media as recited in claim 8 , wherein the supporting data structure comprises a skinny data table. 11. The media as recited in claim 8 , wherein the at least one execution path is set by one or more database triggers. 12. The media as recited in claim 8 , wherein the at least one execution path is set by one or more database triggers and wherein the captured unintended database write operation includes at least a primary key and an original data value. 13. The media as recited in claim 8 , wherein the at least one execution path is set by one or more database triggers, wherein the captured unintended database write operation includes at least a primary key and an original data value, and wherein at least one of the one or more database triggers reverses one or more data changes in the change tracking data structure using the primary key and the original data value of each data change. 14. The media as recited in claim 8 , wherein the data corruption comprises a non-matching data value in the supporting data structure compared to the one or more data tables. 15. A system, comprising: one or more computing processors; one or more non-transitory computer readable media storing a program of instructions that is executable by the one or more computing processors to perform: identifying programmatic code markers associated with defining boundaries of at least one execution path performing one or more database operations on one or more data tables associated with a multitenant database, wherein upon receiving a request to perform a database write operation on a data table, initializing a context associated with the database write operation using a programmatic code marker before performing the database write operation and finalizing the context associated with the database write operation after performing the database write operation; determining that a request to perform an unintended database write operation on a supporting data structure associated with the one or more data tables will cause a data corruption to the supporting data structure based on an absence of a valid context; and correcting the data corruption within completion of the unintended database write operation, wherein correcting comprises: capturing the unintended database write operation in a change tracking data structure; initializing a fix mode; reversing the change captured in the change tracking data structure; and finalizing the context associated with the data corruption and ending the fix mode. 16. The system as recited in claim 15 , wherein the supporting data structure comprises a custom index table. 17. The system as recited in claim 15 , wherein the at least one execution path is set by one or more database triggers. 18. The system as recited in claim 15 , wherein the at least one execution path is set by one or more database triggers and wherein the captured unintended database write operation includes at least a primary key and an original data value. 19. The system as recited in claim 15 , wherein the at least one execution path is set by one or more database triggers, wherein the captured unintended database write operation includes at least a primary key and an original data value, and wherein at least one of the one or more database triggers reverses one or more data changes in the change tracking data structure using the primary key and the original data value of each data change. 20. The system as recited in claim 15 , wherein the data corruption comprises a non-matching data value in the supporting data structure compared

Assignees

Inventors

Classifications

  • in transactions (updating of structured data in databases G06F16/23) · CPC title

  • Database-specific techniques · CPC title

  • Real-time · CPC title

  • Solving problems relating to consistency · CPC title

  • Change logging, detection, and notification (replication G06F16/27) · CPC title

Patent family

Related publications grouped by family.

External sources

Frequently asked questions

Answers are generated from the same data shown on this page.

What does patent US11138182B2 cover?
In a multitenant database, one or more supporting data tables are used to write and store tenant data. Based on the contextual data returning an indication of validity of a detected database transaction, various actions are performed. Data changes may be captured if no valid context is found. At runtime, triggers are used to set a valid context or fix mode context, and database operations causi…
Who is the assignee on this patent?
Salesforce Com Inc
What technology area does this patent fall under?
Primary CPC classification G06F11/1474. Mapped technology areas include Physics.
When was this patent published?
Publication date Tue Oct 05 2021 00:00:00 GMT+0000 (Coordinated Universal Time) (B2). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 3 related publications on this page (citations in our corpus or others sharing the same primary CPC).