]> git.apps.os.sepia.ceph.com Git - ceph.git/log
ceph.git
11 years agobetter error reporting on incompatible device requirements 1874/head
Alfredo Deza [Thu, 22 May 2014 21:04:28 +0000 (17:04 -0400)]
better error reporting on incompatible device requirements

Signed-off-by: Alfredo Deza <alfredo@deza.pe>
11 years agoMerge pull request #1739 from ceph/wip-journal-tool
John Spray [Tue, 27 May 2014 13:51:18 +0000 (14:51 +0100)]
Merge pull request #1739 from ceph/wip-journal-tool

cephfs-journal-tool

11 years agoMerge pull request #1824 from dachary/wip-documentation
Loic Dachary [Tue, 27 May 2014 09:41:18 +0000 (11:41 +0200)]
Merge pull request #1824 from dachary/wip-documentation

erasure-code: fix URL in developer notes

Reviewed-by: koleosfuscus <koleosfuscus@yahoo.com>
11 years agoMerge pull request #1861 from atwardowski/patch-3
Loic Dachary [Sat, 24 May 2014 08:57:10 +0000 (10:57 +0200)]
Merge pull request #1861 from atwardowski/patch-3

Fix Doc Typo

Reviewed-by: Loic Dachary <loic@dachary.org>
11 years agoMerge pull request #1846 from ceph/wip-8342
Loic Dachary [Sat, 24 May 2014 07:03:36 +0000 (09:03 +0200)]
Merge pull request #1846 from ceph/wip-8342

init-ceph: keep trying other OSDs if we fail to set CRUSH position on one OSD

Reviewed-by: Loic Dachary <loic@dachary.org>
Reviewed-by: Dmitry Smirnov <onlyjob@debian.org>
11 years agoMerge pull request #1858 from ceph/wip-8428
Josh Durgin [Fri, 23 May 2014 20:37:22 +0000 (13:37 -0700)]
Merge pull request #1858 from ceph/wip-8428

rgw: check appropriate entity permission on put_metadata

Reviewed-by: Josh Durgin <josh.durgin@inktank.com>
11 years agoFix Doc Typo 1861/head
Adam Twardowski [Fri, 23 May 2014 19:35:18 +0000 (15:35 -0400)]
Fix Doc Typo

Signed-off-by: Adam Twardowski <adam.twardowski@gmail.com>
11 years agorgw: check appropriate entity permission on put_metadata 1858/head
Yehuda Sadeh [Fri, 23 May 2014 01:27:58 +0000 (18:27 -0700)]
rgw: check appropriate entity permission on put_metadata

Fixes: #8428
Backport: firefly

Cannot use verify_object_permission() to test acls, as the operation
here might either be on object or on bucket.

Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
11 years agoMerge pull request #1854 from ceph/wip-java-build
Samuel Just [Thu, 22 May 2014 21:34:53 +0000 (14:34 -0700)]
Merge pull request #1854 from ceph/wip-java-build

cephfs-java: build against older jni headers

Reviewed-by: Samuel Just <sam.just@inktank.com>
11 years agoMerge pull request #1851 from FlorentFlament/master
Loic Dachary [Thu, 22 May 2014 14:19:15 +0000 (16:19 +0200)]
Merge pull request #1851 from FlorentFlament/master

documentation: update osd pool default size from 2 to 3.

Reviewed-By: Christophe Courtaut <christophe.courtaut@gmail.com>
11 years agodocumentation: update osd pool default size from 2 to 3. 1851/head
Florent Flament [Thu, 22 May 2014 12:08:54 +0000 (14:08 +0200)]
documentation: update osd pool default size from 2 to 3.

Fixes: #7725
Signed-off-by: Florent Flament <florent.flament@cloudwatt.com>
11 years agoMerge pull request #1815 from ceph/osd-metadata
Loic Dachary [Thu, 22 May 2014 08:58:07 +0000 (10:58 +0200)]
Merge pull request #1815 from ceph/osd-metadata

osd: include osd_objectstore in metadata reported to mon

Reviewed-by: Loic Dachary <loic@dachary.org>
11 years agoMerge pull request #1793 from ceph/wip-multimds
Gregory Farnum [Thu, 22 May 2014 05:53:14 +0000 (22:53 -0700)]
Merge pull request #1793 from ceph/wip-multimds

Speed up several cross-MDS operations by reducing the number of two-phase commit disk accesses we have to go through.

Reviewed-by: Greg Farnum <greg@inktank.com>
11 years agocephfs-java: build against older jni headers 1854/head
Greg Farnum [Thu, 22 May 2014 04:41:23 +0000 (21:41 -0700)]
cephfs-java: build against older jni headers

