]> git.apps.os.sepia.ceph.com Git - ceph.git/log
ceph.git
12 years agomds: re-issue caps after importing caps
Yan, Zheng [Sun, 9 Dec 2012 05:06:33 +0000 (13:06 +0800)]
mds: re-issue caps after importing caps

The imported caps may prevent unstable locks from entering stable
states. So we should call Locker::eval_gather() with parameter
"first" set to true after caps are imported.

Signed-off-by: Yan, Zheng <zheng.z.yan@intel.com>
12 years agomds: always send discover if want_xlocked is true
Yan, Zheng [Fri, 7 Dec 2012 08:02:08 +0000 (16:02 +0800)]
mds: always send discover if want_xlocked is true

If want_xlocked is true, we can not rely on previously sent discover
because it's likely the previous discover is blocking on the xlocked
dentry.

Signed-off-by: Yan, Zheng <zheng.z.yan@intel.com>
12 years agomds: fix error hanlding in MDCache::handle_discover_reply()
Yan, Zheng [Sat, 8 Dec 2012 07:07:53 +0000 (15:07 +0800)]
mds: fix error hanlding in MDCache::handle_discover_reply()

The error hanlding code in MDCache::handle_discover_reply() has two
main issues. MDCache::handle_discover_reply() does not wake waiters
if dir_auth_hint in reply message is equal to itself's nodeid. This
can happen if discover race with subtree importing. Another issue is
that it checks the existence of cached directory fragment to decide
if it should take waiter from inode or from directory fragment. The
check is unreliable because subtree importing can add directory
fragments to the cache.

Signed-off-by: Yan, Zheng <zheng.z.yan@intel.com>
12 years agomds: set want_base_dir to false for MDCache::discover_ino()
Yan, Zheng [Sat, 8 Dec 2012 05:59:38 +0000 (13:59 +0800)]
mds: set want_base_dir to false for MDCache::discover_ino()

When frozen inode is encountered, MDCache::handle_discover() sends
reply immediately if the reply message is not empty. When handling
"discover ino" requests, the reply message always contains the base
directory fragment. But requestor already has the base directory
fragment, the only effect of the reply message is wake the requestor
and make it send same "discover ino" request again. So the requestor
keeps sending "discover ino" requests but can't make any progress.

The fix is set want_base_dir to false for MDCache::discover_ino().
After set want_base_dir to false, also need update the code that
handles "discover ino" error.

This patch also remove unused error handling code for flag_error_dn

Signed-off-by: Yan, Zheng <zheng.z.yan@intel.com>
12 years agomds: no bloom filter for replica dir
Yan, Zheng [Fri, 7 Dec 2012 07:59:56 +0000 (15:59 +0800)]
mds: no bloom filter for replica dir

We should delete dir fragment's bloom filter after exporting the dir
fragment to other MDS. Otherwise the residual bloom filter may cause
problem if the MDS imports dir fragment later.

Signed-off-by: Yan, Zheng <zheng.z.yan@intel.com>
12 years agomds: properly mark dirfrag dirty
Yan, Zheng [Thu, 6 Dec 2012 01:28:46 +0000 (09:28 +0800)]
mds: properly mark dirfrag dirty

If predirty_journal_parents() does not propagate changes in dir's
fragstat into corresponding inode's dirstat, it should mark the
inode as dirfrag dirty. This happens when we modify dir fragments
that are auth subtree roots.

Signed-off-by: Yan, Zheng <zheng.z.yan@intel.com>
12 years agomds: alllow handle_client_readdir() fetching freezing dir.
Yan, Zheng [Fri, 30 Nov 2012 00:53:33 +0000 (08:53 +0800)]
mds: alllow handle_client_readdir() fetching freezing dir.

At that point, the request already auth pins and locks some objects.
So CDir::fetch() should ignore the can_auth_pin check and continue
to fetch freezing dir.

Signed-off-by: Yan, Zheng <zheng.z.yan@intel.com>
12 years agoMerge branch 'wip-create-layout'
Sage Weil [Mon, 24 Dec 2012 03:59:04 +0000 (19:59 -0800)]
Merge branch 'wip-create-layout'

Reviewed-by: Greg Farnum <greg@inktank.com>
The functional tests for the create operations should add and specify non-default
pools, but we don't have a set of library methods to do that yet (to interact with
the monitor).

12 years agomds: *_pg_pool -> *_pool
Sage Weil [Fri, 7 Dec 2012 20:45:19 +0000 (12:45 -0800)]
mds: *_pg_pool -> *_pool

Signed-off-by: Sage Weil <sage@inktank.com>
12 years agoclient, libcephfs: add method to get the pool name for an open file
Sage Weil [Fri, 7 Dec 2012 09:16:53 +0000 (01:16 -0800)]
client, libcephfs: add method to get the pool name for an open file

