2010-01-11 2 views
0

내 naivette를 용서하십시오 ... 아주 근본적인 질문 :근본적인 질문

나는 날짜가 현재 시스템 날짜와 일치하는 레코드를 가져 오는 cron 작업이있는 구글 애플 리케이션 엔진 프로젝트가 있습니다. 이 cron 작업은 0:00 (자정 12:00 자정)에 매일 실행됩니다. cron 작업은 이전 날과 일치하는 레코드를 가져 오는 것 같습니다. 무엇이 잘못 될 수 있습니까?

0:00시 시스템 날짜의 업데이트와 관련된 지연 사항이 있습니까? 나는 새벽 12시에 시스템 날짜를 얻는 칼이 새로운 날 날짜를 줄 것이라고 추정했다. 내가 잘못?

+1

이 점을 잊어 버렸습니다. 어떤면에서 중요한 경우 ... cron 작업이 0:00 인도 표준시 (예 : 아시아/콜카타)에서 실행되도록 구성되었습니다. – Aadith

답변

4

표준 시간대 ... 시스템이 UTC 또는 적어도 예상 시간대 이외의 다른 표준에서 작동 중일 수 있습니다.

+0

실제로 Andrew가 사용합니다. UTC ... 내가 그것을 사용하기 전에 내가 시간을 조정해야 할 것을 알게되었습니다. 감사합니다. – Aadith

2

는이처럼 cron.yaml 파일을 구성해야합니다

- description: midnight task 
    url: /path/to/task 
    schedule: every day 00:00 
    timezone: Asia/Kolkata 

docs를 참조하십시오.

문제는 date-time values are stored as and returned using the UTC time zone이며 변경할 수 없습니다. 기록을 갱신 할 때 이것을 취급해야합니다. 자세한 정보는 herehere입니다.

+0

감사합니다 .. 그런데 .. 나는 두 개의 분리 된 int 필드를 가지고 있습니다 ... 하나 날짜와 한 달 중 하나 (나는 단지 그 두 가지만 필요합니다) – Aadith

+0

내 cron.xml의 구성은 위에서 언급 한 것과 정확히 동일합니다. – Aadith

+0

@Aadith : 날짜를 정수로 저장하더라도 먼저 시간대를 datetime으로 변환하고 나중에 int로 변환하십시오. 그렇지 않으면 날짜가 UTC 시간대에 따라 저장됩니다. – jbochi

관련 문제