Older versions of the JNI interface expected non-const parameters
to their memory move functions. It's unpleasant, but won't actually
change the memory in question, to do a cast_const in order to satisfy
those older headers. (And even if it *did* modify the memory, that
would be okay given our single user.)

Signed-off-by: Greg Farnum <greg@inktank.com>
11 years agoMerge pull request #1838 from ceph/wip-client-time
Sage Weil [Thu, 22 May 2014 00:29:52 +0000 (17:29 -0700)]
Merge pull request #1838 from ceph/wip-client-time

fs: include client timestamp in all mds requests

Reviewed-by: Greg Farnum <greg@inktank.com>
11 years agoMerge pull request #1835 from ceph/wip-8332
Sage Weil [Wed, 21 May 2014 20:20:45 +0000 (13:20 -0700)]
Merge pull request #1835 from ceph/wip-8332

HashIndex: in cleanup, interpret missing dir as completed merge

Reviewed-by: Sage Weil <sage@inktank.com>
11 years agoMerge pull request #1834 from ceph/wip-8334
Sage Weil [Wed, 21 May 2014 20:19:54 +0000 (13:19 -0700)]
Merge pull request #1834 from ceph/wip-8334

Wip 8334

Reviewed-by: Sage Weil <sage@inktank.com>
11 years agodoc/release-notes: v0.67.9
Sage Weil [Wed, 21 May 2014 20:00:35 +0000 (13:00 -0700)]
doc/release-notes: v0.67.9

Signed-off-by: Sage Weil <sage@inktank.com>
11 years agoMerge pull request #1848 from yuyuyu101/librbd-flush
Sage Weil [Wed, 21 May 2014 17:22:35 +0000 (10:22 -0700)]
Merge pull request #1848 from yuyuyu101/librbd-flush

Avoid extra check for clean object

Backport: firefly, dumpling
Reviewed-by: Sage Weil <sage@inktank.com>
11 years agoMerge pull request #1849 from ceph/wip-mon-get-version
Sage Weil [Wed, 21 May 2014 15:40:16 +0000 (08:40 -0700)]
Merge pull request #1849 from ceph/wip-mon-get-version

mon: set MMonGetVersionReply tid

Reviewed-by: Sage Weil <sage@inktank.com>
11 years agoAvoid extra check for clean object 1848/head
Haomai Wang [Wed, 21 May 2014 10:12:22 +0000 (18:12 +0800)]
Avoid extra check for clean object

We needn't to check clean object via buffer state, skip the clean object.

Signed-off-by: Haomai Wang <haomaiwang@gmail.com>
11 years agomon: set MMonGetVersionReply tid 1849/head
Ilya Dryomov [Mon, 12 May 2014 08:30:45 +0000 (12:30 +0400)]
mon: set MMonGetVersionReply tid

Currently we don't set MMonGetVersionReply tid even if the original
MMonGetVersion message had a non-zero tid.  This is bad for the kernel
client, which has the infrastructure in place that relies on tids to
lookup message buffers and contexts.  To kick off transitioning away
from the workaround, set MMonGetVersionReply tid to the tid of the
original MMonGetVersion message.

Signed-off-by: Ilya Dryomov <ilya.dryomov@inktank.com>
11 years agoMerge pull request #1723 from ctheune/patch-1
Sage Weil [Wed, 21 May 2014 03:22:55 +0000 (20:22 -0700)]
Merge pull request #1723 from ctheune/patch-1

Fix formatting of header

11 years agoMerge pull request #1845 from wdneto/master
John Wilkins [Wed, 21 May 2014 00:40:29 +0000 (17:40 -0700)]
Merge pull request #1845 from wdneto/master

doc: Update manual-deployment.rst

11 years agoMerge pull request #1828 from nereocystis/faq-fix
John Wilkins [Wed, 21 May 2014 00:38:11 +0000 (17:38 -0700)]
Merge pull request #1828 from nereocystis/faq-fix

doc: fix link to FAQ

11 years agoMerge pull request #1829 from nereocystis/preflight-cleanup
John Wilkins [Wed, 21 May 2014 00:37:56 +0000 (17:37 -0700)]
Merge pull request #1829 from nereocystis/preflight-cleanup

doc: Clean up pre-flight documentation

11 years agoMerge pull request #1833 from nereocystis/admin-node-doc
John Wilkins [Wed, 21 May 2014 00:37:07 +0000 (17:37 -0700)]
Merge pull request #1833 from nereocystis/admin-node-doc

