Project

General

Profile

Bug #15177

起動した後にTZを変更するとTime#utcがずれることがある

Added by znz (Kazuhiro NISHIYAMA) about 1 year ago. Updated 6 days ago.

Status:
Feedback
Priority:
Normal
Assignee:
-
Target version:
-
ruby -v:
ruby 2.5.1p57 (2018-03-29 revision 63029) [x86_64-linux]
[ruby-dev:50642]

Description

起動時に TZright/Asia/Tokyo にしていると Time#utc でローカルタイムと同じ時分秒になりますが、 TZ=Asia/Tokyo で起動してから ENV['TZ']='right/Asia/Tokyo' で変更すると Time#utc の結果がうるう秒のぶんだけずれます。

$ TZ=Asia/Tokyo ruby -ve "ENV['TZ']='right/Asia/Tokyo';t=Time.at(2<<30);p t;p t.utc"
ruby 2.5.1p57 (2018-03-29 revision 63029) [x86_64-linux]
2038-01-19 12:13:41 +0900
2038-01-19 03:14:08 UTC
$ TZ=right/Asia/Tokyo ruby -ve "t=Time.at(2<<30);p t;p t.utc"
ruby 2.5.1p57 (2018-03-29 revision 63029) [x86_64-linux]
2038-01-19 12:13:41 +0900
2038-01-19 03:13:41 UTC
% TZ=Asia/Tokyo ruby -ve "t=Time.at(2<<30);p t;p t.utc"
ruby 2.5.1p57 (2018-03-29 revision 63029) [x86_64-linux]
2038-01-19 12:14:08 +0900
2038-01-19 03:14:08 UTC

History

Updated by naruse (Yui NARUSE) about 1 year ago

その辺最近いじったのでtrunkの動作が期待通りか試して頂けますか

Updated by znz (Kazuhiro NISHIYAMA) about 1 year ago

trunk でも同じでした。
期待している値としては t と t.utc で同じ分秒になることですが、13:41と14:08のどちらが良いかは特に意見がありません。

% TZ=Asia/Tokyo ruby -ve "ENV['TZ']='right/Asia/Tokyo';t=Time.at(2<<30);p t;p t.utc"
ruby 2.6.0dev (2018-10-09 trunk 64976) [x86_64-linux]
2038-01-19 12:13:41 +0900
2038-01-19 03:14:08 UTC

Updated by naruse (Yui NARUSE) about 1 year ago

あれ、あぁ、そうか、r63848でいじったときにはまぁいいかと思ったんでした……。
期待は分かりますがright/と非right/を混ぜて使うのが実用的な用途とは思えないのであんまり…って感じですね…

Updated by nobu (Nobuyoshi Nakada) about 1 year ago

なぜかminirubyだと一致するようです。

$ TZ=Asia/Tokyo ./bin/ruby -ve "ENV['TZ']='right/Asia/Tokyo';t=Time.at(2<<30);p t;p t.utc"
ruby 2.5.2p91 (2018-10-01 revision 64893) [x86_64-linux]
2038-01-19 12:13:41 +0900
2038-01-19 03:14:08 UTC
$ TZ=Asia/Tokyo ./miniruby -ve "ENV['TZ']='right/Asia/Tokyo';t=Time.at(2<<30);p t;p t.utc"
ruby 2.5.2p91 (2018-10-01 revision 64893) [x86_64-linux]
2038-01-19 12:13:41 +0900
2038-01-19 03:13:41 UTC
#5

Updated by naruse (Yui NARUSE) 6 days ago

  • Status changed from Open to Feedback

Also available in: Atom PDF