Ruby mogilefs-client dev/users discussion/patches/bugs/help/...
 help / color / mirror / code / Atom feed
Search results ordered by [date|relevance]  view[summary|nested|Atom feed]
thread overview below | download mbox.gz: |
* [ANN] mogilefs-client 3.10.0 - MogileFS client library for Ruby
@ 2016-08-31  7:43  5% Eric Wong
  0 siblings, 0 replies; 3+ results
From: Eric Wong @ 2016-08-31  7:43 UTC (permalink / raw)
  To: ruby-talk, mogile; +Cc: mogilefs-client-public

A MogileFS client library for Ruby.  MogileFS is an open source
distributed filesystem, see: http://mogilefs.org for more details.  This
library allows any Ruby application to read, write and delete files in a
MogileFS instance.

Changes:

    Ruby mogilefs-client 3.10.0

    A bunch of minor tweaks to reduce garbage and exceptions.

    In addition to the existing :timeout and :fail_timeout options,
    there is a new :connect_timeout directive for all connection
    classes which only controls the time spent waiting for a TCP
    connection.  This defaults to the same value as the existing
    :timeout option (3 seconds); but users are advised to lower
    it to match ideal network conditions.

    For users of Ruby 2.3+, this release takes advantage of
    exception-less Socket#connect_nonblock using "exception: false".
    Users of Ruby 2.1+ will also benefit from "exception: false"
    usage for read_nonblock and write_nonblock calls.
    kgio is no longer be useful with this release with Ruby 2.3+

    This release also fixes a Ruby 1.8.7 compatibility bug for
    non-kgio users.  However, this may be the last 1.8.7-compatible
    release.  Fwiw, I wanted to remove Ruby 1.8 support around 5
    years ago but several users were against it.   Maybe nobody will
    complain, this time...

    18 changes since 3.9.0:

          doc: avoid inadvertantly documenting the Process class
          admin: simplify utilization conversion
          more idiomatic comparisons with constants
          bigfile/filter: only update MD5 if non-nil
          bigfile: lazily require bigfile/filter
          backend: simplify regexp
          .olddoc.yml: add NNTP and mailing list archive URL
          minor garbage reductions for newer Rubies
          socket/pure_ruby: fix Ruby 1.8 compatibility
          socket/pure_ruby: use `:exception=>false' on Ruby 2.1+
          test_fresh: do not delete non-existent domain
          admin: map unset reject_bad_md5 field to nil
          socket/pure_ruby: connect with "exception:false" on Ruby 2.3+
          implement :connect_timeout option
          add .gitattributes for Ruby method detection
          README: stop mentioning cgit
          connect_timeout: match :timeout if unset
          pkg.mk: use --local option for gem installation

rdoc :: http://bogomips.org/mogilefs-client/
list :: mogilefs-client-public@bogomips.org
list-cc :: mogile@googlegroups.com
list-archive :: http://bogomips.org/mogilefs-client-public/
git clone git://bogomips.org/mogilefs-client.git
nntp://news.public-inbox.org/inbox.comp.file-systems.mogilefs.ruby

^ permalink raw reply	[relevance 5%]

* [PATCH 2/6] admin: map unset reject_bad_md5 field to nil
  2016-08-31  2:50  5% [PATCH 0/6] misc fixes and features Eric Wong
@ 2016-08-31  2:50  7% ` Eric Wong
  0 siblings, 0 replies; 3+ results
From: Eric Wong @ 2016-08-31  2:50 UTC (permalink / raw)
  To: mogilefs-client-public

The 'reject_bad_md5' field may be of an unknown value
before the monitor is ready, so prepare for it and map
it to 'nil' instead of an empty string.  This hopefully
makes the Ruby API more Ruby-ish.
---
 lib/mogilefs/admin.rb | 2 ++
 test/fresh.rb         | 2 +-
 2 files changed, 3 insertions(+), 1 deletion(-)

diff --git a/lib/mogilefs/admin.rb b/lib/mogilefs/admin.rb
index 289dea6..96a7898 100644
--- a/lib/mogilefs/admin.rb
+++ b/lib/mogilefs/admin.rb
@@ -82,6 +82,8 @@ def get_devices(devid = nil)
         row["reject_bad_md5"] = true
       when "0"
         row["reject_bad_md5"] = false
+      when ""
+        row["reject_bad_md5"] = nil
       end
     end
   end
diff --git a/test/fresh.rb b/test/fresh.rb
index 8d452c7..4c53ac2 100644
--- a/test/fresh.rb
+++ b/test/fresh.rb
@@ -82,7 +82,7 @@ def add_host_device_domain
     # MogileFS::Server 2.60+ shows reject_bad_md5 monitor status
     dev = @admin.get_devices[0]
     if dev.include?("reject_bad_md5")
-      assert [true, false].include?(dev["reject_bad_md5"])
+      assert [true, false, nil].include?(dev["reject_bad_md5"]), dev.inspect
     end
 
     out = err = nil
-- 
EW


^ permalink raw reply related	[relevance 7%]

* [PATCH 0/6] misc fixes and features
@ 2016-08-31  2:50  5% Eric Wong
  2016-08-31  2:50  7% ` [PATCH 2/6] admin: map unset reject_bad_md5 field to nil Eric Wong
  0 siblings, 1 reply; 3+ results
From: Eric Wong @ 2016-08-31  2:50 UTC (permalink / raw)
  To: mogilefs-client-public

I mainly wanted to implement :connect_timeout, but ended up with
a bunch of other small improvements along the way.  Will release
soon since it's been a while.

Eric Wong (6):
  test_fresh: do not delete non-existent domain
  admin: map unset reject_bad_md5 field to nil
  socket/pure_ruby: connect with "exception:false" on Ruby 2.3+
  implement :connect_timeout option
  add .gitattributes for Ruby method detection
  README: stop mentioning cgit

 .gitattributes                   |  4 ++++
 README                           |  2 +-
 lib/mogilefs/admin.rb            |  2 ++
 lib/mogilefs/backend.rb          |  3 ++-
 lib/mogilefs/client.rb           |  4 +++-
 lib/mogilefs/mogilefs.rb         |  4 ++++
 lib/mogilefs/socket/pure_ruby.rb | 20 ++++++++++++++------
 test/fresh.rb                    |  2 +-
 test/test_fresh.rb               |  2 +-
 9 files changed, 32 insertions(+), 11 deletions(-)
 create mode 100644 .gitattributes

-- 
EW

^ permalink raw reply	[relevance 5%]

Results 1-3 of 3 | reverse | options above
-- pct% links below jump to the message on this page, permalinks otherwise --
2016-08-31  2:50  5% [PATCH 0/6] misc fixes and features Eric Wong
2016-08-31  2:50  7% ` [PATCH 2/6] admin: map unset reject_bad_md5 field to nil Eric Wong
2016-08-31  7:43  5% [ANN] mogilefs-client 3.10.0 - MogileFS client library for Ruby Eric Wong

Code repositories for project(s) associated with this public inbox

	https://yhbt.net/mogilefs-client.git/

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).