doc: mention admin-node in common documentation

11 years agoMerge pull request #1837 from nereocystis/quick-ceph-deploy-cleanup
John Wilkins [Wed, 21 May 2014 00:35:56 +0000 (17:35 -0700)]
Merge pull request #1837 from nereocystis/quick-ceph-deploy-cleanup

doc: quick-ceph-deploy cleanup

11 years agoMerge pull request #1841 from ceph/wip-8373
Sage Weil [Wed, 21 May 2014 00:10:39 +0000 (17:10 -0700)]
Merge pull request #1841 from ceph/wip-8373

Fixes for crush ruleset selection during pool creation (Wip 8373)

Reviewed-by: Sage Weil <sage@inktank.com>
11 years agoMerge pull request #1836 from ceph/wip-doc-openstack
John Wilkins [Wed, 21 May 2014 00:06:43 +0000 (17:06 -0700)]
Merge pull request #1836 from ceph/wip-doc-openstack

doc: Clarifications to Ceph Block Device and OpenStack documentation.

11 years agoinit-ceph: if we fail to set an OSD's crush position, continue 1846/head
Sage Weil [Tue, 20 May 2014 23:29:23 +0000 (16:29 -0700)]
init-ceph: if we fail to set an OSD's crush position, continue

If we fail to set the CRUSH position for one OSD, continue on to try
starting others, just as we do when we fail to start the daemon.

Fixes: #8342
Signed-off-by: Sage Weil <sage@inktank.com>
11 years agoinit-ceph: continue loop immediately on daemon start failure
Sage Weil [Tue, 20 May 2014 23:28:31 +0000 (16:28 -0700)]
init-ceph: continue loop immediately on daemon start failure

If we fail to start the daemon, skip the post_start and other steps.

Signed-off-by: Sage Weil <sage@inktank.com>
11 years agoMerge pull request #1842 from ceph/wip-buildroot
Sage Weil [Tue, 20 May 2014 22:27:26 +0000 (15:27 -0700)]
Merge pull request #1842 from ceph/wip-buildroot

ceph.spec.in: remove BuildRoot

11 years agoMerge pull request #1844 from onlyjob/hppa
Sage Weil [Tue, 20 May 2014 22:26:56 +0000 (15:26 -0700)]
Merge pull request #1844 from onlyjob/hppa

Define AO_REQUIRE_CAS (fixes FTBFS on 'hppa')

Backport: firefly
Reviewed-by: Sage Weil <sage@inktank.com>
11 years agoUpdate manual-deployment.rst 1845/head
Aristoteles Neto [Tue, 20 May 2014 22:20:55 +0000 (10:20 +1200)]
Update manual-deployment.rst

- When creating the OSD data, specify osd-uuid so that it matches when the osd is first created.
- Modify caps when adding osd auth to match what ceph-deploy does.

11 years agoDefine AO_REQUIRE_CAS (fixes FTBFS on 'hppa') 1844/head
Dmitry Smirnov [Tue, 20 May 2014 21:56:43 +0000 (07:56 +1000)]
Define AO_REQUIRE_CAS (fixes FTBFS on 'hppa')

 to fix FTBFS due to undeclared atomic functions.

As reported

    https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=748571

by John David Anglin <dave.anglin@bell.net>

~~~~
./include/atomic.h: In member function 'size_t ceph::atomic_t::inc()':
./include/atomic.h:42:36: error: 'AO_fetch_and_add1' was not declared in this scope
       return AO_fetch_and_add1(&val) + 1;
                                    ^
./include/atomic.h: In member function 'size_t ceph::atomic_t::dec()':
./include/atomic.h:45:42: error: 'AO_fetch_and_sub1_write' was not declared in this scope
       return AO_fetch_and_sub1_write(&val) - 1;
                                          ^
./include/atomic.h: In member function 'void ceph::atomic_t::add(size_t)':
./include/atomic.h:48:36: error: 'AO_fetch_and_add' was not declared in this scope
       AO_fetch_and_add(&val, add_me);
                                    ^
./include/atomic.h: In member function 'void ceph::atomic_t::sub(int)':
./include/atomic.h:52:48: error: 'AO_fetch_and_add_write' was not declared in this scope
       AO_fetch_and_add_write(&val, (AO_t)negsub);
                                                ^
./include/atomic.h: In member function 'size_t ceph::atomic_t::dec()':
./include/atomic.h:46:5: warning: control reaches end of non-void function [-Wreturn-type]
     }
     ^
