프로시져 응답 지연현상 도와주세요~ ㅜㅜ 0 2 1,936

by 처리~ [DB 기타] [2014.10.06 14:40:56]


대량의 데이터를 조회하는 쿼리문을 프로시저를 통해 생성하였습니다.

종종 10초면 조회 될 쿼리문이 아무리 기다려도 결과가 출력되지 않더라고요.......

출력되지 않을 때 Toad 에서 해당 쿼리문을 직접 질의하면 결과가 출력되는데

프로시저로 호출하면 응답없음처럼 시간만 흘러갑니다.

이런경우 동일한 내용으로 이름만 다른 프로시저를 생성 후 조회하면 결과값이 출력됩니다.

또한 이전의 응답없음상태의 프로시져까지 정상이 됩니다.

무엇을 어떤식으로 확인해야하는지 전혀 감이오지않아서 질문드립니다.

경험있으신 고수님의 답변 부탁 드리겠습니다.

 

by 아발란체 [2014.10.06 17:20:05]

풀패치가 아닌 일부 패치만 해서 빠른 것처럼 보이는 것인지,

락 정보를 조회하여 락을 걸고 있는 것인지 확인이 필요해보입니다.

--락 정보 조회
SELECT DISTINCT
    T1.OBJECT_ID,
    t1.session_id,
    t2.serial#,
    T2.SQL_ID,
    t1.os_user_name,
    t1.oracle_username,
    t2.status AS status,
    t3.object_name,
    DECODE(
        locked_mode,
        2, 'ROW SHARE',
        3, 'ROW EXCLUSIVE',
        4, 'SHARE',
        5, 'SHARE ROW EXCLUSIVE',
        6, 'EXCLUSIVE',
        'UNKNOWN'
    ) lock_TYPE,
    MACHINE,
    PROGRAM,
    TERMINAL,
    SQL_TEXT
FROM
    V$LOCKED_OBJECT T1,
    V$SESSION T2,
    DBA_OBJECTS T3,
    V$OPEN_CURSOR T4
WHERE
    t1.session_id = t2.SID
    AND t1.object_id = t3.object_id
    AND T4.sql_id = T2.sql_id

 


by 처리~ [2014.10.06 18:46:34]

답변 감사드립니다. 문제가 발생되었을때 토드창을 하나더 열어 Lock 을 확인하였는데 조회하는 프로세스가 걸리긴 하더라고요.

죽이고 다시해도 마찬가지긴 했습니다......

댓글등록
SQL문을 포맷에 맞게(깔끔하게) 등록하려면 code() 버튼을 클릭하여 작성 하시면 됩니다.
로그인 사용자만 댓글을 작성 할 수 있습니다. 로그인, 회원가입