Signed-off-by: Sage Weil <sage@inktank.com>
12 years agoclient: specify data pool on create operations
Sage Weil [Thu, 6 Dec 2012 08:12:17 +0000 (00:12 -0800)]
client: specify data pool on create operations

Fill in the data pool field if specified by the client, or set to -1.

Signed-off-by: Sage Weil <sage@inktank.com>
12 years agomds: verify that the pool id is valid on SET[DIR]LAYOUT
Sage Weil [Thu, 6 Dec 2012 08:11:00 +0000 (00:11 -0800)]
mds: verify that the pool id is valid on SET[DIR]LAYOUT

Make sure the data pool exists and is part of the MDSMap data pools list.

Signed-off-by: Sage Weil <sage@inktank.com>
12 years agomds: allow data pool to be specfied on create
Sage Weil [Thu, 6 Dec 2012 08:10:29 +0000 (00:10 -0800)]
mds: allow data pool to be specfied on create

Reuse old preferred_pg field.  Only use if the new CREATEPOOLID feature
is present, and the value is >= 0.

Verify that the data pool is allowed, or return EINVAL to the client.

Signed-off-by: Sage Weil <sage@inktank.com>
12 years agoclient: remove set_default_*() methods
Sage Weil [Thu, 6 Dec 2012 06:03:34 +0000 (22:03 -0800)]
client: remove set_default_*() methods

This is a poor interface.  The hadoop stuff is shifting to specify this
information on file creation instead.

Signed-off-by: Sage Weil <sage@inktank.com>
12 years agoMerge branch 'next'
Sage Weil [Sun, 23 Dec 2012 19:19:39 +0000 (11:19 -0800)]
Merge branch 'next'

12 years agoinit-ceph,mkcephfs: default inode64 for mounting xfs
Sage Weil [Sun, 23 Dec 2012 19:18:45 +0000 (11:18 -0800)]
init-ceph,mkcephfs: default inode64 for mounting xfs

According to hch this is now the default or new kernels.

Signed-off-by: Sage Weil <sage@inktank.com>
12 years agoinit-ceph: default osd_data path
Sage Weil [Sat, 22 Dec 2012 19:10:03 +0000 (11:10 -0800)]
init-ceph: default osd_data path

Signed-off-by: Sage Weil <sage@inktank.com>
12 years agoimport_export.sh: sparse import export
Dan Mick [Fri, 21 Dec 2012 03:53:07 +0000 (19:53 -0800)]
import_export.sh: sparse import export

Add tests for:
   - sparse import makes expected sparse images
   - sparse export makes expected sparse files
   - sparse import from stdin also creates sparse images
   - import from partially-sparse file leads to partially-sparse image
   - import from stdin with zeros leads to sparse
   - export from zeros-image to file leads to sparse file

Signed-off-by: Dan Mick <dan.mick@inktank.com>
Reviewed-by: Josh Durgin <josh.durgin@inktank.com>
12 years agorbd: harder-working sparse import from stdin
Dan Mick [Sat, 8 Dec 2012 06:57:06 +0000 (22:57 -0800)]
rbd: harder-working sparse import from stdin

Try to accumulate image-sized blocks when importing from stdin, even if
each read is shorter than requested; if we get a full block, and it's
all zeroes, we can seek and make a sparse output file

Signed-off-by: Dan Mick <dan.mick@inktank.com>
Reviewed-by: Josh Durgin <josh.durgin@inktank.com>
12 years agorbd: check for all-zero buf in export, seek output if so
Dan Mick [Thu, 20 Dec 2012 22:00:12 +0000 (14:00 -0800)]
rbd: check for all-zero buf in export, seek output if so

Use buf_is_zero in common/util.cc

Signed-off-by: Dan Mick <dan.mick@inktank.com>
Reviewed-by: Josh Durgin <josh.durgin@inktank.com>
12 years agolibrbd: move buf_is_zero() to new common/util.cc and include/util.h
Dan Mick [Thu, 20 Dec 2012 21:58:55 +0000 (13:58 -0800)]
librbd: move buf_is_zero() to new common/util.cc and include/util.h

Signed-off-by: Dan Mick <dan.mick@inktank.com>
Reviewed-by: Josh Durgin <josh.durgin@inktank.com>
12 years agoosd: fix pg stat msgs vs timeout
Sage Weil [Sat, 22 Dec 2012 00:47:50 +0000 (16:47 -0800)]
osd: fix pg stat msgs vs timeout

We can get a pattern like so:

- new mon session
- after say 120 seconds, we decide to send a stats msg
- outstanding_pg_stats is finally true, we immediately time out (30 second
  grace), and reconnect to a new mon