make[5]: *** [cls/user/cls_user_client.o] Error 1
~~~~

Signed-off-by: Dmitry Smirnov <onlyjob@member.fsf.org>
11 years agomon: Fix check of ruleset id on pool update 1841/head
John Spray [Tue, 20 May 2014 15:50:18 +0000 (16:50 +0100)]
mon: Fix check of ruleset id on pool update

This code was using CrushWrapper::rule_exists, which
checks for a *rule* existing, whereas the value being
set is a *ruleset*.

Signed-off-by: John Spray <john.spray@inktank.com>
11 years agomon: Fix default replicated pool ruleset choice
John Spray [Tue, 20 May 2014 15:25:19 +0000 (16:25 +0100)]
mon: Fix default replicated pool ruleset choice

Specifically, in the case where the configured
default ruleset is CEPH_DEFAULT_CRUSH_REPLICATED_RULESET,
instead of assuming ruleset 0 exists, choose the lowest
numbered ruleset.

In the case where an explicit ruleset is passed to
OSDMonitor::prepare_pool_crush_ruleset, verify
that it really exists.

The idea is to eliminate cases where a pool could
exist with its crush ruleset set to something
other than a value ruleset ID.

Fixes: #8373
Signed-off-by: John Spray <john.spray@inktank.com>
11 years agomds: remove unused Mutation::now 1838/head
Sage Weil [Tue, 20 May 2014 22:04:53 +0000 (15:04 -0700)]
mds: remove unused Mutation::now

Signed-off-by: Sage Weil <sage@inktank.com>
11 years agomds: use mds_stamp for mksnap
Sage Weil [Tue, 20 May 2014 22:07:07 +0000 (15:07 -0700)]
mds: use mds_stamp for mksnap

Use the server timestamp for the snapshot timestamp.  This could arguably
be the client timestamp, but I think snapshot creation times are a bit
more important to have accurate timestamps on, and this should not be
something that existing client apps will strongly depend on.

Signed-off-by: Sage Weil <sage@inktank.com>
11 years agomds: reset mds_stamp for readdir, rename, link
Sage Weil [Tue, 20 May 2014 22:04:03 +0000 (15:04 -0700)]
mds: reset mds_stamp for readdir, rename, link

These ops to complicated work prior to starting the real operation, like
fetching missing directories, or opening remote dirfrags, creating
snaprealms.  Reset the mds timestamp after this slow work has completed.

Signed-off-by: Sage Weil <sage@inktank.com>
11 years agomds: use real timestamp for readdir leases
Sage Weil [Tue, 20 May 2014 22:00:37 +0000 (15:00 -0700)]
mds: use real timestamp for readdir leases

Signed-off-by: Sage Weil <sage@inktank.com>
11 years agomds: use client-provided time stamp for user-visible file metadata
Sage Weil [Tue, 20 May 2014 21:59:35 +0000 (14:59 -0700)]
mds: use client-provided time stamp for user-visible file metadata

Use the op_stamp from the MDRequest, populated by the MClientRequest when
possible, for setting timestamps on user-visible metadata (like ctime,
mtime).

Signed-off-by: Sage Weil <sage@inktank.com>
11 years agomds: do the balancer and propagation timers based on mds_stmap
Sage Weil [Tue, 20 May 2014 21:57:30 +0000 (14:57 -0700)]
mds: do the balancer and propagation timers based on mds_stmap

Use the (more) stable time stamp for doing the balancer's temperature
tracking and associated decay.

Signed-off-by: Sage Weil <sage@inktank.com>
11 years agomds: do rstat timestamps (rctime, fragstat mtime) in terms of op stamp
Sage Weil [Tue, 20 May 2014 21:55:05 +0000 (14:55 -0700)]
mds: do rstat timestamps (rctime, fragstat mtime) in terms of op stamp

Use the op (client) timestamp for the recursive stats, for santity's sake.
Note that since this is monotonically increasing, the danger here is
that we lose track of nested changes due to skewed client clocks.

Signed-off-by: Sage Weil <sage@inktank.com>
11 years agomds: make sure mds_stamp is set when we journal
Sage Weil [Tue, 20 May 2014 21:52:59 +0000 (14:52 -0700)]
mds: make sure mds_stamp is set when we journal

This is a catch-all that we are carrying over from before.  It may not
be strictly necessary, but I'm not inclined to check the code for
Mutation users who didn't call acquire_locks().

Signed-off-by: Sage Weil <sage@inktank.com>
11 years agomds: set mds_stamp on lock acquisition
Sage Weil [Tue, 20 May 2014 21:51:35 +0000 (14:51 -0700)]
mds: set mds_stamp on lock acquisition

