IP Library › Granted Patent US 10,776,330
Granted Patent B2
US 10,776,330 · App. 15/637,554 · Granted Sep 15, 2020

Optimized re-deployment of database artifacts

Inventors: Jonathan Bregler (Kraichtal, DE); Alexander Bunte (Heidelberg, DE); Arne Harren (Walldorf, DE); Andreas Kellner (Birkenau-Löhrbach, DE); Daniel Kuntze (Bruchsal, DE); Simon Lueders (Walldorf, DE); Volker Sauermann (Dossenheim, DE); Michael Schnaubelt (Leimen, DE); Le-Huan Stefan Tran (Malsch, DE)
Assignee: SAP SE
G06F16/217G06F16/9024
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,776,330
App. No.
15/637,554
Granted
Sep 15, 2020
Kind
B2
Abstract

Whether database objects corresponding to an artifact to deploy already exists in a database is determined. Depending artifacts are calculated using a prior-generated dependency graph. Whether any database objects corresponding to the calculated depending artifacts need to be redeployed are determined. Whether a build plugin corresponding to the database objects needing to be redeployed supports a redeployment option is determined. The artifacts are processed according to an execution graph.

Claims (44)

1. A computer-implemented method for minimizing redeployment, the method being executed using one or more processors and comprising:

determining, by the one or more processors, whether database objects corresponding to an artifact to deploy already exist in a database;

calculating, by the one or more processors, depending artifacts using a prior-generated dependency graph;

processing, by the one or more processors, metadata of each of the database objects in an execution graph that is populated based on the prior-generated dependency graph to determine a validity status of each of the database objects, the validity status comprising an invalidity or a validity that is indicative of that a drop and create protocol is skippable relative to a visibility of each of the database objects in the execution graph;

determining, by the one or more processors, that a first database object of a plurality of database objects corresponding to the depending artifacts needs to be redeployed based on the invalidity of the first database object;

determining, by the one or more processors, that the drop and create protocol of a second database object of the plurality of database objects is skippable based on the validity of the second database object;

determining, by the one or more processors, whether a build plugin corresponding to the first database object needing to be redeployed supports a redeployment option comprising a verification of the validity of the first database object needing to be redeployed; and

processing, by the one or more processors, the depending artifacts according to the execution graph.

2. The computer-implemented method of claim 1 , further comprising generating the execution graph associated with the prior-generated dependency graph.

3. The computer-implemented method of claim 1 , further comprising inserting UNDEPLOY and DEPLOY nodes into the execution graph for the artifact or inserting a DEPLOY node into the execution graph for the artifact.

4. The computer-implemented method of claim 1 , further comprising determining whether any artifacts are remaining to be deployed.

5. The computer-implemented method of claim 1 , wherein determining the depending artifacts is performed transitively.

6. The computer-implemented method of claim 1 , further comprising inserting REDEPLOY node into the execution graph for the artifact or inserting an UNDEPLOY and DEPLOY node into the execution graph for the artifact.

7. The computer-implemented method of claim 1 , further comprising determining whether there are remaining depending artifacts.

8. A non-transitory, computer-readable medium storing one or more instructions executable by a computer system to perform operations comprising:

determining whether database objects corresponding to an artifact to deploy already exist in a database;

calculating depending artifacts using a prior-generated dependency graph;

processing metadata of each of the database objects in an execution graph that is populated based on the prior-generated dependency graph to determine a validity status of each of the database objects, the validity status comprising an invalidity or a validity that is indicative of that a drop and create protocol is skippable relative to a visibility of each of the database objects in the execution graph;

determining that a first database object of a plurality of database objects corresponding to the depending artifacts needs to be redeployed based on the invalidity of the first database object;

determining that the drop and create protocol of a second database object of the plurality of database objects is skippable based on the validity of the second database object;

determining whether a build plugin corresponding to the first database object needing to be redeployed supports a redeployment option comprising a verification of the validity of the first database object needing to be redeployed; and

processing the depending artifacts according to the an execution graph.

9. The non-transitory, computer-readable medium of claim 8 , further comprising one or more instructions to generate the execution graph associated with the prior-generated dependency graph.

10. The non-transitory, computer-readable medium of claim 8 , further comprising one or more instructions to insert UNDEPLOY and DEPLOY nodes into the execution graph for the artifact or to insert a DEPLOY node into the execution graph for the artifact.

11. The non-transitory, computer-readable medium of claim 8 , further comprising one or more instructions to determine whether any artifacts are remaining to be deployed.

12. The non-transitory, computer-readable medium of claim 8 , wherein determining the depending artifacts is performed transitively.

13. The non-transitory, computer-readable medium of claim 8 , further comprising one or more instructions to insert a REDEPLOY node into the execution graph for the artifact or to insert an UNDEPLOY and DEPLOY node into the execution graph for the artifact.

14. The non-transitory, computer-readable medium of claim 8 , further comprising one or more instructions to determine whether there are remaining depending artifacts.

15. A computer-implemented system, comprising:

a computer memory; and

a hardware processor interoperably coupled with the computer memory and configured to perform operations comprising:

determining whether database objects corresponding to an artifact to deploy already exist in a database,

calculating depending artifacts using a prior-generated dependency graph,

processing metadata of each of the database objects in an execution graph that is populated based on the prior-generated dependency graph to determine a validity status of each of the database objects, the validity status comprising an invalidity or a validity that is indicative of that a drop and create protocol is skippable relative to a visibility of each of the database objects in the execution graph,

determining that a first database object of a plurality of database objects corresponding to the depending artifacts needs to be redeployed based on the invalidity of the first database object,

determining that the drop and create protocol of a second database object of the plurality of database objects is skippable based on the validity of the second database object,

determining whether a build plugin corresponding to the first database object needing to be redeployed supports a redeployment option comprising a verification of the validity of the first database object needing to be redeployed, and

processing the depending artifacts according to the an execution graph.

16. The computer-implemented system of claim 15 , further configured to generate the execution graph associated with the prior-generated dependency graph.

17. The computer-implemented system of claim 15 , further configured to insert UNDEPLOY and DEPLOY nodes into the execution graph for the artifact or to insert a DEPLOY node into the execution graph for the artifact.

18. The computer-implemented system of claim 15 , further configured to determine whether any artifacts are remaining to be deployed.

19. The computer-implemented system of claim 15 , wherein determining the depending artifacts is performed transitively.

20. The computer-implemented system of claim 15 , further configured to insert a REDEPLOY node into the execution graph for the artifact or to insert an UNDEPLOY and DEPLOY node into the execution graph for the artifact.

21. The computer-implemented system of claim 15 , further configured to determine whether there are remaining depending artifacts.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 26, 2017
From: BREGLER, JONATHAN; BUNTE, ALEXANDER; HARREN, ARNE; KELLNER, ANDREAS; KUNTZE, DANIEL; LUEDERS, SIMON; SAUERMANN, VOLKER; SCHNAUBELT, MICHAEL; TRAN, LE-HUAN STEFAN
To: SAP SE
Reel/Frame 043098/0683 →
Continuity (1)
Related Publication 20190005074A1 · Jan 3, 2019
Cited By (2)
US 12,339,819 US 12,461,899