기술 정보
home
채널 소개
home
▪️

tbascmd로 TAS 접속 후 virdir에서 cd, ls 명령어 수행 시 31004 에러 발생

문서 유형
장애 해결
분야
유틸리티
키워드
ERROR_AS_NOFILE
virdir
tbascmd
적용 제품 버전
7F S02PS
오류코드
31004

현상

tbascmd를 사용해 TAS에 접속 후 virdir에서 cd, ls 명령어 수행 시, 해당 디렉토리에 파일이 존재하지 않는다는 의미인 '31004: ERR0R_AS_NOFILE' 에러 메시지가 발생할 수 있습니다.
참고
파일 조회 시 31004: ERROR_AS_NOFILE 메시지가 발생할 수 있으며, DB 운영에 문제가 되는 상황은 아닙니다.

원인

TAS에 실제로 directory가 존재하지 않고, 사용자가 file 생성 시 명시한 디렉토리가 존재하는 것처럼 가상의 디렉토리를 보여줍니다.
datafile '+DS0/tac/system01/system01.dtf' 로 명시된 경우
DS0 하위에 tac, system01 등의 디렉토리가 생성되는 것이 아니라 실제 파일은 '+DS0/tac/system01/system01.dtf'만 존재합니다.
tac , system01 디렉토리는 virtual directory로 존재하고 실제로도 없는 파일이므로 해당 에러 로그가 남게 됩니다.

해결

실제 파일이 존재하는 디렉토리에서 파일 조회 시, 해당 에러 메시지가 발생하지 않습니다.
참고
사용자가 mkdir 로 생성한 디렉토리는 DATA TYPE으로 생성되고, 그 외 케이스로 생성된 디렉토리는 VIRDIR TYPE으로 생성됩니다.
mkdir 명령어로 생성된 디렉토리는 파일명 끝에 '/'가 붙은 파일 생성
tbascmd 는 끝에 '/' 가 있으면 파일을 디렉토리로 인식해 출력
VIRDIR은 파일 삭제 시, 하위의 파일이 모두 삭제되면 해당 디렉토리도 함께 삭제
-- db 생성 후 tbascmd 접속 $ tbascmd 28629 ASCMD 7 TmaxTibero Corporation Copyright (c) 2020-. All rights reserved. [13:29]ASCMD +> ls +DS0 - Number of diskspaces found: 1 -- 기생성된 +DS0/tac 조회 [13:47]ASCMD +DS0> ls -l TYPE REDUNED STRIPED NAME VIRDIR - - tac/ - Number of files found: 1 -- +DS0/test01 생성 및 조회 [13:47]ASCMD +DS0> mkdir test01 [13:49]ASCMD +DS0> ls -l TYPE REDUNED STRIPED NAME VIRDIR - - tac/ DATA 3 COARSE test01/ - Number of files found: 2
SQL
복사
tbascmd
tas log
tac == virdir [14:01]ASCMD +DS0> cd tac
[2025-04-21T14:01:52.575211] [AS-112] [I] tbas: try to open file '+DS0/tac'(R) [2025-04-21T14:01:52.575835] [AS-112] [W] tbas: failed to open file '+DS0/tac'(R,rc=-20) [2025-04-21T14:01:52.575892] [FRM-112] [I] THROW. ec=ERROR_AS_NOFILE(-31004) [ The AS file, 'tac', does not exist. ] (sql_id:(null), sub_sql_id:(null), user:tibero, ap_module:(null), program:TAS_CLNT, host:NO_HOST) [as_msg.c:2848:process_tbas_open] [2025-04-21T14:01:52.578780] [AS-113] [I] tbas: try to open file '+DS0/tac/'(R) [2025-04-21T14:01:52.579183] [AS-113] [W] tbas: failed to open file '+DS0/tac/'(R,rc=-20) [2025-04-21T14:01:52.579208] [FRM-113] [I] THROW. ec=ERROR_AS_NOFILE(-31004) [ The AS file, 'tac/', does not exist. ] (sql_id:(null), sub_sql_id:(null), user:tibero, ap_module:(null), program:TAS_CLNT, host:NO_HOST) [as_msg.c:2848:process_tbas_open]
[14:02]ASCMD +DS0/tac> cd +DS0
[14:03]ASCMD +DS0> mkdir test01
[2025-04-21T14:03:39.347375] [AS-113] [I] tbas: try to open file '+DS0/test01/'(R) [2025-04-21T14:03:39.347895] [AS-113] [W] tbas: failed to open file '+DS0/test01/'(R,rc=-20) [2025-04-21T14:03:39.347969] [FRM-113] [I] THROW. ec=ERROR_AS_NOFILE(-31004) [ The AS file, 'test01/', does not exist. ] (sql_id:(null), sub_sql_id:(null), user:tibero, ap_module:(null), program:TAS_CLNT, host:NO_HOST) [as_msg.c:2848:process_tbas_open] [2025-04-21T14:03:39.351150] [AS-112] [I] tbas: try to open file '+DS0/test01'(R) [2025-04-21T14:03:39.351585] [AS-112] [W] tbas: failed to open file '+DS0/test01'(R,rc=-20) [2025-04-21T14:03:39.351627] [FRM-112] [I] THROW. ec=ERROR_AS_NOFILE(-31004) [ The AS file, 'test01', does not exist. ] (sql_id:(null), sub_sql_id:(null), user:tibero, ap_module:(null), program:TAS_CLNT, host:NO_HOST) [as_msg.c:2848:process_tbas_open] [2025-04-21T14:03:39.355786] [AS-112] [I] tbas: try to open file '+DS0/test01/'(C) [2025-04-21T14:03:39.359152] [AS-112] [I] [DS#0] file#285 resized to 0 bytes [2025-04-21T14:03:39.359192] [AS-112] [I] [DS#0] file created: file#285,size 0 [2025-04-21T14:03:39.362126] [AS-112] [I] tbas: open file '+DS0/test01/'(C,rc=0)
[14:03]ASCMD +DS0> cd test01
[2025-04-21T14:04:18.695847] [AS-113] [I] tbas: try to open file '+DS0/test01'(R) [2025-04-21T14:04:18.696457] [AS-113] [W] tbas: failed to open file '+DS0/test01'(R,rc=-20) [2025-04-21T14:04:18.696499] [FRM-113] [I] THROW. ec=ERROR_AS_NOFILE(-31004) [ The AS file, 'test01', does not exist. ] (sql_id:(null), sub_sql_id:(null), user:tibero, ap_module:(null), program:TAS_CLNT, host:NO_HOST) [as_msg.c:2848:process_tbas_open] [2025-04-21T14:04:18.699695] [AS-112] [I] tbas: try to open file '+DS0/test01/'(R) [2025-04-21T14:04:18.703708] [AS-112] [I] tbas: open file '+DS0/test01/'(R,rc=0)