Normally acquire_locks() will set this for us.

Signed-off-by: Sage Weil <sage@inktank.com>
11 years agomds: add {mds,op}_stamp to Mutation
Sage Weil [Tue, 20 May 2014 21:50:46 +0000 (14:50 -0700)]
mds: add {mds,op}_stamp to Mutation

With getters, setters.

Signed-off-by: Sage Weil <sage@inktank.com>
11 years agoceph.spec.in: remove BuildRoot 1842/head
Sage Weil [Tue, 20 May 2014 20:41:35 +0000 (13:41 -0700)]
ceph.spec.in: remove BuildRoot

Deprecated

Fixes: #8143
Signed-off-by: Sage Weil <sage@inktank.com>
11 years agotools/cephfs: error handling in EventOutput 1739/head
John Spray [Tue, 20 May 2014 11:48:49 +0000 (12:48 +0100)]
tools/cephfs: error handling in EventOutput

Print error instead of hitting assertion if
we e.g. can't create directory.

Signed-off-by: John Spray <john.spray@inktank.com>
11 years agoosdc/Journaler: fix obj count in Journaler:erase
John Spray [Tue, 20 May 2014 10:59:53 +0000 (11:59 +0100)]
osdc/Journaler: fix obj count in Journaler:erase

This was off by one (too few) in the case of a
trimmedpos->write_pos range that had length
layout_period+2 and starting position one byte
before a period boundary.

Signed-off-by: John Spray <john.spray@inktank.com>
11 years agotools/cephfs-journal-tool: handle --help cleanly
John Spray [Tue, 20 May 2014 10:10:26 +0000 (11:10 +0100)]
tools/cephfs-journal-tool: handle --help cleanly

Handle --help before main initialization so that
it works with or without a running mon cluster.

Signed-off-by: John Spray <john.spray@inktank.com>
11 years agotools/MDSUtility: fix crash on bad config
John Spray [Tue, 20 May 2014 10:00:52 +0000 (11:00 +0100)]
tools/MDSUtility: fix crash on bad config

Was calling messenger destructor before
calling shutdown in case where config
was bad, e.g. in vstart without "-c" flag.

Signed-off-by: John Spray <john.spray@inktank.com>
11 years agotools/JournalTool: update usage()
John Spray [Mon, 19 May 2014 23:12:07 +0000 (00:12 +0100)]
tools/JournalTool: update usage()

Signed-off-by: John Spray <john.spray@inktank.com>
11 years agoqa: Add smoke test for cephfs-journal-tool
John Spray [Mon, 19 May 2014 20:22:56 +0000 (21:22 +0100)]
qa: Add smoke test for cephfs-journal-tool

Signed-off-by: John Spray <john.spray@inktank.com>
11 years agotools/JournalTool: Fix 'header set' corner case
John Spray [Mon, 19 May 2014 16:22:31 +0000 (17:22 +0100)]
tools/JournalTool: Fix 'header set' corner case

If the write_pos was behind the other pointers, we
would flag the header as invalid.  However, that
would prevent doing a "header set" to correct it.

Signed-off-by: John Spray <john.spray@inktank.com>
11 years agomds: Create JournalPointer in MDLog::create
John Spray [Mon, 19 May 2014 15:42:53 +0000 (16:42 +0100)]
mds: Create JournalPointer in MDLog::create

Otherwise it is created at next startup when
we see that it is missing: this is cleaner.

Signed-off-by: John Spray <john.spray@inktank.com>
11 years agomds: Make EMetaBlob::dirlump::_decode_bits const
John Spray [Mon, 19 May 2014 14:08:33 +0000 (15:08 +0100)]
mds: Make EMetaBlob::dirlump::_decode_bits const

This requires making the late-decoded attributes mutable.
The motivation is to allow get_paths and all the code downstream
of that to be const too.

Signed-off-by: John Spray <john.spray@inktank.com>
11 years agoosdc: new style encoding for Journal::Header
John Spray [Mon, 19 May 2014 13:23:40 +0000 (14:23 +0100)]
osdc: new style encoding for Journal::Header

Switch to the ENCODE_START, DECODE_START macros
for Journal::Header.  As well as being nice generally,
this has the important side effect of making
journal headers written since JOURNAL_FORMAT_RESILIENT
unreadable to older MDSs, as they will fail their check
on Header.magic.

