From 7c488a1798123f5975d4e617073fa4c7210549cf Mon Sep 17 00:00:00 2001 From: daigo Date: Tue, 3 Aug 2010 21:31:52 +0900 Subject: [PATCH] Added building blocks to test an issue where mtime of log files is earlier that system time. --- changelog | 7 +++++++ sample/check_file.rb | 21 +++++++++++++++++++++ sample/check_time.rb | 8 ++++++++ sample/check_time2.rb | 8 ++++++++ sample/test_time.rb | 29 +++++++++++++++++++++++++++++ 5 files changed, 73 insertions(+) create mode 100644 sample/check_file.rb create mode 100644 sample/check_time.rb create mode 100644 sample/check_time2.rb create mode 100644 sample/test_time.rb diff --git a/changelog b/changelog index 2af9b67..0a39bad 100644 --- a/changelog +++ b/changelog @@ -1,3 +1,10 @@ +2010-08-03 Daigo Moriwaki + + * [shogi-server] + - sample/{check_file.rb,check_time.rb,check_time2.rb,test_time.rb} + Added new files to test an issue where mtime of log files was + earlier than system time. + 2010-07-25 Daigo Moriwaki * [shogi-server] diff --git a/sample/check_file.rb b/sample/check_file.rb new file mode 100644 index 0000000..d958a68 --- /dev/null +++ b/sample/check_file.rb @@ -0,0 +1,21 @@ +fname = File.join("/", "tmp", "test.txt") +if File.exist?(fname) + File.rename(fname, fname+".rename") +end + +10000.times do + time = Time.now + File.new(fname, File::CREAT) + mtime = File.stat(fname).mtime + if mtime.to_i < time.to_i + date = `/bin/date -R` + p time + p mtime + p date + puts "time: %d.%d" % [time.sec, time.usec] + puts "mtime: %d.%d" % [mtime.sec, mtime.usec] + exit 1 + end + File.delete fname +end + diff --git a/sample/check_time.rb b/sample/check_time.rb new file mode 100644 index 0000000..a35c4c0 --- /dev/null +++ b/sample/check_time.rb @@ -0,0 +1,8 @@ +100000.times do + now1=Time.now + now2=Time.now + if ((now2-now1)<0) + puts "now1: %d.%d" % [now1.sec, now1.usec] + puts "now2: %d.%d" % [now2.sec, now1.usec] + end +end diff --git a/sample/check_time2.rb b/sample/check_time2.rb new file mode 100644 index 0000000..5f412a3 --- /dev/null +++ b/sample/check_time2.rb @@ -0,0 +1,8 @@ +10000.times do + t1 = Time.mktime(2010,7,27) + t2 = Time.mktime(2010,7,26,23,59,59,0.999999) + + unless (t1-t2) > 0 + puts "WHY?" + end +end diff --git a/sample/test_time.rb b/sample/test_time.rb new file mode 100644 index 0000000..bc566bb --- /dev/null +++ b/sample/test_time.rb @@ -0,0 +1,29 @@ +require 'time' + +class Time + + @@offset = Time.now - Time.mktime(Time.now.year, Time.now.month, Time.now.day+1) + 10 + class << self + alias :orig_now :now + def now + return orig_now - @@offset + end + end + +# def initialize +# super +#=begin +# if @@offset == 0 +# current = Time.orig_now +# @@offset = current - Time.mk_time(current.year, current.month, current.day) +# end +#=end +# end + +end + +if $0 == __FILE__ + puts Time.now + sleep 1 + puts Time.now +end -- 2.11.0