Troubleshooting job design issues

Source: IBM IIS 11.7 공식 문서 Type: article By: IBM Valid as of: 2026-04-25

핵심 Takeaway

  • 고아 스테이지(Orphan Stage)는 구버전에서 무시됐으나 IIS 업그레이드·Connector Migration 후 런타임 실패 원인이 됨 — Designer에서 zoom out으로 반드시 확인
  • 병렬 엔진 컬럼명은 알파벳·숫자·밑줄만 허용; 마침표(.)는 서브레코드 구분자로 예약되어 컬럼명 사용 불가
  • 단일 문자 t/T 컬럼명은 IIS 8.5 이후 런타임 검증 단계에서 abort 발생
  • DataStage Flow Designer 11.7은 컴파일 오류 전체 하이라이트 → 재컴파일 전 멀티 오류 일괄 수정 가능
  • 잡 설계 문제는 런타임 오류로 표면화되므로, 원인 파악 시 설계 레이어(스테이지 연결·컬럼명)를 우선 점검해야 함

상세 요약

고아 스테이지 (Orphan Stage)

ibm-datastage 잡 실패 중 일부는 설계 단계의 누락된 링크 연결에서 비롯된다. 입력·출력 링크 없이 팔레트에 단독으로 존재하는 스테이지를 고아 스테이지라 한다. 이 스테이지는 Designer 팔레트 가장자리에 위치해 일반적인 편집 뷰에서는 보이지 않아 간과되기 쉽다.

일부 구버전 IIS 릴리즈는 고아 스테이지를 오류 없이 컴파일하고 런타임에서 해당 스테이지를 무시했다. 따라서 과거에 잘 돌아가던 잡이 IIS 업그레이드 또는 Connector Migration Tool 사용 후 갑자기 실패하는 경우, 고아 스테이지가 원인일 수 있다.

해결 방법: Designer 줌 아웃(zoom out)으로 전체 팔레트를 확인하여 링크 없는 스테이지를 찾고, 불필요하면 삭제, 필요하면 올바르게 연결 후 재컴파일.

컬럼명 유효성 규칙

datastage-job-design-troubleshooting 의 핵심 설계 규칙 중 하나. DataStage 병렬 엔진은 컬럼명에 다음 문자만 허용한다:

  • 알파벳 (Roman 문자 외 Unicode·Kanji·악센트 포함)
  • 숫자 (0–9) — 단, 이름 시작 불가
  • 밑줄(_)

마침표(.)는 서브레코드(subrecord) 구분자로 예약되어 있다. 예를 들어 asub.b는 서브레코드 asub 내의 컬럼 b를 의미한다. 따라서 컬럼명에 .를 사용하면 파서가 서브레코드 경로로 해석하여 런타임 abort가 발생한다.

단일 문자 “t”/“T” 컬럼명 버그

IIS 8.5 이후, 컬럼명이 소문자 t 또는 대문자 T 단 하나로만 구성된 경우 런타임 검증(validation) 단계에서 잡이 abort된다. 이 역시 컬럼명 변경으로 해결된다.

DataStage Flow Designer v11.7 개선사항

11.7의 Flow Designer는 컴파일 오류를 한 번에 전부 하이라이트하고 스테이지 위에 마우스를 올리면(hover) 해당 오류를 즉시 표시한다. 구버전 대비 개선된 점: 구버전에서는 스테이지 하나씩 오류를 순차 확인해야 했다. 이 개선으로 대형 잡(30~50개 이상 스테이지)의 컴파일 디버깅 효율이 향상됐다.

연결되는 위키 페이지