Signed-off-by: John Spray <john.spray@inktank.com>
11 years agoosdc: Simplify JournalStream::read
John Spray [Mon, 19 May 2014 12:37:23 +0000 (13:37 +0100)]
osdc: Simplify JournalStream::read

It was doing an unnecessary series of splices() after
reading header, replace with a single pass through
the data and one splice at the end.

Signed-off-by: John Spray <john.spray@inktank.com>
11 years agoosdc: make JournalStream::readable const
John Spray [Mon, 19 May 2014 12:09:52 +0000 (13:09 +0100)]
osdc: make JournalStream::readable const

Signed-off-by: John Spray <john.spray@inktank.com>
11 years agoosdc/JournalStream: DRY envelope size calc
John Spray [Mon, 19 May 2014 10:31:24 +0000 (11:31 +0100)]
osdc/JournalStream: DRY envelope size calc

Replace repetitive sizeof() calculation for the
envelope overhead per log event with #defines.

Signed-off-by: John Spray <john.spray@inktank.com>
11 years agodoc: Update ceph-mds manpage
John Spray [Mon, 19 May 2014 10:12:14 +0000 (11:12 +0100)]
doc: Update ceph-mds manpage

Add missing --hot-standby and --journal-check
arguments.

Fixes: #8258
11 years agoosdc/Journaler: use pointers for out params
John Spray [Mon, 19 May 2014 10:11:07 +0000 (11:11 +0100)]
osdc/Journaler: use pointers for out params

Fixes a style violation in the new JournalStream class.

Signed-off-by: John Spray <john.spray@inktank.com>
11 years agotools/cephfs: Update for JournalPointer
John Spray [Mon, 12 May 2014 17:39:33 +0000 (18:39 +0100)]
tools/cephfs: Update for JournalPointer

Signed-off-by: John Spray <john.spray@inktank.com>
11 years agoFix JournalStream::read length assertion
John Spray [Mon, 12 May 2014 13:16:54 +0000 (14:16 +0100)]
Fix JournalStream::read length assertion

This was checking for new-format length even
when reading from an old-format journal.

Signed-off-by: John Spray <john.spray@inktank.com>
11 years agoosdc/Journaler: include stream_format in dump()
John Spray [Mon, 12 May 2014 10:56:44 +0000 (11:56 +0100)]
osdc/Journaler: include stream_format in dump()

Signed-off-by: John Spray <john.spray@inktank.com>
11 years agomds: Introduce mds_journal_format config setting
John Spray [Fri, 9 May 2014 14:37:41 +0000 (15:37 +0100)]
mds: Introduce mds_journal_format config setting

This is useful for testing, so that we can create an
old-style journal and then test the version migration
by changing the config setting.

Signed-off-by: John Spray <john.spray@inktank.com>
11 years agotools: update Dumper to use JournalPointer
John Spray [Thu, 8 May 2014 12:21:43 +0000 (13:21 +0100)]
tools: update Dumper to use JournalPointer

Signed-off-by: John Spray <john.spray@inktank.com>
11 years agomds: Generalize JournalPointer functionality
John Spray [Wed, 7 May 2014 12:50:35 +0000 (13:50 +0100)]
mds: Generalize JournalPointer functionality

...so that we can use it places like Resetter too.  And use it
there.

Signed-off-by: John Spray <john.spray@inktank.com>
11 years agodencoder: add JournalPointer to types.h
John Spray [Wed, 7 May 2014 11:17:09 +0000 (12:17 +0100)]
dencoder: add JournalPointer to types.h

Signed-off-by: John Spray <john.spray@inktank.com>
11 years agomds: add atomic log rewrite on format change
John Spray [Tue, 6 May 2014 12:18:03 +0000 (13:18 +0100)]
mds: add atomic log rewrite on format change

Two main pieces to this:
 * A new JournalPointer object that stores two journal
   inodes so that we can do a double-buffered update,
   followed by an atomic swap.
 * An extended recovery process in MDLog that dereferences
   the JournalPointer and conditionally rewrites the
   journal to accomodate format updates.

The JournalPointer indirection should also be useful for
making cephfs-journal-tool do updates more safely.

Signed-off-by: John Spray <john.spray@inktank.com>
11 years agoosdc: Add Journaler.erase
John Spray [Tue, 6 May 2014 12:12:36 +0000 (13:12 +0100)]
osdc: Add Journaler.erase

This is used in subsequent commits to delete journals
that are no longer needed, such as after rewriting
a journal in a different format.

Signed-off-by: John Spray <john.spray@inktank.com>
11 years agoosdc/Journaler: privatize members
John Spray [Fri, 2 May 2014 09:37:26 +0000 (10:37 +0100)]
osdc/Journaler: privatize members

