마스터DB와 슬레이브DB의 ip를 다르게 하는 경우 일부 모듈에서 에러가 발생합니다.
마스트에 데이터를 입력하고 다른 function에서 select를 하는 경우 데이터를 가져오지 못하는 경우가 있습니다.
예를 들어서 ./modules/resource/resource.controller.php 의 procResourceAttachFile()에 다음과 같은 구문이 있습니다.
$output = executeQuery('resource.getItemByItemSrl', $args);
$item = $output->data;
if(!$item) return new Object(-1,'msg_invalid_request');
이경우 자료를 입력하면 잘못된 요청이라고 나옵니다.
procResourceAttachOneTime()
procResourceAttach()에서 이미 자료는 입력되어있지만 슬레이브에서 select하는 경우 자료가 선택되지 않으니 에러가 발생합니다.
중요한 부분이 아니라서 해당부분은 주석처리하고 사용하고 있기는 합니다만 다른 모듈에서도 충분히 발생할 수 있는 문제라고 생각됩니다.
따라서 장기적으로는
executeQuery($query_id, $args = NULL, $arg_columns = NULL)를
executeQuery($query_id, $args = NULL, $arg_columns = NULL, $type = NULL) 식으로 마스터에서 읽어올수 있게 하능 방법이 필요할 듯합니다.
마스터DB와 슬레이브DB의 ip를 다르게 하는 경우 일부 모듈에서 에러가 발생합니다.
마스트에 데이터를 입력하고 다른 function에서 select를 하는 경우 데이터를 가져오지 못하는 경우가 있습니다.
예를 들어서 ./modules/resource/resource.controller.php 의 procResourceAttachFile()에 다음과 같은 구문이 있습니다.
$output = executeQuery('resource.getItemByItemSrl', $args);
이경우 자료를 입력하면 잘못된 요청이라고 나옵니다.
procResourceAttachOneTime()
procResourceAttach()에서 이미 자료는 입력되어있지만 슬레이브에서 select하는 경우 자료가 선택되지 않으니 에러가 발생합니다.
중요한 부분이 아니라서 해당부분은 주석처리하고 사용하고 있기는 합니다만 다른 모듈에서도 충분히 발생할 수 있는 문제라고 생각됩니다.
따라서 장기적으로는
executeQuery($query_id, $args = NULL, $arg_columns = NULL)를
executeQuery($query_id, $args = NULL, $arg_columns = NULL, $type = NULL) 식으로 마스터에서 읽어올수 있게 하능 방법이 필요할 듯합니다.