| 221 |
vnguyen |
1 |
CREATE PROCEDURE "RELEASE_MANAGER"."LEVEL_ONE_CONFLICTS" (
|
|
|
2 |
nnrtag_id IN NUMBER,
|
|
|
3 |
nnsession_num IN NUMBER
|
|
|
4 |
)
|
|
|
5 |
IS
|
|
|
6 |
/* ---------------------------------------------------------------------------
|
|
|
7 |
Version: 3.0.0
|
|
|
8 |
--------------------------------------------------------------------------- */
|
|
|
9 |
BEGIN
|
|
|
10 |
/* --------- LEVEL 1 CONFILCTS -----------
|
|
|
11 |
|| Following states are used:
|
|
|
12 |
|| 0 -> NOT FOUND
|
|
|
13 |
|| 1 -> MAJOR
|
|
|
14 |
|| 2 -> MINOR MINOR
|
|
|
15 |
*/
|
|
|
16 |
INSERT INTO temp_env_states
|
|
|
17 |
SELECT DISTINCT nnsession_num AS session_num, 1 AS level_num,
|
|
|
18 |
err.pv_id, errpkg.pkg_id, errpkg.v_ext,
|
|
|
19 |
DECODE (frc.v_nmm,
|
|
|
20 |
NULL, 0,
|
|
|
21 |
errpv.v_nmm, DECODE (frc.v_mm,
|
|
|
22 |
errpv.v_mm, NULL,
|
|
|
23 |
2
|
|
|
24 |
),
|
|
|
25 |
1
|
|
|
26 |
) AS MESSAGE
|
|
|
27 |
FROM (
|
|
|
28 |
/* Full Release Contents used for reference*/
|
|
|
29 |
SELECT rpv.pkg_id,
|
|
|
30 |
NVL (rpv.v_ext, '|LINK_A_NULL|') AS v_ext,
|
|
|
31 |
rpv.pkg_version, rpv.v_nmm, rpv.v_mm
|
|
|
32 |
FROM release_content rel, package_versions rpv
|
|
|
33 |
WHERE rel.pv_id = rpv.pv_id AND rtag_id = nnrtag_id) frc,
|
|
|
34 |
(
|
|
|
35 |
/* DPV_IDs not fount in release*/
|
|
|
36 |
SELECT dep.pv_id, dep.dpv_id AS err_dpv
|
|
|
37 |
FROM package_dependencies dep
|
|
|
38 |
WHERE dep.pv_id IN (SELECT pv_id
|
|
|
39 |
FROM release_content
|
|
|
40 |
WHERE rtag_id = nnrtag_id)
|
|
|
41 |
AND NOT dep.dpv_id IN (SELECT pv_id
|
|
|
42 |
FROM release_content
|
|
|
43 |
WHERE rtag_id = nnrtag_id)
|
|
|
44 |
MINUS
|
|
|
45 |
/* MINUS Dependencies to be ignored */
|
|
|
46 |
SELECT igw.pv_id, igw.dpv_id AS err_dpv
|
|
|
47 |
FROM ignore_warnings igw
|
|
|
48 |
WHERE rtag_id = nnrtag_id) err,
|
|
|
49 |
package_versions errpkg,
|
|
|
50 |
package_versions errpv
|
|
|
51 |
WHERE err.err_dpv = errpv.pv_id
|
|
|
52 |
AND errpv.pkg_id = frc.pkg_id(+)
|
|
|
53 |
AND NVL (errpv.v_ext, '|LINK_A_NULL|') = frc.v_ext(+)
|
|
|
54 |
AND err.pv_id = errpkg.pv_id;
|
|
|
55 |
END level_one_conflicts;
|
|
|
56 |
/
|