Many members were unnecessarily public.

Signed-off-by: John Spray <john.spray@inktank.com>
11 years agoosdc: fix redundant branch
John Spray [Thu, 1 May 2014 11:58:48 +0000 (12:58 +0100)]
osdc: fix redundant branch

Signed-off-by: John Spray <john.spray@inktank.com>
11 years agoosdc: Clean up journalstream readable check
John Spray [Thu, 1 May 2014 11:54:14 +0000 (12:54 +0100)]
osdc: Clean up journalstream readable check

Fix redundant (and subtly incorrect) calculation of
the number of bytes needed.  It worked because waiting
for a few more bytes before reading the entry size
of an old-format entry was harmless.

Signed-off-by: John Spray <john.spray@inktank.com>
11 years agomds/CDir: remove redundant inode enc/dec
John Spray [Fri, 2 May 2014 15:10:33 +0000 (16:10 +0100)]
mds/CDir: remove redundant inode enc/dec

Use the new CInode::encode_bare/decode_bare fns
in CDir, so that we only have one implementation
of the inode encode/decode code.

Signed-off-by: John Spray <john.spray@inktank.com>
11 years agodocs: Add cephfs-journal-tool
John Spray [Tue, 29 Apr 2014 08:57:24 +0000 (09:57 +0100)]
docs: Add cephfs-journal-tool

Signed-off-by: John Spray <john.spray@inktank.com>
11 years agogitignore: Add cephfs-journal-tool
John Spray [Wed, 23 Apr 2014 16:23:58 +0000 (17:23 +0100)]
gitignore: Add cephfs-journal-tool

Signed-off-by: John Spray <john.spray@inktank.com>
11 years agodebian: add cephfs-journal-tool to ceph-mds
John Spray [Wed, 23 Apr 2014 15:44:54 +0000 (16:44 +0100)]
debian: add cephfs-journal-tool to ceph-mds

Signed-off-by: John Spray <john.spray@inktank.com>
11 years agorpm: add cephfs-journal-tool to RPM build
John Spray [Wed, 23 Apr 2014 15:27:36 +0000 (16:27 +0100)]
rpm: add cephfs-journal-tool to RPM build

Signed-off-by: John Spray <john.spray@inktank.com>
11 years agotools: Create cephfs-journal-tool
John Spray [Tue, 25 Mar 2014 13:30:57 +0000 (13:30 +0000)]
tools: Create cephfs-journal-tool

This is for debugging/repairing CephFS journals.

Signed-off-by: John Spray <john.spray@inktank.com>
11 years agoFix formatting of header 1723/head
Christian Theune [Thu, 24 Apr 2014 07:42:35 +0000 (09:42 +0200)]
Fix formatting of header

The header was displaying the newline as a simple "n" due to quoting in the doc.

Signed-off-by: Christian Theune <ct@gocept.com>
11 years agoMerge pull request #1839 from ceph/wip-8338
Gregory Farnum [Mon, 19 May 2014 23:53:55 +0000 (16:53 -0700)]
Merge pull request #1839 from ceph/wip-8338

OSD: verify that client ops are targeted correctly in the current epoch

Reviewed-by: Samuel Just <sam.just@inktank.com>
11 years agoclient: set timestamp in MDS requests
Sage Weil [Mon, 19 May 2014 22:36:14 +0000 (15:36 -0700)]
client: set timestamp in MDS requests

Signed-off-by: Sage Weil <sage@inktank.com>
11 years agomds: include timestamp in MClientRequest
Sage Weil [Mon, 19 May 2014 22:36:00 +0000 (15:36 -0700)]
mds: include timestamp in MClientRequest

Signed-off-by: Sage Weil <sage@inktank.com>
11 years agoMerge pull request #1830 from salehe/docfix-1
Josh Durgin [Mon, 19 May 2014 22:31:43 +0000 (15:31 -0700)]
Merge pull request #1830 from salehe/docfix-1

rados.py: clarify documentation of recent change on write return value

Reviewed-by: Josh Durgin <josh.durgin@inktank.com>
11 years agodoc: clarify openstack cow sentence 1836/head
Josh Durgin [Mon, 19 May 2014 22:25:37 +0000 (15:25 -0700)]
doc: clarify openstack cow sentence

Missing subject, and now applies to disks in general.

Signed-off-by: Josh Durgin <josh.durgin@inktank.com>
11 years agodoc: note cinder multi-backend restriction
Josh Durgin [Mon, 19 May 2014 22:21:12 +0000 (15:21 -0700)]
doc: note cinder multi-backend restriction

