]> git.apps.os.sepia.ceph.com Git - ceph.git/log
ceph.git
16 years agoosd: track both up and acting sets in PG, PG::Interval
Sage Weil [Thu, 6 Aug 2009 20:02:53 +0000 (13:02 -0700)]
osd: track both up and acting sets in PG, PG::Interval

16 years agoosd: decode old maps
Sage Weil [Fri, 7 Aug 2009 22:18:11 +0000 (15:18 -0700)]
osd: decode old maps

16 years agoosdmap: add pg_temp mapping
Sage Weil [Thu, 6 Aug 2009 19:40:26 +0000 (12:40 -0700)]
osdmap: add pg_temp mapping

16 years agoHadoop: Added setTimes to CephFileSystem and CephFSInterface.
Greg Farnum [Fri, 7 Aug 2009 22:54:33 +0000 (15:54 -0700)]
Hadoop: Added setTimes to CephFileSystem and CephFSInterface.

16 years agoHadoop: Cleanup for readability;
Greg Farnum [Fri, 7 Aug 2009 22:48:30 +0000 (15:48 -0700)]
Hadoop: Cleanup for readability;
removed warnings by typing a Vector.

16 years agoHadoop: CephFSInterface cleanup:
Greg Farnum [Fri, 7 Aug 2009 20:21:34 +0000 (13:21 -0700)]
Hadoop: CephFSInterface cleanup:
better error catching on JNI function use;
removed a few unused functions;
now takes advantage of implicit typecasting for clearer code
(no more manually creating j_ints and storing results to make a 1-line
function into 3+ lines; no more if statements returning JNI_TRUE/FALSE);
modified the getDir function as it wasn't very robust
about checking for . and .. entries and the Java code does that;
modified the Java code listPaths as it wasn't necessarily filling
the array and didn't compact it!

16 years agoHadoop: Added in initialization checks and
Greg Farnum [Fri, 7 Aug 2009 04:49:50 +0000 (21:49 -0700)]
Hadoop: Added in initialization checks and
limited use of Progressables.

16 years agoHadoop: Changed back to isDirectory as that
Greg Farnum [Fri, 7 Aug 2009 00:55:15 +0000 (17:55 -0700)]
Hadoop: Changed back to isDirectory as that
method was un-deprecated.

16 years agoHadoop: Throws IOException -> return null; interface requirement.
Greg Farnum [Thu, 6 Aug 2009 23:29:50 +0000 (16:29 -0700)]
Hadoop: Throws IOException -> return null; interface requirement.
setReplicationRaw is an old method name, and it doesn't need to be overridden.
getReplication was deprecated and no longer exists.

16 years agoradosgw: static linkage
Yehuda Sadeh [Fri, 7 Aug 2009 18:35:08 +0000 (11:35 -0700)]
radosgw: static linkage

16 years agoradosgw: rename symbols, use generic name for rgw
Yehuda Sadeh [Fri, 7 Aug 2009 17:46:29 +0000 (10:46 -0700)]
radosgw: rename symbols, use generic name for rgw

16 years agoradosgw: rename files to use the generic name
Yehuda Sadeh [Fri, 7 Aug 2009 17:26:07 +0000 (10:26 -0700)]
radosgw: rename files to use the generic name

16 years agoMerge commit 'origin/unstable' into rados
Yehuda Sadeh [Fri, 7 Aug 2009 15:50:05 +0000 (08:50 -0700)]
Merge commit 'origin/unstable' into rados

Conflicts:

src/Makefile.am

16 years agotodo
Sage Weil [Wed, 5 Aug 2009 22:57:11 +0000 (15:57 -0700)]
todo

16 years agodebian: fix typo in build script
Sage Weil [Wed, 5 Aug 2009 22:42:15 +0000 (15:42 -0700)]
debian: fix typo in build script

16 years agoHadoop: libhadoopcephfs now links against libceph
Greg Farnum [Thu, 6 Aug 2009 23:04:25 +0000 (16:04 -0700)]
Hadoop: libhadoopcephfs now links against libceph
rather than incorporating it; the Java code accounts for this and
loads based on a configuration setting -- no more worries
about java.library.path.

16 years agouClient: now cleans up open files on shutdown.
Greg Farnum [Thu, 6 Aug 2009 22:28:00 +0000 (15:28 -0700)]
uClient: now cleans up open files on shutdown.
Doesn't crash on a failed assert!

