IP Library Granted Patent US 8,904,348
Granted Patent B2
US 8,904,348 · App. 11/733,381 · Granted Dec 2, 2014

Method and system for handling errors during script execution

Inventor: Tad A. Deffler (Boonton, NJ)
Assignee: CA, Inc.
G06F17/30377
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 8,904,348
App. No.
11/733,381
Granted
Dec 2, 2014
Kind
B2
Abstract

The present disclosure is directed to a method and system for bulk-loading data into a data storage model. In accordance with a particular embodiment of the present disclosure a script having a plurality of statements is executed. Executing the script includes executing the plurality of statements in a predetermined order. One or more failed statements are identified. Each of the one or more failed statements are re-executed according to the predetermined order.

Claims (51)

1. A method for handling errors during script execution, comprising:

receiving a script having a plurality of statements;

adding each of the plurality of statements to a data structure, wherein the data structure holds each of the plurality of statements and information about a status of each of the plurality of statements;

executing each of the plurality of statements in a predetermined order in a first iteration, the first iteration comprising each of the plurality of statements;

updating, in the data structure, a status of each of the plurality of statements after execution during the first iteration, the status selected from a group comprising completed and failed;

automatically and continuously performing subsequent iterations until it is determined that the status of each of the statements is completed, wherein performing subsequent iterations comprises:

determining whether any particular statements of the plurality of statements do not have a status of completed; and

executing only each of the particular statements that do not have a status of completed, in the predetermined order, in a subsequent iteration; and

updating the status of any of the particular statements that completed successfully in the subsequent iteration;

in response to determining that all of the statements have a status of completed after a subsequent iteration, terminating the subsequent iterations.

2. The method of claim 1 , further comprising terminating execution of the script.

3. The method of claim 1 , further comprising creating a plurality of custom processes executed for at least one statement.

4. The method of claim 3 , further comprising storing the custom processes in a centralized software component.

5. The method of claim 3 , wherein executing the plurality of statements further comprises executing the custom processes for the at least one statement.

6. A system for handling errors during script execution, comprising:

a storage device; and

a processor, the processor operable to execute a program of instructions operable to:

receive a script having a plurality of statements;

add each of the plurality of statements to a data structure, wherein the data structure holds each of the plurality of statements and information about a status of each of the plurality of statements;

execute each of the plurality of statements in a predetermined order in a first iteration, the first iteration comprising each of the plurality of statements;

update, in the data structure, a status of each of the plurality of statements after execution during the first iteration, the status selected from a group comprising completed and failed;

automatically and continuously perform subsequent iterations until it is determined that the status of each of the statements is completed, wherein performing subsequent iterations comprises:

determine whether any particular statements of the plurality of statements do not have a status of completed; and

execute only each of the particular statements that do not have a status of completed, in the predetermined order, in a subsequent iteration; and

updating the status of any of the particular statements that completed successfully in the subsequent iteration;

in response to determining that all of the statements have a status of completed after a subsequent iteration, terminate the subsequent iterations.

7. The system of claim 6 , wherein the program of instructions is further operable to terminate execution of the script.

8. The system of claim 6 , wherein the program of instructions is further operable to create a plurality of custom processes executed for at least one statement.

9. The system of claim 8 , wherein the program of instructions is further operable to store the custom processes in a centralized software component.

10. The system of claim 8 , wherein the program of instructions is further operable to execute the custom processes for the at least one statement.

11. Logic encoded in non-transitory media, the logic being operable, when executed on a processor, to:

receive a script having a plurality of statements;

add each of the plurality of statements to a data structure, wherein the data structure holds each of the plurality of statements and information about a status of each of the plurality of statements;

execute each of the plurality of statements in a predetermined order in a first iteration, the first iteration comprising each of the plurality of statements;

update, in a data structure, the status of each of the plurality of statements after execution during the first iteration, the status selected from a group comprising completed and failed;

automatically and continuously perform subsequent iterations until it is determined that the status of each of the statements is completed, wherein performing subsequent iterations comprises:

determine whether any particular statements of the plurality of statements do not have a status of completed; and

execute only each of the particular statements that do not have a status of completed, in the predetermined order, in a subsequent iteration; and

in response to determining that all of the statements have a status of completed after a subsequent iteration, terminate the subsequent iterations;

automatically and continuously perform subsequent iterations until it is determined that the status of each of the statements is completed, wherein performing subsequent iterations comprises:

determine whether any particular statements of the plurality of statements do not have a status of completed; and

execute only each of the particular statements that do not have a status of completed, in the predetermined order, in a subsequent iteration; and

updating the status of any of the particular statements that completed successfully in the subsequent iteration;

in response to determining that all of the statements have a status of completed after a subsequent iteration, terminate the subsequent iterations.

12. The logic of claim 11 , wherein the logic is further operable to terminate execution of the script.

13. The logic of claim 11 , wherein the logic is further operable to create a plurality of custom processes executed for at least one statement.

14. The logic of claim 13 , wherein the logic is further operable to store the custom processes in a centralized software component.

15. The logic of claim 13 , wherein the logic is further operable to execute the custom processes for the at least one statement.

16. The method of claim 1 , wherein executing only each of the particular statements that do not have a status of completed, in the predetermined order, in a subsequent iteration comprises, for each of the particular statements:

determining, based on the particular statement, whether an alternative process for handling the particular statement exists; and

in response to determining that an alternative process for handling the particular statement exists, executing the alternative process instead of re-executing the particular statement.

Assignments (2)
MERGER Recorded Sep 29, 2014
From: COMPUTER ASSOCIATES THINK, INC.
To: CA, INC.
Reel/Frame 033839/0267 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 10, 2007
From: DEFFLER, TAD A.
To: COMPUTER ASSOCIATES THINK, INC.
Reel/Frame 019141/0881 →
Continuity (2)
Provisional Application 60745075 · Apr 18, 2006
Related Publication 20080034348A1 · Feb 7, 2008