-> repeat

The problem is that we don't reset the last_sent timestamp when we send.
Or that we do this check after sending instead of before.  Fix both.

This should resolve the issue #3661 where osds that don't have pgs
updating are not stats messags to the mon to check in, and are eventually
getting marked down as a result.

Signed-off-by: Sage Weil <sage@inktank.com>
Reviewed-by: Samuel Just <sam.just@inktank.com>
12 years agodoc: Added new journaler page to CephFS section. Needs descriptions.
John Wilkins [Sat, 22 Dec 2012 00:14:53 +0000 (16:14 -0800)]
doc: Added new journaler page to CephFS section. Needs descriptions.

Signed-off-by: John Wilkins <john.wilkins@inktank.com>
12 years agodoc: Added Journaler Configuration to toc tree.
John Wilkins [Sat, 22 Dec 2012 00:14:23 +0000 (16:14 -0800)]
doc: Added Journaler Configuration to toc tree.

Signed-off-by: John Wilkins <john.wilkins@inktank.com>
12 years agodoc: Added --mkfs options.
John Wilkins [Sat, 22 Dec 2012 00:09:09 +0000 (16:09 -0800)]
doc: Added --mkfs options.

Signed-off-by: John Wilkins <john.wilkins@inktank.com>
12 years agodoc: Added running multiple clusters. Per Tommi.
John Wilkins [Sat, 22 Dec 2012 00:08:05 +0000 (16:08 -0800)]
doc: Added running multiple clusters. Per Tommi.

Signed-off-by: John Wilkins <john.wilkins@inktank.com>
12 years agodoc: Updated the Configuration File section.
John Wilkins [Sat, 22 Dec 2012 00:07:27 +0000 (16:07 -0800)]
doc: Updated the Configuration File section.

- Replaced ceph.conf with Ceph configuration to clarify
  when running multiple clusters on the same hardware.
- Added a [client] entry so people know it can be set too.
- Updated existing auth example.
- Added an authentication section with a link to the cephx guide.
- Added section for running multiple clusters. Per Tommi.

Signed-off-by: John Wilkins <john.wilkins@inktank.com>
12 years agodoc: Added sudo the ceph health for when cephx is on.
John Wilkins [Fri, 21 Dec 2012 22:54:18 +0000 (14:54 -0800)]
doc: Added sudo the ceph health for when cephx is on.

Signed-off-by: John Wilkins <john.wilkins@inktank.com>
12 years agodoc: minor fix to syntax.
John Wilkins [Fri, 21 Dec 2012 22:53:28 +0000 (14:53 -0800)]
doc: minor fix to syntax.

Signed-off-by: John Wilkins <john.wilkins@inktank.com>
12 years agomkcephfs: error out if 'devs' defined but 'osd fs type' not defined
Sage Weil [Fri, 21 Dec 2012 22:23:14 +0000 (14:23 -0800)]
mkcephfs: error out if 'devs' defined but 'osd fs type' not defined

We can infer btrfs if they use btrfs devs, but if they use devs there is
no default fs.

Signed-off-by: Sage Weil <sage@inktank.com>
12 years agodoc: update ceph.conf examples about btrfs default
Sage Weil [Fri, 21 Dec 2012 22:04:30 +0000 (14:04 -0800)]
doc: update ceph.conf examples about btrfs default

Signed-off-by: Sage Weil <sage@inktank.com>
12 years agoMerge remote-tracking branch 'gh/wip-scrub' into next
Sage Weil [Fri, 21 Dec 2012 21:56:16 +0000 (13:56 -0800)]
Merge remote-tracking branch 'gh/wip-scrub' into next

12 years agoMerge remote-tracking branch 'gh/wip-3643' into next
Sage Weil [Fri, 21 Dec 2012 21:45:39 +0000 (13:45 -0800)]
Merge remote-tracking branch 'gh/wip-3643' into next

Reviewed-by: Josh Durgin <josh.durgin@inktank.com>
12 years agomonc: only warn about missing keyring if we fail to authenticate
Sage Weil [Fri, 21 Dec 2012 21:44:19 +0000 (13:44 -0800)]
monc: only warn about missing keyring if we fail to authenticate

This avoids the situation where a librados or other user with the default
of 'cephx,none' and no keyring is authenticating against a cluster with
required of 'none' and an annoying warning is generated every time.  Now
we only print a helpful message if we actually failed.

Signed-off-by: Sage Weil <sage@inktank.com>
12 years agoosd: clear CLEAN on exit from Clean state
Sage Weil [Fri, 21 Dec 2012 19:44:35 +0000 (11:44 -0800)]
osd: clear CLEAN on exit from Clean state

