포럼

XE 1.5.1.7에서 XE 1.5.1.11로 업데이트를 했는데,

이후 조회수가 업데이트가 제대로 안되네요.─.─);


조회수 업데이트에 딜레이가 생기는 것 같은데,

웃기는게 관리자 페이지 가서 캐쉬파일재생성 하면 업데이트가 됩니다.


아니면 일정시간(1분~3분 정도) 지나면 조회수가 업데이트가 될 때가 있고,

안될 때가 있고 그러네요...─..─);


XE 1.5.1.7까지는 게시판 DX 사용했다가,

XE 1.5.1.11로 업데이트하면서 그냥 기본 board 모듈에 SketchBook5 스킨 사용하고 있습니다.


공식 스킨 사용해도 같은 증상이라서 스킨 문제는 아닌 것 같고,

게시판 DX 사용했다가 board 모듈로 변경해서 생긴 문제도 아닌 것 같습니다.

(XE 1.5.1.11 업데이트한 이후에 게시판DX로 테스트를 해봤는데, 같은 증상이네요.;;)


참고로, PHP APC 적용중입니다.


증상 확인은 아래를 클릭해서 테스트 해 보시면 됩니다.


http://videogamerx.gamedonga.co.kr/xe_test


ps) document.controller.php 는 조회할 때마다 조회수가 업데이트되게 수정해서 사용중입니다.

아래 수정된 소스 때문에 그런가 해서 원소스 사용해 봐도 마찬가지고,

게시물을 추천해도 조회수와 마찬가지로 추천수도 1~3분 정도, 아니면 캐쉬파일 재생성해야 업데이트 됩니다.


서버 설정은 XE 1.5.1.7에서 XE 1.5.1.11 업데이트하면서 변경된 부분은 없습니다.


/**
     * @brief Update read counts of the document
     **/
    function updateReadedCount(&$oDocument) {
        $document_srl = $oDocument->document_srl;
        $member_srl = $oDocument->get('member_srl');
        $logged_info = Context::get('logged_info');
        // Call a trigger when the read count is updated (after)
        $output = ModuleHandler::triggerCall('document.updateReadedCount', 'after', $oDocument);
        if(!$output->toBool()) return $output;
        // Pass if read count is increaded on the session information
        /*if($_SESSION['readed_document'][$document_srl]) return false;

        // Pass if the author's IP address is as same as visitor's.
        if($oDocument->get('ipaddress') == $_SERVER['REMOTE_ADDR']) {
            $_SESSION['readed_document'][$document_srl] = true;
            return false;
        }*/
        // Pass ater registering sesscion if the author is a member and has same information as the currently logged-in user.
        /*if($member_srl && $logged_info->member_srl == $member_srl) {
            $_SESSION['readed_document'][$document_srl] = true;
            return false;
        }*/
        // Update read counts
        $args->document_srl = $document_srl;
        $output = executeQuery('document.updateReadedCount', $args);
        // Register session
        $_SESSION['readed_document'][$document_srl] = true;
    }