16 years agoHadoop: Implements getFileBlockLocations;
Greg Farnum [Thu, 6 Aug 2009 22:06:19 +0000 (15:06 -0700)]
Hadoop: Implements getFileBlockLocations;
adds ceph_close to CephFileSystem.

16 years agouClient/libceph: initial implementation of get_file_stripe_address
Greg Farnum [Wed, 5 Aug 2009 23:51:49 +0000 (16:51 -0700)]
uClient/libceph: initial implementation of get_file_stripe_address

16 years agoHadoop: Makes use of newly-available replication reporting.
Greg Farnum [Wed, 5 Aug 2009 21:57:00 +0000 (14:57 -0700)]
Hadoop: Makes use of newly-available replication reporting.

16 years agouClient/libceph: implement get_file_replication
Greg Farnum [Wed, 5 Aug 2009 19:27:00 +0000 (12:27 -0700)]
uClient/libceph: implement get_file_replication
add it to libceph.

16 years agouClient: Change file data function names for clarity;
Greg Farnum [Tue, 4 Aug 2009 23:56:23 +0000 (16:56 -0700)]
uClient: Change file data function names for clarity;
add function stubs for Hadoop use.

16 years agoHadoop: time conversion between Ceph and Hadoop;
Greg Farnum [Tue, 4 Aug 2009 23:45:07 +0000 (16:45 -0700)]
Hadoop: time conversion between Ceph and Hadoop;
ditch filling in the uid/gid since it's meaningless.

16 years agouClient: fill_stat now fills times properly
Greg Farnum [Tue, 4 Aug 2009 22:00:40 +0000 (15:00 -0700)]
uClient: fill_stat now fills times properly

16 years agov0.12 v0.12
Sage Weil [Wed, 5 Aug 2009 21:12:00 +0000 (14:12 -0700)]
v0.12

16 years agoMakefile: add missing header to noinst_HEADERS
Sage Weil [Wed, 5 Aug 2009 21:11:17 +0000 (14:11 -0700)]
Makefile: add missing header to noinst_HEADERS

16 years agoMakefile: remove java hadoop _SOURCES dep
Sage Weil [Wed, 5 Aug 2009 21:09:59 +0000 (14:09 -0700)]
Makefile: remove java hadoop _SOURCES dep

16 years agoosdmap: kill unused/useless get_num_osds()
Sage Weil [Wed, 5 Aug 2009 18:41:45 +0000 (11:41 -0700)]
osdmap: kill unused/useless get_num_osds()

16 years agomds: show journal entry lengths in debug output
Sage Weil [Wed, 5 Aug 2009 18:40:05 +0000 (11:40 -0700)]
mds: show journal entry lengths in debug output

16 years agokclient: cleanup unused label
Sage Weil [Wed, 5 Aug 2009 18:38:42 +0000 (11:38 -0700)]
kclient: cleanup unused label

16 years agokclient: revamp fsync
Sage Weil [Wed, 5 Aug 2009 18:38:32 +0000 (11:38 -0700)]
kclient: revamp fsync

Be smarter about when we write back caps on fsync, and when we
wait.  Also, wait only for those caps to write back, not for all
caps to be clean, avoiding starvation.

16 years agomds: include mds # in table names
Sage Weil [Tue, 4 Aug 2009 23:41:36 +0000 (16:41 -0700)]
mds: include mds # in table names

Silly us, we were using the same object names for multiple mds's.
That doesn't work so well.

Renamed like so:

mdstable_snaptable   -> mds_snaptable
mdstable_inotable    -> mds0_inotable
sessionmap           -> mds0_sessionmap
mdstable_anchortable -> mds_anchortable

16 years agomds: wait for rejoin_gather_finish to complete before finishing
Sage Weil [Tue, 4 Aug 2009 23:08:32 +0000 (16:08 -0700)]
mds: wait for rejoin_gather_finish to complete before finishing

To do that we add ourselves to the rejoin_ack_gather.  Otherwise
we end up in up:active before we've even finished our
parallel_fetch or finished up our caps!

16 years agomds: set primary lock state to LOCK from strong replica when appropriate
Sage Weil [Tue, 4 Aug 2009 23:07:24 +0000 (16:07 -0700)]
mds: set primary lock state to LOCK from strong replica when appropriate