This means we can drop the scrub repair state_clear() call.  We probably
can drop others, but lets leave that for another day.

Signed-off-by: Sage Weil <sage@inktank.com>
12 years agoauth: use none auth if keyring not found
Yehuda Sadeh [Fri, 21 Dec 2012 20:14:40 +0000 (12:14 -0800)]
auth: use none auth if keyring not found

If both cephx and none are accepted auth methods, and
cephx keyring cannot be found then resort to using
none, instead of failing.

Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
12 years agoPG::sched_scrub: only set PG_STATE_DEEP_SCRUB once reserved
Samuel Just [Fri, 21 Dec 2012 19:36:04 +0000 (11:36 -0800)]
PG::sched_scrub: only set PG_STATE_DEEP_SCRUB once reserved

Otherwise we would have +DEEP before we have +SCRUB.

Signed-off-by: Samuel Just <sam.just@inktank.com>
12 years agoPG::sched_scrub: return true if scrub newly kicked off
Samuel Just [Fri, 21 Dec 2012 19:33:45 +0000 (11:33 -0800)]
PG::sched_scrub: return true if scrub newly kicked off

The previous return value wasn't really what OSD::sched_scrub
wanted to know.

Signed-off-by: Samuel Just <sam.just@inktank.com>
12 years agoosd: allow transition from Clean -> WaitLocalRecoveryReserved for repair
Sage Weil [Fri, 21 Dec 2012 19:37:48 +0000 (11:37 -0800)]
osd: allow transition from Clean -> WaitLocalRecoveryReserved for repair

If we do a scrub repair, we need to go from clean to recovery again to
copy objects around.

This fixes a simple repair of a missing object, either on the primary or
replica.

Signed-off-by: Sage Weil <sage@inktank.com>
12 years agoPG: in sched_scrub() set PG_STATE_DEEP_SCRUB not scrubber.deep
Samuel Just [Fri, 21 Dec 2012 19:17:23 +0000 (11:17 -0800)]
PG: in sched_scrub() set PG_STATE_DEEP_SCRUB not scrubber.deep

scrubber.deep gets reset in scrub() to match
state_test(PG_STATE_DEEP_SCRUB).

Signed-off-by: Samuel Just <sam.just@inktank.com>
12 years agoosd: clear scrub state if queued scrub doesn't start
Sage Weil [Fri, 21 Dec 2012 06:01:34 +0000 (22:01 -0800)]
osd: clear scrub state if queued scrub doesn't start

We set SCRUBBING when we queue a pg for scrub.  If we dequeue and
call scrub() but abort for some reason (!active, degraded, etc.), clear
that state bit.

Bug is easily reproduced with 'ceph osd scrub N' during cluster startup
when PGs are peering; some PGs can get left in the scrubbing state.

Signed-off-by: Sage Weil <sage@inktank.com>
12 years agodoc: Moved path to individual OSD entires.
John Wilkins [Fri, 21 Dec 2012 18:15:38 +0000 (10:15 -0800)]
doc: Moved path to individual OSD entires.

Signed-off-by: John Wilkins <john.wilkins@inktank.com>
12 years agoosd: only dec_scrubs_active if we were active
Sage Weil [Fri, 21 Dec 2012 05:45:09 +0000 (21:45 -0800)]
osd: only dec_scrubs_active if we were active

This fixes a bug that puts scrubs_active negative.

Signed-off-by: Sage Weil <sage@inktank.com>
12 years agoosd: reintroduce inc_scrubs_active helper
Sage Weil [Fri, 21 Dec 2012 05:44:34 +0000 (21:44 -0800)]
osd: reintroduce inc_scrubs_active helper

This mostly generates nice debug output.  It also slightly simplifies
code and makes things symmetric.

Signed-off-by: Sage Weil <sage@inktank.com>
12 years agoMerge remote-tracking branch 'gh/next'
Sage Weil [Fri, 21 Dec 2012 01:43:51 +0000 (17:43 -0800)]
Merge remote-tracking branch 'gh/next'

12 years agoMerge remote-tracking branch 'upstream/wip_notify' into next
Samuel Just [Fri, 21 Dec 2012 00:23:23 +0000 (16:23 -0800)]
Merge remote-tracking branch 'upstream/wip_notify' into next

Reviewed-by: Sage Weil <sage@inktank.com>
12 years agocephtool: mention ceph osd ls, fix ceph osd tell N bench
Dan Mick [Thu, 20 Dec 2012 23:31:21 +0000 (15:31 -0800)]
cephtool: mention ceph osd ls, fix ceph osd tell N bench

Add ceph osd ls to help; make help for ceph osd tell N bench look
more like injectargs, which says <osd-id or *> to make it clear you
can benchmark all osds simultaneously

