묻고답하기
extra_vars 데이터 삭제 문제
2014.05.16 19:30
안녕하세요.
게시판 스킨을 만들다가 XE 버그로 보이는 문제를 발견해서 질문 올립니다.
문제를 간단히 요약하면..
등록된 게시물 수정 화면에서 기존에 첨부된 파일을 하나 이상 삭제하고 저장하지 않고 다른 메뉴로 이동하면 xe_document_extra_vars 테이블의 해당 문서와 연결된 모든 데이터가 삭제됩니다.
이 문제는 XE 게시판 기본스킨에서도 발생하는 문제이며, 아주 간단히 재현이 되네요.
xe_document_extra_vars 테이블의 데이터가 삭제되는 시점은 첨부파일 삭제가 완료되는 시점으로 보입니다.
첨부파일 삭제만 하고 바로 테이블 쿼리해보면 이미 데이터가 없습니다.
소스를 좀 뒤져보니까..
기존 첨부파일이 삭제되었으니 도큐먼트의 첨부파일 개수를 업데이트 하는 부분이 있던데요..
단순히 첨부파일 개수 하나만을 업데이트 하기 위해서 좀 복잡한 로직을 거쳐 도큐먼트 관련 데이터를 통채로 갈아치우게 되어 있는 것 같은데.. 이 부분에서 문제가 있는게 아닐까 합니다.
직접 파고들어서 수정을 해보려다가...
좀 심각한 버그이고, 저만 발견한 문제가 아닐꺼라는 생각이 들어서 검색을 해봤는데..
의외로 찾아지는 내용이 없군요..
이런 문제가 아직까지 이슈가 되지 않았을 리가 없다고 생각되는데요 ㅠㅠ
혹시 같은 경험을 해보신 분이 계시면 해결 방법에 대한 조언을 부탁 드립니다.
감사합니다.
- [2010/08/10] 묻고답하기 회원정보의 확장변수를 외부 php 에서 표시방법
- [2008/02/02] 묻고답하기 위젯에서 가입폼 확장 변수 값을 사용하려면?
댓글 2
-
sejin7940
2014.05.16 22:49
-
섹쉬올빼미
2014.05.16 23:45
답변 감사합니다. 역시 달인이 계셨네요 *^^*
올려주신 해결방법을 읽어보았는데.. 2번 방법을 적용하는 쪽에 한표 던집니다.
저도 소스 까보면서 좀 이상했거든요..
단지 Count를 하나 줄이기 위해서 상당히 비효율적인 호출을 하는 것으로 보였습니다.
다음 버전에는 패치되서 나오면 좋겠습니다.
신속하게 분석해서 해결방안까지 올려주시고..
다시한번 감사 드립니다.
전혀 모르고 있었네요 ^^;; 꽤 심각한 버그인듯해서 (알아채기도 어려운..)
해당 문제 해결해서, XE Core 에 등록해뒀습니다
수정방법은...
http://sejin7940.co.kr/index.php?mid=xe_tips&document_srl=99534 글이나
https://github.com/xpressengine/xe-core/issues/722 글을 참고하시면 됩니다.
기재된 글의 해결방법 #1 로 하셔도 되고, 해결방법 #2 로 하셔도 둘다 해결됩니다.