드루팔의 CRON이 실행 타임아웃 Execute Timeout 에 완료되지 못할 경우

댓글

4 comments posted
만일 PHP 소스 코드

만일 PHP 소스 코드 자체를 수정한다면 이런 방법도 있다.
set_time_limit(0);

Posted by palpal on 목, 2009-03-26 15:01
cron.php 에만 적용하면

cron.php 에만 적용하면 될 것 같아요.
set_time_limit(360); // 6분 정도. 시간이 긴 편입니다.

Posted by 익명 on 일, 2009-12-27 23:10
Backup and Migrate 모듈도

Backup and Migrate 모듈도 간혹 애를 먹입니다.
디비의 백업량이 많아지만 이 모듈의 크론이 시간이 모자라
위 에러 현상이 나타나곤 합니다.

특히 이런 에러도 요 녀석이 유발하죠.
Attempting to re-run cron while it is already running.
정기 작업이 이미 진행 중인데 다시 시작하려고 시도했습니다.

잘 보면 search 모듈을 활성화/인덱싱 걸었는데,
이 관련 테이블이 참 크지요. 그런 경우
Backup and Migrate 모듈의 환경설정에서
백업 예외로 설정하면 됩니다.
검색 인덱싱은 재생 가능하니 백업할 필요 없지요.

Posted by 익명 on 일, 2009-12-27 23:14
크론 관련 미실행

크론 관련 미실행 해법으로 이런 방법도 있습니다.

1. 드루팔 DB의 테이블 중 variable 에 있는,
cron_last 와 cron_semaphore 를 삭제하세요.
이 둘은 삭제해도 다시 자동생성되니 걱정마시고.

쿼리로 만들면 다음과 같습니다.
DELETE FROM `variable` WHERE CONVERT( `variable`.`name` USING utf8 ) = 'cron_last' LIMIT 1 ;
DELETE FROM `variable` WHERE CONVERT( `variable`.`name` USING utf8 ) = 'cron_semaphore' LIMIT 1 ;

2. 그런 다음, 캐쉬란 캐쉬는 다 지우세요.
administration menu 검정 상단 메뉴에 있는 Flush all caches를 추천합니다.

3. 그리고, 다시 한번 더 수동으로 cron을 시켜보세요.
지금껏 밀려있던 크론이 작동하면서 오랜 시간 모래시계가 보일 겁니다.
그러면 문제가 해소된 겁니다.

* 참고 주소
http://drupal.org/node/160652
http://drupal.org/node/123269

Posted by 익명 on 월, 2009-12-28 00:47