Signed-off-by: Dan Mick <dan.mick@inktank.com>
12 years agorgw: remove noisy log message
Yehuda Sadeh [Thu, 20 Dec 2012 23:32:59 +0000 (15:32 -0800)]
rgw: remove noisy log message

No need for that log message.

Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
12 years agorgw: fix daemonize initialization
Yehuda Sadeh [Thu, 20 Dec 2012 23:21:48 +0000 (15:21 -0800)]
rgw: fix daemonize initialization

Just call the common daemonize function. Otherwise we end up
not initializng stdout / stderr correctly.

Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
12 years agolog: fix flush/signal race
Sage Weil [Thu, 20 Dec 2012 21:48:06 +0000 (13:48 -0800)]
log: fix flush/signal race

We need to signal the cond in the same interval where we hold the lock
*and* modify the queue.  Otherwise, we can have a race like:

 queue has 1 item, max is 1.
 A: enter submit_entry, signal cond, wait on condition
 B: enter submit_entry, signal cond, wait on condition
 C: flush wakes up, flushes 1 previous item
 A: retakes lock, enqueues something, exits
 B: retakes lock, condition fails, waits
  -> C is never woken up as there are 2 items waiting

Signed-off-by: Sage Weil <sage@inktank.com>
Reviewed-by: Dan Mick <dan.mick@inktank.com>
12 years agoReplicatedPG::remove_notify : don't leak the notify object
Samuel Just [Thu, 20 Dec 2012 21:29:09 +0000 (13:29 -0800)]
ReplicatedPG::remove_notify : don't leak the notify object

Following remove_notify, there are no other references to
notif, delete it.

Signed-off-by: Samuel Just <sam.just@inktank.com>
12 years agoOSD,ReplicatedPG: do not track notifies on the session
Samuel Just [Thu, 20 Dec 2012 21:23:27 +0000 (13:23 -0800)]
OSD,ReplicatedPG: do not track notifies on the session

handle_notify_timeout and remove_notify currently do not clean up this
state leaving dangling Notification*.  Further, we only use this mapping
in unwatch in order to determine which notifies to update. We can
accomplish the same thing by iterating through the obc->notifs mapping
since all notifications relevant for a given watch would have been for
the same obc as the watch.

Signed-off-by: Samuel Just <sam.just@inktank.com>
12 years agodoc: Added package and repo links for Apache and FastCGI. Added SSL enable too.
John Wilkins [Thu, 20 Dec 2012 20:59:58 +0000 (12:59 -0800)]
doc: Added package and repo links for Apache and FastCGI. Added SSL enable too.

Signed-off-by: John Wilkins <john.wilkins@inktank.com>
12 years agodoc: Fixed restructuredText usage.
John Wilkins [Thu, 20 Dec 2012 20:59:22 +0000 (12:59 -0800)]
doc: Fixed restructuredText usage.

Signed-off-by: John Wilkins <john.wilkins@inktank.com>
12 years agodoc: Removed foo. Apparently myimage was added and foo not removed.
John Wilkins [Thu, 20 Dec 2012 19:39:41 +0000 (11:39 -0800)]
doc: Removed foo. Apparently myimage was added and foo not removed.

Signed-off-by: John Wilkins <john.wilkins@inktank.com>
12 years agoMerge branch 'next'
Sage Weil [Thu, 20 Dec 2012 19:07:10 +0000 (11:07 -0800)]
Merge branch 'next'

12 years agoMerge remote-tracking branch 'gh/wip-cephtool' into next
Sage Weil [Thu, 20 Dec 2012 19:04:29 +0000 (11:04 -0800)]
Merge remote-tracking branch 'gh/wip-cephtool' into next

12 years agoMerge branch 'wip-build-fixes' into next
Sage Weil [Thu, 20 Dec 2012 18:49:34 +0000 (10:49 -0800)]
Merge branch 'wip-build-fixes' into next

12 years agorgw: configurable exit timeout
Yehuda Sadeh [Tue, 18 Dec 2012 21:53:09 +0000 (13:53 -0800)]
rgw: configurable exit timeout

Fixes: #3638
rgw exit timeout secs : number of seconds to wait for process
to exit cleanly before forcing exit. If set to 0, it'l wait
indefinitely.

Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
12 years agorgw: don't try to assign content type if not found
Yehuda Sadeh [Wed, 19 Dec 2012 18:21:57 +0000 (10:21 -0800)]
rgw: don't try to assign content type if not found

Fixes: #3648
Cannot assign a NULL pointer into stl string. This is only
relevant to swift, when uploading an object without specifying
content type, and when the suffix cannot be determined.

Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
12 years agoMerge remote-tracking branch 'gh/wip-crushtool' into next
Sage Weil [Thu, 20 Dec 2012 16:53:19 +0000 (08:53 -0800)]
Merge remote-tracking branch 'gh/wip-crushtool' into next