This is needed only because we identify_files_to_recover() before
sending the rejoin acks, and that may twiddle the lock state, so
we need to be in a compatible state.

16 years agoMakefile: reorg
Sage Weil [Tue, 4 Aug 2009 21:16:03 +0000 (14:16 -0700)]
Makefile: reorg

16 years agomds: fix lock state assert on sync->excl
Sage Weil [Tue, 4 Aug 2009 21:10:50 +0000 (14:10 -0700)]
mds: fix lock state assert on sync->excl

16 years agomds: set up root inode properly on replay
Sage Weil [Tue, 4 Aug 2009 21:10:33 +0000 (14:10 -0700)]
mds: set up root inode properly on replay

16 years agomds: fix reversed conditional on simplelock ->excl transition
Sage Weil [Tue, 4 Aug 2009 20:19:41 +0000 (13:19 -0700)]
mds: fix reversed conditional on simplelock ->excl transition

16 years agoMakefile: no fakefuse
Sage Weil [Tue, 4 Aug 2009 20:09:32 +0000 (13:09 -0700)]
Makefile: no fakefuse

16 years agopsim: calc stddev
Sage Weil [Tue, 4 Aug 2009 19:53:22 +0000 (12:53 -0700)]
psim: calc stddev

16 years agoosdmap: only use domains if ndom > 1
Sage Weil [Tue, 4 Aug 2009 19:52:43 +0000 (12:52 -0700)]
osdmap: only use domains if ndom > 1

16 years agocrush: fix grammar so we can recompile what we decompiled
Sage Weil [Tue, 4 Aug 2009 17:22:39 +0000 (10:22 -0700)]
crush: fix grammar so we can recompile what we decompiled

