시기가 아마도 2006년 같은데..
경기도 모 시청 프로젝트 였습니다.
그때 담당했던 부분중 하나가 업무 프로그램과 ERP같 문서 연동을 하는 부분이였죠.
아는 사람은 알겠지만.. 전자문서 유통센터라는 공기관에서 제공하는 연동모듈이 있습니다. (실제로는 데몬처럼 동작하는 자바 어플리케이션)
해당 기관에 요청을 하면 대상 서버 IP로 키를 부여하고 연동 모듈을 보내주는데.
업무 프로그램에서 XML 파일을 만들어서 연동 모듈 디렉토리에 넣으면, 연동 모듈이 ERP쪽으로 전송해주는 형식입니다.
이게 잘 돌아가던게.. 어느날 갑자기 띄엄띄엄 오류가 발생합니다.
매번 오류가 나오는것도 아니고, 잘 돌다가 좀 자료가 전송됐다 싶으면 오라클 내부 오류가 뜨더군요.
DB 커넥션이 문제면 아예 접속도 안될테고.쿼리가 문제면 실행오류가 뜰텐데.
오라클 내부 시스템 오류라니.. 도무지 왜 이런 일이 발생하는지 알 수가 없었습니다.
서버 IP로 키값이 지정되어 있으니, 개발 PC에선 테스트도 안되고 실운영서버에서만 해결을 봐야 되는데.
개발 장소에서 데이타보내고 전산실 들어가서 확인하고 들락날락하면서 오류를 찾았지만.
원인 불가 상태로 1주일이 넘어갑니다. (갈굼의 연속.. 대체 어떻게 했길래 오류하나 못잡냐고 들들들 볶아대던 사이코패스 XX)
결국 원인을 찾았는데..
문제는 DB서버에 깔린 오라클을 버전 업하면서 발생한 문제였습니다.
아마 8i, 9i를 10g로 버전업했던것 같은데.. 오라클 서버는 버전업했는데 클라이언트 JDBC 드라이버를 업그레이드 안해서 발생한 문제였지요.
당연히 10g용 JDBC 드라이버로 교체를 했는데도 계속 오류는 뿜어져나오고.
뭐가 원인인지 알지 못한채 1주일이 넘어갑니다.
어찌어찌 원인을 찾아보니.. 연동모듈 자체에 오라클 JDBC 드라이버가 포함된 상태였고..
클래스 패스 순위가 빠르다 보니.. 교체한 10g 드라이버보다 연동모듈의 낮은 버전 드라이버가 적용된 것이죠.
연동모듈 jar 파일을 압축해제해서 하나씩 보니까 오라클 드라이버가 튀어나온겁니다.
최종적인 솔루션은 클래스패스를 변경해서 교체한 10g 드라이버를 앞으로 당기니 모든 문제가 해결됐네요.
문제는 해결됐지만..
보름동안 갈굼을 당한 나는 뭔 죄인지.
도대체 무슨 생각으로 지들 패키지 안에 오라클 JDBC 드라이버까지 넣어버린건지.
아마 jar파일 하나 보내서 만사형통하리란 망상에서 저지른 삽질이겠지요.
해당 프로젝트 기간동안 델파이, Java, JSP, ASP에 XSLT까지 동시에 개발을 한다고..
자바 소스 코드를 델파이 신택스로 쳐넣고 왜 오류가 난건지 고민한건 암것도 아니지요.