Oracle EBS R12 - ad_bugs.BUG_NUMBER 와 adapplied_patches.PATCH_NAME 의 관계
일반적인 경우 다음 패 치 는 버그 를 복구 하기 때문에 패 치name 과 bugnumber 는 같 습 니 다.
하지만 어떤 패 치 merge 가 패 치 를 많이 만 들 었 다 면 이 패 치 는 여러 버그 를 복구 하 는 효과 가 있 습 니 다. 이때 패 치name 과 bugnumber 는 다 릅 니 다.
표 구조:
SQL> desc ad_bugs;
Name Null? Type
----------------------------------------- -------- ----------------------------
BUG_ID NOT NULL NUMBER
APPLICATION_SHORT_NAME VARCHAR2(50)
BUG_NUMBER NOT NULL VARCHAR2(30)
CREATION_DATE NOT NULL DATE
ARU_RELEASE_NAME NOT NULL VARCHAR2(30)
CREATED_BY NOT NULL NUMBER
LAST_UPDATE_DATE NOT NULL DATE
LAST_UPDATED_BY NOT NULL NUMBER
TRACKABLE_ENTITY_ABBR VARCHAR2(8)
BASELINE_NAME VARCHAR2(150)
GENERIC_PATCH VARCHAR2(1)
SQL> desc ad_applied_patches
Name Null? Type
----------------------------------------- -------- ----------------------------
APPLIED_PATCH_ID NOT NULL NUMBER
RAPID_INSTALLED_FLAG VARCHAR2(1)
PATCH_NAME NOT NULL VARCHAR2(120)
PATCH_TYPE NOT NULL VARCHAR2(30)
MAINT_PACK_LEVEL VARCHAR2(30)
SOURCE_CODE NOT NULL VARCHAR2(3)
CREATION_DATE NOT NULL DATE
CREATED_BY NOT NULL NUMBER
LAST_UPDATE_DATE NOT NULL DATE
LAST_UPDATED_BY NOT NULL NUMBER
IMPORTED_FLAG VARCHAR2(1)
IMPORTED_FROM_DB VARCHAR2(30)
IMPORTED_ID NUMBER
MERGE_DATE DATE
DATA_MODEL_DONE_FLAG VARCHAR2(1)
patch 가 merge 되 지 않 은 상태 에서 adbugs.BUG_NUMBER 와 adapplied_patches.PATCH_NAME 의 값 은 같다.
patch 가 merge 에 의 해 지나 간 경우 중간 표 (ad comprising patches) 를 통 해 ad 를 연결 해 야 합 니 다.bugs.BUG_NUMBER 와 adapplied_patches.PATCH_NAME,
그리고 이 패 치 name 은 기본적으로 merge 의 driver file name (예 를 들 어 driver file) 입 니 다. name 은 u financial merged. drv 입 니 다. 그러면 patch name 은 financial merged 입 니 다).
관련 단계:
ad_applied_patches -> ad_patch_drivers -> ad_comprising_patches -> ad_bugs
중간 표 ad 때문에comprising_patches 는 merged patch 기록 만 저장 하기 때문에 다음 SQL 은 merged patch 에 대응 하 는 patch name 과 bug number 만 찾 을 수 있 습 니 다.
SELECT aap.patch_name
,aap.patch_type
,aap.last_update_date
,apd.driver_file_name
,apd.merged_driver_flag
,apd.merge_date
,ab.bug_number
,ab.last_update_date
FROM ad_applied_patches aap
,ad_patch_drivers apd
,ad_comprising_patches acp
,ad_bugs ab
WHERE aap.applied_patch_id = apd.applied_patch_id
AND apd.patch_driver_id = acp.patch_driver_id
AND acp.bug_id = ab.bug_id
-- AND apd.merged_driver_flag = 'Y'
merge 의 patch name 은 실제 적 인 의미 가 없 기 때문에 우 리 는 보통 ad 를 통 해bugs 는 어떤 patch 가 이미 전 화 했 는 지 검증 합 니 다.
SELECT bug_number
,last_update_date
FROM ad_bugs
WHERE bug_number = '8644899';
중복 안 전 된 패 치 는 다음 SQL 을 통 해 설치 기록 을 조회 할 수 있 습 니 다.
select orig_patch_name,last_update_date from ad_patch_drivers where applied_patch_id in
(select applied_patch_id from ad_applied_patches where patch_name='17086303'); -- patch re-install
REF:
1. Find the patches in a merged patch
http://blog.trutek.com/
2. PATCH related scripts
http://raghuook.blogspot.com/2010/08/apps-dba-patch-related-scripts.html
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
다양한 언어의 JSONJSON은 Javascript 표기법을 사용하여 데이터 구조를 레이아웃하는 데이터 형식입니다. 그러나 Javascript가 코드에서 이러한 구조를 나타낼 수 있는 유일한 언어는 아닙니다. 저는 일반적으로 '객체'{}...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.