Reviewed-by: Caleb Miles <caleb.miles@inktank.com>
12 years agorgw: don't initialize keystone if not set up
Yehuda Sadeh [Thu, 20 Dec 2012 00:59:43 +0000 (16:59 -0800)]
rgw: don't initialize keystone if not set up

Fixes: #3653
No need to initialize keystone, including the keystone
revocation thread which was verbose if key stone was
not set up. This removes some unuseful errors from the
log.

Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
12 years agorgw: remove useless configurable, fix swift auth error handling
Yehuda Sadeh [Wed, 19 Dec 2012 22:34:53 +0000 (14:34 -0800)]
rgw: remove useless configurable, fix swift auth error handling

Fixes: #3649
No need to have an extra configurable to use keystone. Use keystone
whenever keystone url has been specified. Also, fix a bad error
handling that turned a failure to authenticate into successfully
authenticating a bad user.

Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
12 years agoMerge remote-tracking branch 'upstream/wip_pg_temp' into next
Samuel Just [Thu, 20 Dec 2012 00:50:11 +0000 (16:50 -0800)]
Merge remote-tracking branch 'upstream/wip_pg_temp' into next

Reviewed-by: Sage Weil <sage@inktank.com>
Reviewed-by: Joao Luis <joao.luis@inktank.com>
12 years agodoc: Modified the demo configuration file for Bobtail.
John Wilkins [Wed, 19 Dec 2012 22:22:43 +0000 (14:22 -0800)]
doc: Modified the demo configuration file for Bobtail.

Signed-off-by: John Wilkins <john.wilkins@inktank.com>
12 years agodoc: Added Gateway Quick Start.
John Wilkins [Wed, 19 Dec 2012 22:02:19 +0000 (14:02 -0800)]
doc: Added Gateway Quick Start.

Signed-off-by: John Wilkins <john.wilkins@inktank.com>
12 years agodoc: Added Gateway Quick Start configuration file.
John Wilkins [Wed, 19 Dec 2012 22:02:02 +0000 (14:02 -0800)]
doc: Added Gateway Quick Start configuration file.

Signed-off-by: John Wilkins <john.wilkins@inktank.com>
12 years agoUpdated Getting Started index to include Gateway Quick Start.
John Wilkins [Wed, 19 Dec 2012 22:01:30 +0000 (14:01 -0800)]
Updated Getting Started index to include Gateway Quick Start.

Signed-off-by: John Wilkins <john.wilkins@inktank.com>
12 years agodoc: Added REST Gateway link to 5-minute Quick Start.
John Wilkins [Wed, 19 Dec 2012 22:00:55 +0000 (14:00 -0800)]
doc: Added REST Gateway link to 5-minute Quick Start.

Signed-off-by: John Wilkins <john.wilkins@inktank.com>
12 years agodoc: Updated the 5-minute Quick Start for Bobtail.
John Wilkins [Wed, 19 Dec 2012 21:52:20 +0000 (13:52 -0800)]
doc: Updated the 5-minute Quick Start for Bobtail.

Signed-off-by: John Wilkins <john.wilkins@inktank.com>
12 years agodoc: Updated Block Device Quick Start for Bobtail.
John Wilkins [Wed, 19 Dec 2012 21:47:11 +0000 (13:47 -0800)]
doc: Updated Block Device Quick Start for Bobtail.

Signed-off-by: John Wilkins <john.wilkins@inktank.com>
12 years agodoc: Updated CephFS Quick Start for Bobtail.
John Wilkins [Wed, 19 Dec 2012 21:46:28 +0000 (13:46 -0800)]
doc: Updated CephFS Quick Start for Bobtail.

Signed-off-by: John Wilkins <john.wilkins@inktank.com>
12 years agodoc: Added authentication and mkcephfs settings for Bobtail.
John Wilkins [Wed, 19 Dec 2012 21:45:34 +0000 (13:45 -0800)]
doc: Added authentication and mkcephfs settings for Bobtail.

Signed-off-by: John Wilkins <john.wilkins@inktank.com>
12 years agodoc: Added javascript code block tag.
John Wilkins [Wed, 19 Dec 2012 21:36:17 +0000 (13:36 -0800)]
doc: Added javascript code block tag.

Signed-off-by: John Wilkins <john.wilkins@inktank.com>
12 years agoOSDMonitor: remove temp pg mappings with no up pgs
Samuel Just [Wed, 19 Dec 2012 18:33:40 +0000 (10:33 -0800)]
OSDMonitor: remove temp pg mappings with no up pgs

