에러 조사 및 수정
이번주가 프로젝트 마지막이다. 어제 고객의 실제 데이터를 넣고 전 배치를 실행하여 몇몇 군데에 에러가 일어났다. 일단 heap memory초과 이 에러는 PL님께서 메모리양을 늘려 해결하셨다.
sql에러. select할때 문제는 절대 아니기에 insert라고 생각했다. 역시 값에 작은따움표가 들어간곳이 있었다. sql-server에서는 작은따움표안에는 특수문자든 뭐든 다 문자로 인식해주기 때문에 작은따움표 한개를 두개로 replace시켜줬다. (개인적으로는 바인드 변수를 쓰면 해결가능하다 생각하지만 시간이 너무 없어 임시방편으로 해놨다)
다음이 에러가 출력이 안되는 부분이 있었다. try catch로 안감싸진 부분에서 난 에러같은데, 이 부분에서는 배치 전체를 try catch로 감싸는 처리를 해주었다. 한 배치가 아닌 전 배치가 대상이다. 가장 바깥쪽 예외처리이므로 exception을 해주었고, 배치 자체에 에러 유무가 목적이기 때문에, throw는 해주지 않았다. (혹시 try catch에 안들어가 있는 처리가 있을 지도 모르기 때문에 보험같은거다.)
업데이트 날짜 설정이 안되어있는곳이 있어, 그 부분은 localtime으로 다른 배치처리에 있는 처리를 그대로 붙여넣기~
에러는 아니지만 신경쓰이는 부분이 있다. 매핑하는 부분인데, 이때 두개의 클래스 객체를 가지고 ModelMapper로 복사하는 부분이 있다. 내가 볼때는 굳이 복사해서 값을 재할당할 필요가 없어보이는데 이 곳에서 처리가 느려져 시간이 굉장히 오래걸린다. 로컬에서는 복사하는데 2초정도가 걸리는데 레코드수가 2만개정도 되니까. 따지면 4만초가 되는거다. AWS에서는 훨씬 속도가 빠르지만 0.1초라도 2000초는 낭비하기 때문에, 굳이 필요하지 않다면 지우려한다. 오늘 사수가 쉬는날이라 내일 물어볼 생각이다.
조사가있었구먼