]>
git.apps.os.sepia.ceph.com Git - ceph.git/log
Sage Weil [Wed, 10 Aug 2011 22:38:25 +0000 (15:38 -0700)]
mds: don't wait for lock 'flushing' flag on replicas
If we are a replica, the 'flushing' means that we had dirty scatterlock
data and are waiting for it to get flushed out to the auth copy (by
cycling from MIX->LOCK, normally). If we end up with 'flushing' set
while in the MIX state, we can't wait for it to clear before responding
to a lock request from the primary or we'll deadlock.
On the auth, flushing means flushing to the log, which makes sense; that
will always make progress despite scatterlock activity.
This fixes a hang from 3-mds fsstress with thrashing exports. (Strangely
I never hit this on fatty.)
Signed-off-by: Sage Weil <sage@newdream.net>
Yehuda Sadeh [Wed, 10 Aug 2011 22:28:17 +0000 (15:28 -0700)]
rgw: can specify time for intent log purging
Yehuda Sadeh [Wed, 10 Aug 2011 21:40:08 +0000 (14:40 -0700)]
rgw: reduce intent log obj name time resolution
Yehuda Sadeh [Wed, 10 Aug 2011 21:30:38 +0000 (14:30 -0700)]
rgw: add 'temp remove' tool for rgw_admin
Sage Weil [Wed, 10 Aug 2011 21:01:06 +0000 (14:01 -0700)]
qa/fsstress: be verbose
Signed-off-by: Sage Weil <sage@newdream.net>
Sage Weil [Wed, 10 Aug 2011 19:25:47 +0000 (12:25 -0700)]
librados: document tmap_update
Signed-off-by: Sage Weil <sage@newdream.net>
Sage Weil [Wed, 10 Aug 2011 19:29:49 +0000 (12:29 -0700)]
librados: document rados_pool_list
Not sure exactly where this API markup comes from, but it seems as good
as any.
Signed-off-by: Sage Weil <sage@newdream.net>
Yehuda Sadeh [Wed, 10 Aug 2011 20:42:37 +0000 (13:42 -0700)]
rgw: update radosgw man page
Josh Durgin [Wed, 10 Aug 2011 20:46:55 +0000 (13:46 -0700)]
Merge branch 'wip-librbd-read'
Yehuda Sadeh [Wed, 10 Aug 2011 19:13:16 +0000 (12:13 -0700)]
rgw: remove original object in put_obj, instead of truncate
Yehuda Sadeh [Wed, 10 Aug 2011 18:29:17 +0000 (11:29 -0700)]
librados: support op flags
Sage Weil [Wed, 10 Aug 2011 19:05:07 +0000 (12:05 -0700)]
osd: don't request heartbeats from down peers
We try to add sources for anything in peer_info, which can include down
OSDs. Skip them.
Signed-off-by: Sage Weil <sage@newdream.net>
Sage Weil [Wed, 10 Aug 2011 17:50:10 +0000 (10:50 -0700)]
Makefile: add rule for building coverity build bundle
As per http://scan.coverity.com/self-build/
Signed-off-by: Sage Weil <sage@newdream.net>
Sage Weil [Wed, 10 Aug 2011 17:47:22 +0000 (10:47 -0700)]
objecter: fix compile error
Signed-off-by: Sage Weil <sage@newdream.net>
Sage Weil [Wed, 10 Aug 2011 17:45:52 +0000 (10:45 -0700)]
osd: don't try to remove head if it doesn't exist
Signed-off-by: Sage Weil <sage@newdream.net>
Sage Weil [Wed, 10 Aug 2011 17:44:22 +0000 (10:44 -0700)]
objecter: allow setting of op flags for previously added op
This lets you set the per-op flags for the last op added to the compound
operation.
Signed-off-by: Sage Weil <sage@newdream.net>
Sage Weil [Wed, 10 Aug 2011 17:41:56 +0000 (10:41 -0700)]
osd: add CEPH_OSD_OP_FLAG_FAILOK
Setting this flag on an individual op in a compound operation will make
the OSD continue with the operation despite the failure of this individual
op.
Signed-off-by: Sage Weil <sage@newdream.net>
Sage Weil [Tue, 9 Aug 2011 22:48:31 +0000 (15:48 -0700)]
auth: use set<> instead of map<,bool>
Value is always true. Be paranoid about the bool default value.
Signed-off-by: Sage Weil <sage@newdream.net>
Josh Durgin [Tue, 9 Aug 2011 23:14:23 +0000 (16:14 -0700)]
librbd: deduplicate sparse read interpretation
AioBlockCompletions and read_iterate each had their own copy of this
code, leading to bugs when only one was changed. Move this to a
separate function, handle_sparse_read.
Signed-off-by: Josh Durgin <josh.durgin@dreamhost.com>
Josh Durgin [Tue, 9 Aug 2011 19:29:15 +0000 (12:29 -0700)]
librbd: make read_iterate mirror AioCompletion::complete
This makes testlibrbd and testlibrbdpp pass again, and
now both I/O paths have the same logic.
Signed-off-by: Josh Durgin <josh.durgin@dreamhost.com>
Yehuda Sadeh [Wed, 10 Aug 2011 00:12:23 +0000 (17:12 -0700)]
librados, rgw: integrate stats categories
Josh Durgin [Tue, 9 Aug 2011 21:28:32 +0000 (14:28 -0700)]
testlibrbd: remove useless print statements
Signed-off-by: Josh Durgin <josh.durgin@dreamhost.com>
Josh Durgin [Tue, 9 Aug 2011 21:19:10 +0000 (14:19 -0700)]
testlibrbd: NUL-terminate orig_data
Signed-off-by: Josh Durgin <josh.durgin@dreamhost.com>
Josh Durgin [Tue, 9 Aug 2011 19:27:31 +0000 (12:27 -0700)]
testlibrbd(pp): accept standard command line arguments
Signed-off-by: Josh Durgin <josh.durgin@dreamhost.com>
Yehuda Sadeh [Tue, 9 Aug 2011 17:53:09 +0000 (10:53 -0700)]
librados: add missing method that was lost in merge
Yehuda Sadeh [Tue, 9 Aug 2011 17:46:13 +0000 (10:46 -0700)]
Merge branch 'wip-stats' into wip-atomic-get
Conflicts:
src/librados.cc
Yehuda Sadeh [Tue, 9 Aug 2011 17:41:18 +0000 (10:41 -0700)]
rgw: add hour to intent log name for higher resolution
Sage Weil [Tue, 9 Aug 2011 03:52:14 +0000 (20:52 -0700)]
Merge branch 'wip-client'
Conflicts:
src/Makefile.am
Yehuda Sadeh [Mon, 8 Aug 2011 23:44:13 +0000 (16:44 -0700)]
rgw: log shadow objects removal in intent log
Yehuda Sadeh [Mon, 8 Aug 2011 21:19:39 +0000 (14:19 -0700)]
Merge branch 'wip-atomic-get'
Yehuda Sadeh [Mon, 8 Aug 2011 21:17:29 +0000 (14:17 -0700)]
rgw: return ENOENT after get_obj() in some cases
Sage Weil [Mon, 8 Aug 2011 20:21:50 +0000 (13:21 -0700)]
Merge branch 'debian-deps'
Sage Weil [Mon, 8 Aug 2011 19:16:41 +0000 (12:16 -0700)]
debian: explicitly bind library users to matching version
We are cheating with the shared libs by making small API changes without
bumping the soname. Bind users to a matching version to minimize user
pain. When the APIs become fully stable these will need to go away.
Fixes: #1354
Signed-off-by: Sage Weil <sage@newdream.net>
Sage Weil [Mon, 8 Aug 2011 19:12:24 +0000 (12:12 -0700)]
Merge branch 'wip-heartbeats'
Conflicts:
src/osd/OSD.cc
Yehuda Sadeh [Mon, 8 Aug 2011 17:25:15 +0000 (10:25 -0700)]
rgw: ignore hidden objects for bucket deletion, fix namespace
Colin Patrick McCabe [Mon, 8 Aug 2011 16:55:49 +0000 (09:55 -0700)]
Merge branch 'wip-config'
Sage Weil [Mon, 8 Aug 2011 04:27:03 +0000 (21:27 -0700)]
osd: missing ! in ifs on bad map after osd boot
Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
Sage Weil [Sun, 31 Jul 2011 04:21:03 +0000 (21:21 -0700)]
mds: fix Migrator::audit() for IMPORT_ABORTING
Make audit match reality.
Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
Yehuda Sadeh [Sat, 6 Aug 2011 00:22:21 +0000 (17:22 -0700)]
rgw: clone_obj can set mtime
Yehuda Sadeh [Sat, 6 Aug 2011 00:22:06 +0000 (17:22 -0700)]
librados: can set mtime for operate (mutate)
Yehuda Sadeh [Fri, 5 Aug 2011 23:32:55 +0000 (16:32 -0700)]
objecter: halt compound operation only if result < 0
Colin Patrick McCabe [Fri, 5 Aug 2011 22:49:30 +0000 (15:49 -0700)]
Remove unused dyn_sprintf
Signed-off-by: Colin McCabe <colin.mccabe@dreamhost.com>
Colin Patrick McCabe [Fri, 5 Aug 2011 22:44:32 +0000 (15:44 -0700)]
config.cc: clean up includes
Signed-off-by: Colin McCabe <colin.mccabe@dreamhost.com>
Sage Weil [Fri, 5 Aug 2011 21:28:29 +0000 (14:28 -0700)]
mds: chain rename subtree projections
We can have two renames for the same file in flight to the journal. Stack
them up in a list. The old project_subtree_rename() should have asserted
that the item wasn't already in the map before inserting it to catch this
at the front end. Now it doesn't matter; it's a list.
Signed-off-by: Sage Weil <sage@newdream.net>
Sage Weil [Fri, 5 Aug 2011 21:26:59 +0000 (14:26 -0700)]
client: whitespace cleanup
Signed-off-by: Sage Weil <sage@newdream.net>
Sage Weil [Fri, 5 Aug 2011 21:26:52 +0000 (14:26 -0700)]
client: send renames to the correct node
AFAICS we got this wrong in
b794aeb39 , which is annoying given I remember
thinking reasonably carefully about it.
The current reasoning: the request operates on the dentry target
directory from the MDS's perspective; that's where the request needs to go.
Signed-off-by: Sage Weil <sage@newdream.net>
Yehuda Sadeh [Fri, 5 Aug 2011 21:05:41 +0000 (14:05 -0700)]
rgw: multiple fixes
Colin Patrick McCabe [Fri, 5 Aug 2011 19:49:37 +0000 (12:49 -0700)]
config: more thread-safety stuff
* Don't allow parse_argv, parse_env, or parse_config_files to be used
after threads have been started.
* Don't allow set_val to be used to change unsafe variables after
threads have been started.
* Test
Signed-off-by: Colin McCabe <colin.mccabe@dreamhost.com>
Colin Patrick McCabe [Fri, 5 Aug 2011 19:18:00 +0000 (12:18 -0700)]
injectargs: forbid unsafe string modifications
Don't allow string-valued configuration items to be changed using
injectargs unless they have observers. Otherwise, we could have
crashes, since one thread could be reading the std::string's internal
buffer after another thread frees that buffer during assignment.
Write a unit test to validate this behavior.
Also test that we can turn on and off the log_file using injectargs.
This is something that injectargs often gets used for in practice.
Signed-off-by: Colin McCabe <colin.mccabe@dreamhost.com>
Colin Patrick McCabe [Fri, 5 Aug 2011 18:25:11 +0000 (11:25 -0700)]
test/daemon_config: add injectargs test
Signed-off-by: Colin McCabe <colin.mccabe@dreamhost.com>
Colin Patrick McCabe [Fri, 5 Aug 2011 18:20:24 +0000 (11:20 -0700)]
Add daemon_config, libceph_config, etc.
Signed-off-by: Colin McCabe <colin.mccabe@dreamhost.com>
Colin Patrick McCabe [Fri, 5 Aug 2011 18:04:08 +0000 (11:04 -0700)]
add config unit test
Signed-off-by: Colin McCabe <colin.mccabe@dreamhost.com>
Colin Patrick McCabe [Fri, 5 Aug 2011 17:47:25 +0000 (10:47 -0700)]
librados.h: fix out-of-date comment
Signed-off-by: Colin McCabe <colin.mccabe@dreamhost.com>
Sage Weil [Fri, 5 Aug 2011 17:46:22 +0000 (10:46 -0700)]
debian: don't explicitly list deps; let debian figure it out
Signed-off-by: Sage Weil <sage@newdream.net>
Colin Patrick McCabe [Fri, 5 Aug 2011 17:32:42 +0000 (10:32 -0700)]
config: more cleanup
* any place where we know a set_val can't fail should be set_val_or_die
* in private md_config_t functions that need the mutex, assert that the
mutex is locked
* make md_config_t::expand_meta private, since nobody uses it outside of
the class.
Signed-off-by: Colin McCabe <colin.mccabe@dreamhost.com>
Colin Patrick McCabe [Fri, 5 Aug 2011 00:16:10 +0000 (17:16 -0700)]
libceph.h: fix C compilation
Signed-off-by: Colin McCabe <colin.mccabe@dreamhost.com>
Colin Patrick McCabe [Thu, 4 Aug 2011 23:42:58 +0000 (16:42 -0700)]
config: add proper locking, fix comments
Signed-off-by: Colin McCabe <colin.mccabe@dreamhost.com>
Yehuda Sadeh [Thu, 4 Aug 2011 23:44:16 +0000 (16:44 -0700)]
rgw: mark ops as atomic
Yehuda Sadeh [Thu, 4 Aug 2011 23:21:57 +0000 (16:21 -0700)]
rgw: conditional clone, depends on src_cmpxattr result
Yehuda Sadeh [Thu, 4 Aug 2011 23:12:47 +0000 (16:12 -0700)]
librados: modify src_cmpxattr interface
Yehuda Sadeh [Thu, 4 Aug 2011 23:07:36 +0000 (16:07 -0700)]
librados: get it compiled
Yehuda Sadeh [Thu, 4 Aug 2011 22:51:58 +0000 (15:51 -0700)]
rgw: prepare for conditional clone_range
Yehuda Sadeh [Thu, 4 Aug 2011 22:09:26 +0000 (15:09 -0700)]
rgw: adapt some more rados calls to the new atomic structure
Yehuda Sadeh [Thu, 4 Aug 2011 21:04:35 +0000 (14:04 -0700)]
librados: restructure ObjectOperation
Yehuda Sadeh [Thu, 4 Aug 2011 20:48:35 +0000 (13:48 -0700)]
rgw: a few more operations are using atomic infrastructure
Yehuda Sadeh [Thu, 4 Aug 2011 00:24:47 +0000 (17:24 -0700)]
rgw: atomic get, various fixes
Yehuda Sadeh [Thu, 4 Aug 2011 00:05:43 +0000 (17:05 -0700)]
rgw: fix decoding
Yehuda Sadeh [Wed, 3 Aug 2011 23:59:33 +0000 (16:59 -0700)]
rgw: atomic get, basic flow for severl rados ops
not working yet
Yehuda Sadeh [Wed, 3 Aug 2011 23:59:05 +0000 (16:59 -0700)]
librados, objecter: add operations to support rgw atomic get
Yehuda Sadeh [Tue, 2 Aug 2011 23:29:16 +0000 (16:29 -0700)]
rgw: introduce context to specific access calls
Colin Patrick McCabe [Thu, 4 Aug 2011 22:33:27 +0000 (15:33 -0700)]
Merge branch 'rgw-formatter'
Colin Patrick McCabe [Thu, 4 Aug 2011 21:43:55 +0000 (14:43 -0700)]
In RGW, use the common/Formatter
Implement a new subclass of Formatter, RGWFormatter_Plain, using code
from the old RGWFormatter and RGWFormatter_Plain classes.
Signed-off-by: Colin McCabe <colin.mccabe@dreamhost.com>
Sage Weil [Thu, 4 Aug 2011 21:35:26 +0000 (14:35 -0700)]
filestore: remove unused var
Signed-off-by: Sage Weil <sage@newdream.net>
Colin Patrick McCabe [Thu, 4 Aug 2011 21:27:14 +0000 (14:27 -0700)]
Formatter: add open_object_section_in_ns, etc.
Signed-off-by: Colin McCabe <colin.mccabe@dreamhost.com>
Colin Patrick McCabe [Thu, 4 Aug 2011 21:11:42 +0000 (14:11 -0700)]
test/formatter: test stream clearing
Signed-off-by: Colin McCabe <colin.mccabe@dreamhost.com>
Colin Patrick McCabe [Thu, 4 Aug 2011 21:07:53 +0000 (14:07 -0700)]
Formatter: must use str("") to clear ostreams
Signed-off-by: Colin McCabe <colin.mccabe@dreamhost.com>
Colin Patrick McCabe [Thu, 4 Aug 2011 20:57:33 +0000 (13:57 -0700)]
More changes towards using common/Formatter in rgw
* rename RgwFormatter::init to RgwForamtter::reset.
Roll old reset() into base_reset().
* add write_raw_data to Formatter, to support DTDs.
Remove other DTD support code.
Signed-off-by: Colin McCabe <colin.mccabe@dreamhost.com>
Sage Weil [Thu, 4 Aug 2011 20:48:55 +0000 (13:48 -0700)]
osd: expect heartbeats from anyone peering depends on
We were getting heartbeats from just acting replicas. That's really not
enough if we want to be sure to detect failures of OSDs we depend on,
which includes any stray or up OSDs as well.
Signed-off-by: Sage Weil <sage@newdream.net>
Sage Weil [Thu, 4 Aug 2011 20:35:57 +0000 (13:35 -0700)]
osd: restructure heartbeats
Primary sends explicit message to replicas asking for heartbeats to start,
or to stop. Replicas never send heartbeats unless explicitly requested
to.
Do not try to mark down old heartbeat relationships; that gets messy, and
the overhead of open sockets is too small to worry about right now.
Signed-off-by: Sage Weil <sage@newdream.net>
Sage Weil [Thu, 4 Aug 2011 00:41:10 +0000 (17:41 -0700)]
mds: add hooks to test multimds link/unlink failures
Signed-off-by: Sage Weil <sage@newdream.net>
Sage Weil [Tue, 2 Aug 2011 23:25:25 +0000 (16:25 -0700)]
qa: move fsx.sh
Sage Weil [Tue, 2 Aug 2011 23:24:19 +0000 (16:24 -0700)]
Revert "qa: Remove fsx workunit."
This reverts commit
a66da4af2571f27f55e8ee819f22e70355fb42b0 . Still useful
to have this around.
Colin Patrick McCabe [Thu, 4 Aug 2011 00:56:19 +0000 (17:56 -0700)]
os/FileStore: print out BTRFS_IOC_SNAP_CREATE errs
Print out the errno for BTRFS_IOC_SNAP_CREATE errors if they happen.
Signed-off-by: Colin McCabe <colin.mccabe@dreamhost.com>
Sage Weil [Wed, 3 Aug 2011 23:24:48 +0000 (16:24 -0700)]
osd: add CATEGORIES incompat feature
Care should be taken to upgrade the monitors first, then osds.
Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
Sage Weil [Wed, 3 Aug 2011 22:01:41 +0000 (15:01 -0700)]
librados: add create in specific category to c++ api
Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
Sage Weil [Wed, 3 Aug 2011 21:55:46 +0000 (14:55 -0700)]
osd: allow 'category' to be set on object creation
Allow a string category to be set on object creation. Object stats will
be included in the category total (in addition to the overall total).
Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
Sage Weil [Wed, 3 Aug 2011 21:35:05 +0000 (14:35 -0700)]
osd: segregate stats into categories
Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
Colin Patrick McCabe [Wed, 3 Aug 2011 18:39:40 +0000 (11:39 -0700)]
rgw_rest: don't leak formatters
Signed-off-by: Colin McCabe <colin.mccabe@dreamhost.com>
Colin Patrick McCabe [Wed, 3 Aug 2011 00:05:53 +0000 (17:05 -0700)]
XmlFormatter: add DTD option
Signed-off-by: Colin McCabe <colin.mccabe@dreamhost.com>
Colin Patrick McCabe [Tue, 2 Aug 2011 23:11:11 +0000 (16:11 -0700)]
Formatter.cc: add get_len method
Add get_len method because rgw needs it.
Signed-off-by: Colin McCabe <colin.mccabe@dreamhost.com>
Colin Patrick McCabe [Tue, 2 Aug 2011 23:04:14 +0000 (16:04 -0700)]
RGWFormatter: get rid of one flush variant
This flush variant won't exist in common/Formatter.cc.
Signed-off-by: Colin McCabe <colin.mccabe@dreamhost.com>
Colin Patrick McCabe [Tue, 2 Aug 2011 22:42:17 +0000 (15:42 -0700)]
rgw_formats: introduce dump_unsigned, dump_int,etc
Signed-off-by: Colin McCabe <colin.mccabe@dreamhost.com>
Colin Patrick McCabe [Tue, 2 Aug 2011 22:29:32 +0000 (15:29 -0700)]
rgw: rename dump_value_str to dump_format
rename dump_value_str to dump_format for compatibility with Formatter.cc
Signed-off-by: Colin McCabe <colin.mccabe@dreamhost.com>
Colin Patrick McCabe [Tue, 2 Aug 2011 22:22:10 +0000 (15:22 -0700)]
rados tool: fix cmdline parsing for --block-size
Signed-off-by: Colin McCabe <colin.mccabe@dreamhost.com>
Colin Patrick McCabe [Tue, 2 Aug 2011 22:16:12 +0000 (15:16 -0700)]
Formatter: add XMLFormatter::reset
Signed-off-by: Colin McCabe <colin.mccabe@dreamhost.com>
Colin Patrick McCabe [Tue, 2 Aug 2011 21:42:31 +0000 (14:42 -0700)]
Formatter.cc: whitespace fix
whitespace fix to conform to the coding standard
Signed-off-by: Colin McCabe <colin.mccabe@dreamhost.com>
Colin Patrick McCabe [Tue, 2 Aug 2011 21:41:02 +0000 (14:41 -0700)]
rgw:rename open_obj_section to open_object_section
For compatibility with common/Formatter.cc
Signed-off-by: Colin McCabe <colin.mccabe@dreamhost.com>
Colin Patrick McCabe [Tue, 2 Aug 2011 21:30:18 +0000 (14:30 -0700)]
Add XMLFormatter and unit test
Signed-off-by: Colin McCabe <colin.mccabe@dreamhost.com>
Colin Patrick McCabe [Tue, 2 Aug 2011 19:37:24 +0000 (12:37 -0700)]
Formatter: remove protected data, methods
Signed-off-by: Colin McCabe <colin.mccabe@dreamhost.com>
Sage Weil [Tue, 2 Aug 2011 21:20:19 +0000 (14:20 -0700)]
osd, objecter, librados: add SRC_CMPXATTR operation
and test.
Signed-off-by: Sage Weil <sage@newdream.net>