Signed-off-by: Josh Durgin <josh.durgin@inktank.com>
11 years agodoc: link to ephemeral rbd patches
Josh Durgin [Mon, 19 May 2014 22:14:29 +0000 (15:14 -0700)]
doc: link to ephemeral rbd patches

These are necessary for using ephemeral rbd with Havana and Icehouse.

Signed-off-by: Josh Durgin <josh.durgin@inktank.com>
11 years agodoc: quick-ceph-deploy cleanup 1837/head
Kevin Dalley [Mon, 19 May 2014 22:03:35 +0000 (15:03 -0700)]
doc: quick-ceph-deploy cleanup
Improve documentation in quick-ceph-deploy.rst
Use admin-node consistently.
ceph should be installed on admin-node for the following reasons:
 "ceph-deploy admin admin-node" assumes that /etc/ceph exists.
 "ceph health" requires the use of ceph

Signed-off-by: Kevin Dalley <kevin@kelphead.org>
11 years agoMerge pull request #1804 from ceph/wip-8104
Samuel Just [Mon, 19 May 2014 21:41:17 +0000 (14:41 -0700)]
Merge pull request #1804 from ceph/wip-8104

Wip 8104

Reviewed-by: Sage Weil <sage@inktank.com>
11 years agodoc: mention admin-node in common documentation 1833/head
Kevin Dalley [Mon, 19 May 2014 21:36:56 +0000 (14:36 -0700)]
doc: mention admin-node in common documentation

This change uses admin-node in the quick-common.rst file, including
the graph. This name is already used in
quick-ceph-deploy.rst.

Signed-off-by: Kevin Dalley <kevin@kelphead.org>
11 years agoReplicatedPG::start_flush: fix clone deletion case 1832/head 1834/head
Samuel Just [Fri, 16 May 2014 23:56:33 +0000 (16:56 -0700)]
ReplicatedPG::start_flush: fix clone deletion case

dsnapc.snaps will be non-empty most of the time if there
have been snaps before prev_snapc.  What we really want to
know is whether there are any snaps between oi.snaps.back()
and prev_snapc.

Fixes: 8334
Backport: firefly
Signed-off-by: Samuel Just <sam.just@inktank.com>
11 years agoHashIndex: in cleanup, interpret missing dir as completed merge 1831/head 1835/head
Samuel Just [Fri, 16 May 2014 03:53:27 +0000 (20:53 -0700)]
HashIndex: in cleanup, interpret missing dir as completed merge

If we stop between unlinking the empty subdir and removing the root
merge marker, we get ENOENT on the get_info.  That's actually fine.

Backport: firefly
Fixes: 8332
Signed-off-by: Samuel Just <sam.just@inktank.com>
11 years agorados.py: clarify recent change on write return value 1830/head
Mohammad Salehe [Thu, 8 May 2014 08:03:42 +0000 (12:33 +0430)]
rados.py: clarify recent change on write return value

Signed-off-by: Mohammad Salehe <salehe+dev@gmail.com>
11 years agodoc: Clean up pre-flight documentation 1829/head
Kevin Dalley [Mon, 19 May 2014 20:38:31 +0000 (13:38 -0700)]
doc: Clean up pre-flight documentation
Mention recent Ceph releases.
Move important message about sudo and ceph-deploy closer to the use of
ceph-deploy.
Mention files created by ceph-deploy comment
Separate apt-get from yum command

Signed-off-by: Kevin Dalley <kevin@kelphead.org>
11 years agodoc: fix link to FAQ 1828/head
Kevin Dalley [Mon, 19 May 2014 18:59:46 +0000 (11:59 -0700)]
doc: fix link to FAQ
The location of the ceph wiki FAQ has changed.
Now, the link from ceph documentation matches the current FAQ location

Signed-off-by: Kevin Dalley <kevin@kelphead.org>
11 years agoMerge pull request #1820 from ceph/wip-osd-refs
Gregory Farnum [Mon, 19 May 2014 18:24:05 +0000 (11:24 -0700)]
Merge pull request #1820 from ceph/wip-osd-refs

osd: fix a session ref leak, and an unlikely race

Reviewed-by: Greg Farnum <greg@inktank.com>
11 years agodoc: Restored glance_api_version=2 setting.
John Wilkins [Mon, 19 May 2014 18:18:44 +0000 (11:18 -0700)]
doc: Restored glance_api_version=2 setting.

Fixes: #8347
Signed-off-by: John Wilkins <john.wilkins@inktank.com>