다름아니라 BeginTrans 상태에서 해당테이블이 검색이 안되는 증상을 발견했습니다.
VB6으로 Microsoft ActiveX Data Object 2.8 Library를 참조해서 CUBRID를 검색하는 실행파일(Serch.exe)과,
등록하는 실행파일(Insert.exe)을 만들었습니다.
등록화면에 BeginTrans 걸어놓고 1초마다 하나의 데이터를 등록하게 해 놓고 총 100개의 데이터를 입력한뒤 CommitTrans 하게 코딩했습니다.
문제는 BeginTrans 중에는 검색이 안됩니다. (응답없음)
CommitTrans 한 후에는 검색이 됩니다.
하지만 CUBRID Manager 에서는 트렌젝션 걸려있는 상태에서 검색이 되요~
혹시 몰라 CUBRID말고도 다른 것도 그런가 하고 Access MDB파일로도 실험을 해본결과 정상작동합니다.
왠지 락걸린거같아요!
이 문제좀 살펴주세요.
업체에 나간 프로그램은 파일 전송이 완료되면 Commit 하게 되있거든요.
등록하는 도중에 검색하면 프로그램이 다운된다고 합니다.
안녕하세요. 답변이 늦어서 죄송합니다.
데이터 입력 상황에 대하여 락 문제로 생각됩니다만, 정확한 내용은 몇가지 로그를 확인해봐야 할 것 같습니다.
일단 CUBRID home 디렉토리 아래 log/broker/sql_log 아래의 내용을 모두 다른 디렉토리로 잠시 옮겨놓은 후,
상황을 발생시키고 cubrid lockdb -o lockdb.log <DB명> 을 수행하여 lockdb.log 화일을 올려주시고요, 또한 위 sql_log 디렉토리에 생성된 *.sql.log 화일을 같이 올려주시면 원인을 파악해 보도록 하겠습니다.
비밀글로 올려주셔도 됩니다.