16 years agomds: start resolve with root as UNKNOWN (if it's not ours)
Sage Weil [Tue, 4 Aug 2009 04:34:15 +0000 (21:34 -0700)]
mds: start resolve with root as UNKNOWN (if it's not ours)

Anything that's not ours should be unknown, including the root dir frag,
which normally starts out as mds0.

If we leave it as 0, then when mds0 claims a subset of /, its bounds are
left as 0 as well instead of being set to unknown.  Which leads to
incorrect resolve stage results.

16 years agomds: fix typo (C_Locker_Eval crash)
Sage Weil [Tue, 4 Aug 2009 03:00:08 +0000 (20:00 -0700)]
mds: fix typo (C_Locker_Eval crash)

16 years agokclient: fix locking snafu in ESTALE handling
Sage Weil [Tue, 4 Aug 2009 00:29:39 +0000 (17:29 -0700)]
kclient: fix locking snafu in ESTALE handling

16 years agokclient: choose mds based on dentry parent, if needed
Sage Weil [Tue, 4 Aug 2009 00:28:03 +0000 (17:28 -0700)]
kclient: choose mds based on dentry parent, if needed

16 years agomds: adjust mds state asserts to include clientreplay
Sage Weil [Tue, 4 Aug 2009 00:19:49 +0000 (17:19 -0700)]
mds: adjust mds state asserts to include clientreplay

16 years agomds: twiddle missing locks on export
Sage Weil [Mon, 3 Aug 2009 23:46:20 +0000 (16:46 -0700)]
mds: twiddle missing locks on export

16 years agomds: open_root only after up:active
Sage Weil [Mon, 3 Aug 2009 21:25:35 +0000 (14:25 -0700)]
mds: open_root only after up:active

Otherwise our lock states get totally out of whack.

16 years agomds: issue caps on non-auth inodes
Sage Weil [Mon, 3 Aug 2009 21:25:16 +0000 (14:25 -0700)]
mds: issue caps on non-auth inodes

Not sure how that && is_auth() snuck in there.

16 years agokclient: use caps, fragtree only to choose mds (not hierarchy)
Sage Weil [Mon, 3 Aug 2009 18:39:27 +0000 (11:39 -0700)]
kclient: use caps, fragtree only to choose mds (not hierarchy)

Since we require caps for all inodes in our cache, no need to consider
parents when identifying where to sent a request.  Just look at fragtree
(for fragmented dirs) or caps.

16 years agokclient: remove stray ; in dout macro
Sage Weil [Mon, 3 Aug 2009 19:10:29 +0000 (12:10 -0700)]
kclient: remove stray ; in dout macro

16 years agoHadoop: Replaced some unclean file references.
Greg Farnum [Tue, 4 Aug 2009 21:34:17 +0000 (14:34 -0700)]
Hadoop: Replaced some unclean file references.
Hey cool, it can do a map-reduce now!

16 years agouClient: chmod now protects unchangeable bits.
Greg Farnum [Tue, 4 Aug 2009 21:11:59 +0000 (14:11 -0700)]
uClient: chmod now protects unchangeable bits.

16 years agouClient: _rename doesn't remove nodes from cache.
Greg Farnum [Tue, 4 Aug 2009 19:43:34 +0000 (12:43 -0700)]
uClient: _rename doesn't remove nodes from cache.
Sage says this is unnecessary.

16 years agoHadoop: Added a setPermissions method.
Greg Farnum [Tue, 4 Aug 2009 07:54:21 +0000 (00:54 -0700)]
Hadoop: Added a setPermissions method.

16 years agoHadoop: CephFSInterface cleans up memory better on errors.
Greg Farnum [Tue, 4 Aug 2009 07:18:49 +0000 (00:18 -0700)]
Hadoop: CephFSInterface cleans up memory better on errors.

16 years agoHadoop: Is much more careful with filepath sanitizing in BOTH directions.
Greg Farnum [Tue, 4 Aug 2009 01:38:05 +0000 (18:38 -0700)]
Hadoop: Is much more careful with filepath sanitizing in BOTH directions.
Also has a minor interface change allowing it to build in Hadoop .20

16 years agouClient: Unmounting now waits on mds_requests.
Greg Farnum [Tue, 4 Aug 2009 00:36:35 +0000 (17:36 -0700)]
uClient: Unmounting now waits on mds_requests.

16 years agoHadoop: All configuration is now done through Hadoop's config mechanism.
Greg Farnum [Fri, 31 Jul 2009 21:17:29 +0000 (14:17 -0700)]
Hadoop: All configuration is now done through Hadoop's config mechanism.

This includes debug on CephFileSystem/n, passing it to ceph's Client,
and the monitor address.

16 years agoHadoop: Now does a proper stat.
Greg Farnum [Fri, 31 Jul 2009 20:03:31 +0000 (13:03 -0700)]
Hadoop: Now does a proper stat.

16 years agokclient: less noisy about mds session timeouts
Sage Weil [Mon, 3 Aug 2009 16:37:50 +0000 (09:37 -0700)]
kclient: less noisy about mds session timeouts

In particular, we don't want to print this multiple times.  Use
state to note when session appears to be hung, and pr_info on
transitions.

16 years agomsgr: avoid closing fd twice
Sage Weil [Fri, 31 Jul 2009 22:45:18 +0000 (15:45 -0700)]
msgr: avoid closing fd twice

Set fd to -1 after so we don't close it again later.  Otherwise
we get EBADF in random other places and are unhappy.

16 years agotodo
Sage Weil [Fri, 31 Jul 2009 23:08:25 +0000 (16:08 -0700)]
todo

16 years agokclient: debug peer_reset thing
Sage Weil [Thu, 30 Jul 2009 22:39:41 +0000 (15:39 -0700)]
kclient: debug peer_reset thing

I saw ceph_peer_reset with a bad entity_name.. wtf.

16 years agokclient: maintain per-cap-bit tid map to fix pipelined cap updates
Sage Weil [Thu, 30 Jul 2009 22:08:44 +0000 (15:08 -0700)]
kclient: maintain per-cap-bit tid map to fix pipelined cap updates

We want to allow pipelined cap updates, like

 client->mds  writeback Fw 1
dirty FwAx
 client->mds  writeback FwAx 2
dirty Ax
 client->mds  writeback Ax 3
 mds->client  ack 1
 mds->client  ack 2
 mds->client  ack 3

We need to make sure that the Fw bit is only cleaned after ack 2,
and Ax after ack 3.  A single tid for the inode isn't sufficient,
since that would e.g. ignore ack 2... we need a tid per cap bit so
we can pipeline writeback of different caps.

Note that we can't simply write back dirty | flushing caps every
time, since the write may also be releasing the cap.  And it would
gum up the MDS locking.

Move the last_tid to the inode, and only pay attention to 16 bits
per cap bit.. that's 17*2 bytes, vs the old 16.  Could be worse.
An 8 bit tid is probably also sufficient (that's 256 pipelined
writes) if we're concerned about inode size down the road.

16 years agokclient: maintain list of flushing snaps; reflush after reconnect
Sage Weil [Wed, 29 Jul 2009 22:52:41 +0000 (15:52 -0700)]
kclient: maintain list of flushing snaps; reflush after reconnect

16 years agokclient: fix queue_cap_snap refs, calls in handle_snap
Sage Weil [Wed, 29 Jul 2009 22:51:54 +0000 (15:51 -0700)]
kclient: fix queue_cap_snap refs, calls in handle_snap

Call on correct ci.  Skip past dropping inodes without dropping
our spinlock.  Hold ref on prior inode until we traverse to the
next one.  (We can't iput while holding our spinlock.)

16 years agoHadoop: Moved ceph debug level set into Java code; disabled CephIOStream debugs.
Greg Farnum [Thu, 30 Jul 2009 21:39:02 +0000 (14:39 -0700)]
Hadoop: Moved ceph debug level set into Java code; disabled CephIOStream debugs.

16 years agouClient: Whoops! Made Inode get/put dout at a lower importance.
Greg Farnum [Thu, 30 Jul 2009 21:37:21 +0000 (14:37 -0700)]
uClient: Whoops! Made Inode get/put dout at a lower importance.

16 years agoHadoop: Much cleanup of methods.
Greg Farnum [Thu, 30 Jul 2009 20:20:00 +0000 (13:20 -0700)]
Hadoop: Much cleanup of methods.

Many no-longer-required methods are now private and renamed; overrides and deprecated methods are clearly marked and mostly justified.

16 years agoHadoop: This method no longer exists in the FileSystem API.
Greg Farnum [Thu, 30 Jul 2009 19:36:09 +0000 (12:36 -0700)]
Hadoop: This method no longer exists in the FileSystem API.

16 years agoHadoop: No good reason to overwrite these copy/move functions that I can see
Greg Farnum [Thu, 30 Jul 2009 19:35:27 +0000 (12:35 -0700)]
Hadoop: No good reason to overwrite these copy/move functions that I can see

16 years agoHadoop: Since Client is behaving, put back in the close.
Greg Farnum [Thu, 30 Jul 2009 19:33:25 +0000 (12:33 -0700)]
Hadoop: Since Client is behaving, put back in the close.

16 years agouclient: Fixes refcounting bug when you chdir to cwd.
Greg Farnum [Thu, 30 Jul 2009 19:18:15 +0000 (12:18 -0700)]
uclient: Fixes refcounting bug when you chdir to cwd.

16 years agoHadoop: More work with deprecated and inappropriately-overridden functions.
Greg Farnum [Thu, 30 Jul 2009 03:11:15 +0000 (20:11 -0700)]
Hadoop: More work with deprecated and inappropriately-overridden functions.

16 years agoHadoop: Removed deprecated functions
Greg Farnum [Thu, 30 Jul 2009 02:29:36 +0000 (19:29 -0700)]
Hadoop: Removed deprecated functions

16 years agoHadoop: moveFromLocalFile uses copyFromLocalFile; is more robust.
Greg Farnum [Thu, 30 Jul 2009 02:27:02 +0000 (19:27 -0700)]
Hadoop: moveFromLocalFile uses copyFromLocalFile; is more robust.

16 years agoHadoop: More debugging output changes.
Greg Farnum [Thu, 30 Jul 2009 00:01:54 +0000 (17:01 -0700)]
Hadoop: More debugging output changes.

16 years agoHadoop: getFileStatus behaves better with folders.
Greg Farnum [Wed, 29 Jul 2009 21:47:51 +0000 (14:47 -0700)]
Hadoop: getFileStatus behaves better with folders.

16 years agouclient: removed cout debug statement
Greg Farnum [Wed, 29 Jul 2009 21:23:21 +0000 (14:23 -0700)]
uclient: removed cout debug statement

16 years agokclient: don't croak on mds request will NULL r_request
Sage Weil [Thu, 30 Jul 2009 20:42:45 +0000 (13:42 -0700)]
kclient: don't croak on mds request will NULL r_request

16 years agomds: process session msgs during clientreplay
Sage Weil [Thu, 30 Jul 2009 20:37:52 +0000 (13:37 -0700)]
mds: process session msgs during clientreplay

16 years agomds: no need to take mds_lock in truncate callback
Sage Weil [Thu, 30 Jul 2009 20:00:49 +0000 (13:00 -0700)]
mds: no need to take mds_lock in truncate callback

It's already held when the Objecter message handler is called.

16 years agomds: defer caps msgs until clientreplay or active
Sage Weil [Thu, 30 Jul 2009 19:58:04 +0000 (12:58 -0700)]
mds: defer caps msgs until clientreplay or active

16 years agoosd: adjust debug output
Sage Weil [Wed, 29 Jul 2009 20:50:54 +0000 (13:50 -0700)]
osd: adjust debug output

16 years agomds: tolerate a missing directory object
Sage Weil [Wed, 29 Jul 2009 17:39:58 +0000 (10:39 -0700)]
mds: tolerate a missing directory object

Including error in log, mark dir complete.  Some metadata may
be missing!

16 years agokclient: release unused caps, but keep some reserve
Sage Weil [Wed, 29 Jul 2009 23:11:04 +0000 (16:11 -0700)]
kclient: release unused caps, but keep some reserve

Release unused caps.  Keep some reserve so we can do a readdir
(which reserves lots of caps) quickly, without reallocating a
zillion new caps.

16 years agokclient: nofail mode for osd writes
Sage Weil [Wed, 29 Jul 2009 20:28:23 +0000 (13:28 -0700)]
kclient: nofail mode for osd writes

If nofail is specified, allocate request from mempool, and do not
return error on message send failure.  Instead, mark the request,
and periodically retry.

This isn't perfect: we can still starve indefinitely trying to
send the write, but it'll do until we have a better way to reserve
resources for writeback messages.

16 years agokclient: use mempool for osd req in writeback paths
Sage Weil [Tue, 28 Jul 2009 20:01:49 +0000 (13:01 -0700)]
kclient: use mempool for osd req in writeback paths

Only in writeback path.  For reads and sync writes, avoid the
mempool.

16 years agoHadoop: Removed unnecessary reload of hadoopcephfs.
Greg Farnum [Wed, 29 Jul 2009 01:26:59 +0000 (18:26 -0700)]
Hadoop: Removed unnecessary reload of hadoopcephfs.

16 years agoHadoop: More debugging statements, converted to use a method we can flag off.
Greg Farnum [Wed, 29 Jul 2009 01:24:16 +0000 (18:24 -0700)]
Hadoop: More debugging statements, converted to use a method we can flag off.

16 years agolibceph: add a check in ceph_deinitialize to prevent badness on multiple calls.
Greg Farnum [Wed, 29 Jul 2009 01:22:00 +0000 (18:22 -0700)]
libceph: add a check in ceph_deinitialize to prevent badness on multiple calls.

16 years agouclient: getcwd fixes
Greg Farnum [Tue, 28 Jul 2009 18:45:15 +0000 (11:45 -0700)]
uclient: getcwd fixes

16 years agokclient: bug on back kmap
Sage Weil [Wed, 29 Jul 2009 00:02:22 +0000 (17:02 -0700)]
kclient: bug on back kmap

16 years agoosd: fail gracefully when problems reading /proc/loadavg
Sage Weil [Tue, 28 Jul 2009 21:44:48 +0000 (14:44 -0700)]
osd: fail gracefully when problems reading /proc/loadavg

16 years agoauth: compat with old struct
Sage Weil [Tue, 28 Jul 2009 18:31:43 +0000 (11:31 -0700)]
auth: compat with old struct

16 years agoinitscript: skip if auto start = no/false/0 and nothing or type specified
Sage Weil [Tue, 28 Jul 2009 18:18:17 +0000 (11:18 -0700)]
initscript: skip if auto start = no/false/0 and nothing or type specified

16 years agokclient: avoid overflow in mds reconnect msg size calc
Sage Weil [Tue, 28 Jul 2009 18:12:48 +0000 (11:12 -0700)]
kclient: avoid overflow in mds reconnect msg size calc

16 years agomon: allow osd down->out interval to be 0 (i.e., manual)
Sage Weil [Mon, 27 Jul 2009 23:14:09 +0000 (16:14 -0700)]
mon: allow osd down->out interval to be 0 (i.e., manual)