IP Library › Granted Patent US 10,452,515
Granted Patent B2
US 10,452,515 · App. 15/615,057 · Granted Oct 22, 2019

Automated root cause detection using data flow analysis

Inventors: Sebastian Mietke (Wiesloch, DE); Toni Fabijancic (Eppelheim, DE)
Assignee: SAP SE
G06F11/3636G06F11/362G06F11/366
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 10,452,515
App. No.
15/615,057
Granted
Oct 22, 2019
Kind
B2
Abstract

Disclosed herein are system, method, and computer program product embodiments for error root cause detection. An embodiment operates by a computer implemented method that includes receiving, by at least one processor, a request to determine a root cause of an error associated with a code and executing a first execution path and a second execution path, where the first and second execution paths correspond to the code. The method further includes determining whether a difference between first data generated by the execution of the first execution path and second data generated by the execution of the second execution path affects the error associated with the code. The method also includes identifying a code component that contributed to the difference between the first data and the second data, if the difference between the first data and the second data affects the error associated with the code.

Claims (62)

1. A computer implemented method, comprising:

receiving, by at least one processor, a request to determine a root cause of an error associated with a code;

executing, by the at least one processor, a first execution path and a second execution path, where the first and second execution paths correspond to the code;

determining, by the at least one processor, that a difference between first data generated by the execution of the first execution path and second data generated by the execution of the second execution path affects the error associated with the code;

identifying, by the at least one processor and responsive to the determining, a code component that contributed to the difference between the first data and the second data;

determining, by the at least one processor, that the difference between the first data and the second data contributes to at least one of the error associated with the code or a second code component following the identified code component; and

storing, by the at least one processor, information associated with the identified code component for further analysis.

2. The method of claim 1 , further comprising:

comparing, by the at least one processor, the first data generated by the execution of the first execution path to the second data generated by the execution of the second execution path.

3. The method of claim 1 , further comprising:

receiving, by the at least one processor, information associated with the error and the code; and

executing, by the at least one processor, the code according to the received information.

4. The method of claim 1 , further comprising:

determining, by the at least one processor, one or more code components associated with the code; and

determining, by the at least one processor, one or more versions for each of the one or more code components.

5. The method of claim 4 , further comprising:

determining, by the at least one processor, the first execution path and the second execution path based on the one or more versions.

6. The method of claim 1 , wherein the first execution path and the second execution path are executed substantially simultaneously.

7. The method of claim 1 , further comprising:

analyzing, by the at least one processor, one or more versions of the identified code component that contributed to the difference between the first data and the second data.

8. The method of claim 1 , further comprising:

determining, by the at least one processor, one or more code components associated with the code;

determining, by the at least one processor, one or more versions for each of the one or more code components;

planning, by the at least one processor, the first execution path and the second execution path based on the one or more versions of each of the one or more code components.

9. A system, comprising:

a memory; and

at least one processor coupled to the memory and configured to:

receive a request to determine a root cause of an error associated with a code;

execute a first execution path and a second execution path, where the first and second execution paths correspond to the code;

determine that a difference between first data generated by the execution of the first execution path and second data generated by the execution of the second execution path affects the error associated with the code;

identify, responsive to the determining, a code component that contributed to the difference between the first data and the second data;

determine that the difference between the first data and the second data contributes to at least one of the error associated with the code or a second code component following the identified code component; and

store information associated with the identified code component for further analysis.

10. The system of claim 9 , wherein the at least one processor is further configured to:

compare the first data generated by the execution of the first execution path to the second data generated by the execution of the second execution path.

11. The system of claim 9 , wherein the at least one processor is further configured to:

receive information associated with the error and the code; and

execute the code according to the received information.

12. The system of claim 9 , wherein the at least one processor is further configured to:

determine one or more code components associated with the code; and

determine one or more versions for each of the one or more code components.

13. The system of claim 12 , wherein the at least one processor is further configured to:

determine the first execution path and the second execution path based on the one or more versions.

14. The system of claim 9 , wherein the first execution path and the second execution path are executed substantially simultaneously.

15. A non-transitory computer-readable device having instructions stored thereon that, when executed by at least one computing device, causes the at least one computing device to perform operations comprising:

receiving a request to determine a root cause of an error associated with a code;

executing a first execution path and a second execution path, where the first and second execution paths correspond to the code;

determining that a difference between first data generated by the execution of the first execution path and second data generated by the execution of the second execution path affects the error associated with the code;

identifying, responsive to the determining, a code component that contributed to the difference between the first data and the second data;

determining that the difference between the first data and the second data contributes to at least one of the error associated with the code or a second code component following the identified code component; and

storing information associated with the identified code component for further analysis.

16. The computer-readable device of claim 15 , the operations further comprising:

comparing the first data generated by the execution of the first execution path to the second data generated by the execution of the second execution path.

17. The computer-readable device of claim 15 , the operations further comprising:

receiving information associated with the error and the code; and

executing the code according to the received information.

18. The computer-readable device of claim 15 , the operations further comprising:

determining one or more code components associated with the code; and

determining one or more versions for each of the one or more code components.

19. The computer-readable device of claim 18 , the operations further comprising:

determining the first execution path and the second execution path based on the one or more versions.

20. The computer-readable device of claim 15 , wherein the first execution path and the second execution path are executed substantially simultaneously.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 6, 2017
From: MIETKE, SEBASTIAN; FABIJANCIC, TONI
To: SAP SE
Reel/Frame 042616/0682 →
Continuity (1)
Related Publication 20180349251A1 · Dec 6, 2018