IP Library Granted Patent US 10,409,667
Granted Patent B2
US 10,409,667 · App. 15/624,000 · Granted Sep 10, 2019

Error assignment for computer programs

Inventors: J. Justin Donaldson (Seattle, WA); Hormoz Tarevern (Mountain View, CA); Sadiya Hameed (Millbrae, CA); Siddharth Srivastava (San Francisco, CA); Feifei Jiang (Millbrae, CA)
Assignee: salesforce.com, inc.
G06F11/079G06F11/0706G06F11/0751G06F11/0772G06N3/04G06N3/08
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,409,667
App. No.
15/624,000
Granted
Sep 10, 2019
Kind
B2
Abstract

An online system identifies an assignment for a computer program error indicated in an error message by applying an assignment model to token sequences identified in the error message. The error message includes a sequence of execution paths of the computer program. Each execution path indicates a function call active in computer memory when the error was generated. In other words, the error message allows tracking of the sequence of nested paths up to the point where the error was generated. In one example, the error message is a stack trace message that reports active stack frames in computer memory during the execution of the program.

Claims (35)

1. A computer implemented method, comprising:

receiving an error message indicating error that occurred during execution of a computer program, wherein the error message includes a sequence of execution paths of the computer program;

extracting a plurality of token sequences in the error message, wherein each token sequence includes a sequence of token identifiers identified from the execution paths of the error message;

generating an output by applying a neural network model to the extracted plurality of token sequences;

determining an assignment for the error indicated by the error message based on the output of the neural network model; and

providing the error message and corresponding error assignment record to a user associated with the assignment.

2. The computer implemented method of claim 1 , wherein each execution path from the sequence of execution paths represents a function call active in computer memory when the error was generated.

3. The computer implemented method of claim 1 , further comprising encoding each token identifier from the plurality of token sequences into a one-hot encoded vector.

4. The computer implemented method of claim 1 , wherein each token sequence in the plurality of token sequences includes token identifiers corresponding to a same programming element type.

5. The computer implemented method of claim 4 , wherein each token sequence includes token identifiers corresponding to an object-oriented class programming element.

6. The computer implemented method of claim 1 , wherein the error message is a stack trace message that reports active stack frames in computer memory during execution of the computer program.

7. A non-transitory computer readable storage medium comprising computer executable code that when executed by one or more processors causes the one or more processors to perform operations comprising:

receiving an error message indicating error that occurred during execution of a computer program, wherein the error message includes a sequence of execution paths of the computer program;

identifying a plurality of token sequences in the error message, wherein each token sequence includes a sequence of token identifiers identified from the execution paths of the error message;

generating an output by applying a neural network model to the identified plurality of token sequences.

determining an assignment for the error indicated by the error message based on the output of the neural network model; and

providing the error message to a user associated with the assignment.

8. The non-transitory computer readable storage medium of claim 7 , wherein each execution path from the sequence of execution paths represents a function call active in computer memory when the error was generated.

9. The non-transitory computer readable storage medium of claim 7 , wherein the computer executable code further causes the one or more processors to perform operations comprising encoding each token identifier in the plurality of token sequences into a one-hot encoded vector.

10. The non-transitory computer readable storage medium of claim 7 , wherein each token sequence in the plurality of token sequences includes token identifiers corresponding to a same programming element type.

11. The non-transitory computer readable storage medium of claim 10 , wherein each token sequence includes token identifiers corresponding to an object-oriented class programming element.

12. The non-transitory computer readable storage medium of claim 7 , wherein the error message is a stack trace message that reports active stack frames in computer memory during execution of the computer program.

13. A system comprising:

one or more computer processors; and

a non-transitory computer readable storage medium comprising computer executable code that when executed by the one or more processors causes the one or more processors to perform operations comprising:

receiving an error message indicating error that occurred during execution of a computer program, wherein the error message includes a sequence of execution paths of the computer program;

identifying a plurality of token sequences in the error message, wherein each token sequence includes a sequence of token identifiers identified from the execution paths of the error message;

generating an output by applying a neural network model to the identified plurality of token sequences;

determining an assignment for the error indicated by the error messaged based on the output of the neural network model; and

providing the error message to a user associated with the assignment.

14. The system of claim 13 , wherein each execution path from the sequence of execution paths represents a function call active in computer memory when the error was generated.

15. The system of claim 13 , wherein the computer executable code further causes the one or more processors to perform operations comprising encoding each token identifier from the plurality of token sequences into a one-hot encoded vector.

16. The system of claim 13 , wherein each token sequence in the plurality of token sequences includes token identifiers corresponding to a same programming element type.

17. The system of claim 13 , wherein each token sequence includes token identifiers corresponding to an object-oriented class programming element.

18. The system of claim 13 , wherein the error message is a stack trace message that reports active stack frames in computer memory during execution of the computer program.

Assignments (2)
CHANGE OF NAME Recorded Nov 21, 2024
From: SALESFORCE.COM, INC.
To: SALESFORCE, INC.
Reel/Frame 069431/0203 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 18, 2017
From: DONALDSON, J. JUSTIN; TAREVERN, HORMOZ; HAMEED, SADIYA; SRIVASTAVA, SIDDHARTH; JIANG, FEIFEI
To: SALESFORCE.COM, INC.
Reel/Frame 042740/0892 →
Continuity (1)
Related Publication 20180365091A1 · Dec 20, 2018