From b1e3b9f570c04100f73f63ceaff6ab07f938476a Mon Sep 17 00:00:00 2001 From: Eric Wong Date: Sun, 11 Dec 2011 22:03:09 +0000 Subject: examples/stale_fid_checker: --help + fail on older versions each_fids was too buggy and likely to yield false positives --- examples/stale_fid_checker.rb | 21 ++++++++++++++++++++- 1 file changed, 20 insertions(+), 1 deletion(-) diff --git a/examples/stale_fid_checker.rb b/examples/stale_fid_checker.rb index 77cb23d..2dab866 100644 --- a/examples/stale_fid_checker.rb +++ b/examples/stale_fid_checker.rb @@ -4,25 +4,38 @@ # * Ruby 1.9.2+ # * upstream MogileFS::Server 2.45 or later $stdout.sync = $stderr.sync = true +usage = < trackers) NHP = Net::HTTP::Persistent.new(File.basename($0)) +client = MogileFS::MogileFS.new(:hosts => trackers, :domain => "none") def start_perdev_thread(pfx) todo = Queue.new @@ -82,6 +95,12 @@ adm.each_fid do |fid| dev_map.each_value { |done| check(bad, curfid, done.shift) } next if bad.empty? + begin + info = client.file_debug(curfid) + abort "BUG: #{info.inspect} found!" if info["fid_dkey"] + rescue MogileFS::Backend::UnknownFidError + end + puts bad.join end end -- cgit v1.2.3-24-ge0c7