Blame | Last modification | View Log | RSS feed
CREATE PROCEDURE "RELEASE_MANAGER"."LEVEL_N_CONFLICTS" (nnrtag_id IN NUMBER,nnsession_num IN NUMBER,nnrowcnt OUT NUMBER,nniteration IN NUMBER)IS/* ---------------------------------------------------------------------------Version: 3.0.1--------------------------------------------------------------------------- */previteration NUMBER := nniteration - 1;BEGIN/* --------- LEVEL 1 CONFILCTS -----------|| Following states are used:|| 0 -> NOT FOUND|| 1 -> MAJOR|| 2 -> MINOR MINOR*/INSERT INTO temp_env_statesSELECT DISTINCT nnsession_num AS session_num, nniteration AS level_num,pv.pv_id, pv.pkg_id, pv.v_ext,DECODE (tes.tes_state, 2, 2, 1) AS MESSAGEFROM package_dependencies dep,package_versions dpv,package_versions pv,release_content rel,temp_env_states tesWHERE rel.pv_id = dep.pv_idAND rel.rtag_id = nnrtag_idAND dep.pv_id = pv.pv_idAND dep.dpv_id = dpv.pv_idAND dpv.pkg_id = tes.pkg_idAND NVL (dpv.v_ext, '|LINK_A_NULL|') =NVL (tes.v_ext, '|LINK_A_NULL|')AND tes.session_num = nnsession_numAND tes.level_num = previterationAND (dep.pv_id, dep.dpv_id) IN/* Remove packages listed in IGNORE_WARNINGS table and|| packages already stored in Temp Table.*/(SELECT pd.pv_id, pd.dpv_idFROM package_dependencies pd, release_content rcWHERE pd.pv_id = rc.pv_id AND rc.rtag_id = nnrtag_id--AND pd.pv_id NOT IN ( SELECT pv_id FROM temp_env_states WHERE session_num = NNsession_num AND level_num > 5 )MINUSSELECT igw.pv_id, igw.dpv_idFROM ignore_warnings igwWHERE igw.rtag_id = nnrtag_id);nnrowcnt := SQL%ROWCOUNT;END level_n_conflicts;/