장애 정보
| 장애 번호 | 701508a |
| 현상 | encrypt 열을 키로 포함하는 인덱스와 다중 인덱스 유지 기능이 적용된 인덱스가 혼재된 테이블에서 병렬 DML(PDML)을 수행할 경우, 다중 인덱스 유지 기능이 적용된 인덱스가 손상된다. INSERT 실행 시 새 행의 키가 인덱스에 반영되지 않으며, DELETE 실행 시 삭제된 행의 키가 인덱스에 잔존한다. 행 수는 일치하나 DML 자체는 성공으로 처리된다. encrypt 열 인덱스만 존재하는 테이블에서는 PDML DELETE 및 UPDATE가 내부 오류로 실패한다. |
| 원인 | PDML 수행 시 인덱스 유지 로직에서 인덱스별 하위 쿼리 처리 순서와 실제 실행 순서가 불일치하여 키 값의 누락 또는 중복이 발생할 수 있다. 또한 암호화 컬럼 인덱스만 존재하는 테이블의 경우, 하위 쿼리가 생성되지 않음에도 불구하고 인덱스 유지 작업이 시도되어 내부 오류가 발생한다. |
| 해결 | PE IDXM이 빈 서브쿼리 위치를 카운트하지 않고, use_multi index가 적용된 서브쿼리만 순차적으로 처리하도록 수정한다. 또한, use_multi index가 적용된 DML이 없는 경우 PDML을 비활성화하고 직렬로 수행하도록 변경한다. 또한, insert 절이 있는 merge 문에서 update 절이 인덱스 컬럼을 수정하지 않아도 PE IDXM이 적용되도록 수정한다. 기존에는 PE IDXM 없이 실행될 경우 insert 절의 인덱스 키가 누락되는 문제가 있었다. |
| 발생시점 | 26.10.05. |
| 패치필요버전 | 7FS02PS |
패치 정보
| 패치명 | FS02PS_701508a |
| 메이저 버전 | 7 |
| 마이너 버전 | FS02PS |
| 버전 제목 | encrypt column index 가 섞인 table 의 PDML 에서 use_multi index 가 깨지던 오류해결 |
| 배포가능일 | 26.11.09. |
| 호환성 | • TAC 롤링 패치: 가능 • TSC 롤링 패치: 가능 • 백업 데이터 호환: 가능 • 프로토콜 호환: 가능 • 데이터 포맷 호환: 가능 |
| AP 영향도 | • 플랜 변경 여부: 예 • 결과 값 변경 여부: 아니오 • SQL 문법 변경 여부: 아니오 • 시스템 오브젝트 변경 여부: 아니오 • 기존 기능 변경 여부: 아니오 |
| 파라미터 | - |
| 우회방안 | - |