Otherwise, the pg won't be validly mapped until one of the temp
pgs comes back up.

Signed-off-by: Samuel Just <sam.just@inktank.com>
12 years agoOSDMap: make apply_incremental take a const argument
Samuel Just [Wed, 19 Dec 2012 18:32:52 +0000 (10:32 -0800)]
OSDMap: make apply_incremental take a const argument

This requires us to copy bufferlists in two cases since bufferlist
does not have a const interator at this time.

Signed-off-by: Samuel Just <sam.just@inktank.com>
12 years agocephtool: add qa workunit
Sage Weil [Wed, 19 Dec 2012 16:37:42 +0000 (08:37 -0800)]
cephtool: add qa workunit

A few basic sanity checks, including a tell on a down osd.

Signed-off-by: Sage Weil <sage@inktank.com>
12 years agoceph.spec.in: Improve finding location of jni.h for sles11.
Gary Lowell [Wed, 19 Dec 2012 05:00:15 +0000 (21:00 -0800)]
ceph.spec.in:  Improve finding location of jni.h for sles11.

Signed-off-by: Gary Lowell <gary.lowell@inktank.com>
12 years agoosd: implement 'version' tell command
Sage Weil [Wed, 19 Dec 2012 04:08:42 +0000 (20:08 -0800)]
osd: implement 'version' tell command

Signed-off-by: Sage Weil <sage@inktank.com>
12 years agoceph.spec.in: Add packages for libcephfs-jni and libcephfs-java
Gary Lowell [Wed, 19 Dec 2012 03:40:32 +0000 (19:40 -0800)]
ceph.spec.in:  Add packages for libcephfs-jni and libcephfs-java

Signed-off-by: Gary Lowell <gary.lowell@inktank.com>
12 years agoceph: report error string to stderr, not stdout
Sage Weil [Wed, 19 Dec 2012 03:21:24 +0000 (19:21 -0800)]
ceph: report error string to stderr, not stdout

If we return an error, send the message to stderr.  This makes things
more easily scriptable because error messages won't take the place of
expected output.

Signed-off-by: Sage Weil <sage@inktank.com>
12 years agoceph: fix error reporting when tell target is invalid or down
Sage Weil [Wed, 19 Dec 2012 03:20:06 +0000 (19:20 -0800)]
ceph: fix error reporting when tell target is invalid or down

Signed-off-by: Sage Weil <sage@inktank.com>
12 years agomon: 'ceph osd ls'
Sage Weil [Wed, 19 Dec 2012 03:11:49 +0000 (19:11 -0800)]
mon: 'ceph osd ls'

List osd ids that exist.

Signed-off-by: Sage Weil <sage@inktank.com>
12 years agoOSDMap::dump: tag pg_temp mappings with pgid
Samuel Just [Wed, 19 Dec 2012 00:50:24 +0000 (16:50 -0800)]
OSDMap::dump: tag pg_temp mappings with pgid

Signed-off-by: Samuel Just <sam.just@inktank.com>
Reviewed-by: Yehuda Sadeh <yehuda@inktank.com>
12 years agorgw: configurable exit timeout
Yehuda Sadeh [Tue, 18 Dec 2012 21:53:09 +0000 (13:53 -0800)]
rgw: configurable exit timeout

Fixes: #3638
rgw exit timeout secs : number of seconds to wait for process
to exit cleanly before forcing exit. If set to 0, it'l wait
indefinitely.

Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
12 years agocrushtool: nicer error message on extra args
Sage Weil [Mon, 17 Dec 2012 22:44:35 +0000 (14:44 -0800)]
crushtool: nicer error message on extra args

Signed-off-by: Sage Weil <sage@inktank.com>
12 years agocrushtool: only dump usage on -h|--help
Sage Weil [Mon, 17 Dec 2012 19:21:55 +0000 (11:21 -0800)]
crushtool: only dump usage on -h|--help

Instead, output a useful error message.

Fix error code to be a success.

Add test for the output usage.

Signed-off-by: Sage Weil <sage@inktank.com>
12 years agoMerge remote-tracking branch 'gh/testing' into next
Sage Weil [Tue, 18 Dec 2012 00:51:20 +0000 (16:51 -0800)]
Merge remote-tracking branch 'gh/testing' into next

12 years agoceph.spec.in: Update pre-reqs for ceph-fuse pacakge.
Gary Lowell [Tue, 18 Dec 2012 00:38:19 +0000 (16:38 -0800)]
ceph.spec.in:  Update pre-reqs for ceph-fuse pacakge.

12 years agoRevert "objecter: don't use new tid when retrying notifies"
Sage Weil [Tue, 18 Dec 2012 00:29:19 +0000 (16:29 -0800)]
Revert "objecter: don't use new tid when retrying notifies"

This reverts commit c3107009f66bc06b5e14c465142e14120f9a4412.

This appears to be causing problems in the objecter by corrupting
the stack.  Until that is resolved, let's revert.

Signed-off-by: Sage Weil <sage@inktank.com>
12 years agomon: OSDMonitor: add option 'mon_max_pool_pg_num' and limit 'pg_num' accordingly
Joao Eduardo Luis [Mon, 17 Dec 2012 18:58:16 +0000 (18:58 +0000)]
mon: OSDMonitor: add option 'mon_max_pool_pg_num' and limit 'pg_num' accordingly

Instead of having a hardcoded default, use a configurable one. It is
limited to 65536 until future testing guarantees there is no side-effects
of increasing it past this value, but by being adjustable the user still
has the freedom to specify whatever maximum value he wants.

Signed-off-by: Joao Eduardo Luis <joao.luis@inktank.com>
12 years agoosd: debug EMSGSIZE / OSD_WRITETOOBIG
Sage Weil [Mon, 17 Dec 2012 17:20:07 +0000 (09:20 -0800)]
osd: debug EMSGSIZE / OSD_WRITETOOBIG

Signed-off-by: Sage Weil <sage@inktank.com>
12 years agocrushtool: add --set-chooseleaf-descend-once to help
Sage Weil [Mon, 17 Dec 2012 19:14:44 +0000 (11:14 -0800)]
crushtool: add --set-chooseleaf-descend-once to help

We forgot to update this in 88f218181a9e6d2292e2697fc93797d0f6d6e5dc.

Signed-off-by: Sage Weil <sage@inktank.com>
12 years agodoc: fix typo in config file
Josh Durgin [Mon, 17 Dec 2012 15:57:34 +0000 (07:57 -0800)]
doc: fix typo in config file

The option is host, not hostname

Signed-off-by: Josh Durgin <josh.durgin@inktank.com>
12 years agoMakefiles: Two new packages needed in the debian build depdencies.
Gary Lowell [Sun, 16 Dec 2012 06:38:58 +0000 (22:38 -0800)]
Makefiles:  Two new packages needed in the debian build depdencies.

The ceph test programs that are now being built by default require the junit
and libboost-program-options packages.  These have been added to the build
dependecies in the debian control file.

Signed-off-by: Gary Lowell <gary.lowell@inktank.com>
12 years agoRefactor rule file to separate arch/indep builds.
James Page [Wed, 12 Dec 2012 22:06:16 +0000 (22:06 +0000)]
Refactor rule file to separate arch/indep builds.

Prior to the ceph fs java bindings, all packages where
architecture depdendent so the packaging rules file
worked OK; this fixes up the binary-indep/arch targets
to split the builds of architecture dependent and
independent files.

Signed-off-by: James Page <james.page@ubuntu.com>
12 years agoosdc/Objecter: prevent pool dne check from invalidating scan_requests iterator
Sage Weil [Sun, 16 Dec 2012 01:45:25 +0000 (17:45 -0800)]
osdc/Objecter: prevent pool dne check from invalidating scan_requests iterator

We iterate over ops and, if the pool dne and other conditions are true,
we will immediately return ENOENT and cancel an op.  Increment the
iterator at the top of the loop to avoid invalidating it.

We also need to switch to a map<>, because hash_map<> mutations may
invalidate any/all iterators.

Fixes: #3613
Signed-off-by: Sage Weil <sage@inktank.com>
12 years agoMerge remote-tracking branch 'gh/next'
Sage Weil [Sat, 15 Dec 2012 01:08:35 +0000 (17:08 -0800)]
Merge remote-tracking branch 'gh/next'

12 years agoqa: add a workunit for fsync-tester
Greg Farnum [Fri, 14 Dec 2012 22:34:35 +0000 (14:34 -0800)]
qa: add a workunit for fsync-tester

It turns out that our suites don't exercise fsync, at least not very much
(I couldn't find it in all the places I looked for it). This tester
was written by Ted T'so and updated by Chris Mason; I just made it
work on a smaller dataset (256MB) because 8GB against a small cluster takes
more time than we want to wait.

Signed-off-by: Greg Farnum <greg@inktank.com>
12 years agotest: remove underscores from cephfs test names
Noah Watkins [Wed, 28 Nov 2012 19:49:53 +0000 (11:49 -0800)]
test: remove underscores from cephfs test names

Google Test documentation strongly suggests avoiding underscores from
unit test names to avoid accidental conflicts with their macro naming
scheme.

http://code.google.com/p/googletest/wiki/FAQ#Why_should_not_test_case_names_and_test_names_contain_underscore

Signed-off-by: Noah Watkins <noahwatkins@gmail.com>