summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* ceph.spec.in: Move three scripts from sbin to usr/binwip-3921Gary Lowell2013-03-191-3/+8
| | | | | | | | | The ceph-create-keys, ceph-disk-activate, and ceph-disk-prepare scripts are built in sbin, but debian installs them into usr/bin, and several utilities look for them there. This commit changes the RPM to install them in /usr/bin. (Bug #3921) Signed-off-by: Gary Lowell <gary.lowell@inktank.com>
* Makefile: missing headerSage Weil2013-03-191-0/+1
| | | | Signed-off-by: Sage Weil <sage@inktank.com>
* mon: use enum instead of static const intSage Weil2013-03-191-1/+3
| | | | | | This way it compiles. Signed-off-by: Sage Weil <sage@inktank.com>
* Makefile.am: fix misspelt header nameJoao Eduardo Luis2013-03-191-1/+1
| | | | Signed-off-by: Joao Eduardo Luis <joao.luis@inktank.com>
* Merge branch 'next'Sage Weil2013-03-183-220/+89
|\
| * mon/PaxosService: fix proposal waiter handlingSage Weil2013-03-182-20/+10
| | | | | | | | | | | | | | | | - Cancel the propsal waiters with EAGAIN on election, etc. - Drop the wakeup helper and open-code the one caller. Signed-off-by: Sage Weil <sage@inktank.com> Reviewed-by: Joao Eduardo Luis <joao.luis@inktank.com>
| * Merge branch 'wip-rbd-import' into nextJosh Durgin2013-03-161-200/+79
| |\ | | | | | | | | | Reviewed-by: Sage Weil <sage.weil@inktank.com>
| | * rbd: clean up do_import() a bitJosh Durgin2013-03-141-22/+15
| | | | | | | | | | | | | | | | | | | | | | | | Move declarations above error conditons so we can goto done almost everywhere. Remove cpp_strerror printing, since it will be done by the caller. Signed-off-by: Josh Durgin <josh.durgin@inktank.com>
| | * rbd: remove fiemap use from importJosh Durgin2013-03-131-190/+76
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | On some kernels and filesystems fiemap can be racy and provide incorrect data even after an fsync. Later we can use SEEK_HOLE and SEEK_DATA, but for now just detect zero runs like we do with stdin. Basically this adapts import from stdin to work in the case of a file or block device, and gets rid of other cruft in the import that used fiemap. Fixes: #4388 Backport: bobtail Signed-off-by: Josh Durgin <josh.durgin@inktank.com>
* | | ceph-disk-prepare: 'mkfs -t' instead of 'mkfs --type='Sage Weil2013-03-181-1/+2
| | | | | | | | | | | | | | | | | | | | | | | | Older mkfs (el6) doesn't like --type=. Fixes: #4495 Reported-by: Alexandre Maragone <alexandre.maragone@inktank.com> Signed-off-by: Sage Weil <sage@inktank.com>
* | | mds: Handle ENODATA returned from getxattrSam Lang2013-03-181-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The osds might return ENODATA if we request an xattr that doesn't exist. In this case, we're requesting the 'parent' xattr so that we can remove all the forwarding pointers, but the xattr may not have been written (which only happens on log segment trim), so we don't assert here. Signed-off-by: Sam Lang <sam.lang@inktank.com> Reviewed-by: Sage Weil <sage@inktank.com>
* | | Makefile: fix header nameSage Weil2013-03-181-1/+1
| | | | | | | | | | | | Signed-off-by: Sage Weil <sage@inktank.com>
* | | Merge pull request #115 from ceph/wip-4199Sage Weil2013-03-1817-1/+961
|\ \ \ | | | | | | | | | | | | | | | | Resolves #4199 Reviewed-by: Sage Weil <sage@inktank.com>
| * | | mon: Monitor: take advantage of the new HealthMonitor class.Joao Eduardo Luis2013-03-182-0/+46
| | | | | | | | | | | | | | | | Signed-off-by: Joao Eduardo Luis <joao.luis@inktank.com>
| * | | mon: HealthMonitor: Keep track of monitor cluster's healthJoao Eduardo Luis2013-03-1811-1/+690
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The HealthMonitor builds upon the QuorumService interface, and should be used to keep track of all and any relevant information about the monitor cluster (maybe even about all the cluster if need be). This patch also introduces the HealthService interface, used to define a HealthMonitor service, responsible for dispatching 'MMonHealth' messages (the QuorumService interface dispatches generic 'Message'). Based on the HealthService interface, we introduce the DataHealthService class, a service that will track disk space consumption by the monitors, warn when a given threshold is crossed, and gracefully shutdown the monitor if disk space usage hits critical levels that might affect the correct monitor behavior. Signed-off-by: Joao Eduardo Luis <joao.luis@inktank.com>
| * | | mon: QuorumService: Allow for services quorum-bound to be easily createdJoao Eduardo Luis2013-03-183-0/+216
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | As the monitor grows in features, we have been dumping them in the Monitor class as they don't really fit anywhere else. Most of those latest features have been, and some of the future changes will also be, quorum-bounded. By that we mean that these features tend to require a quorum to be present in order to work. Although we already have the PaxosService interface, it really isn't adequate for this kind of features, as they don't really require Paxos, nor do they access the store. Furthermore, they don't really need to tick at the same rate as the monitor, and can be fairly independent. Therefore we now introduce the concept of a QuorumService, a class to be built upon, managing the tick and dispatch for any kind of service basically requiring a quorum to function. Among the already existing monitor features that could take advantage of this new class we can find the Timecheck infrastructure, as it is by nature quorum bounded. The monitor store sync could also take advantage of this service, although it doesn't really require a quorum to work, and even the PaxosService-related classes could use this. This patch also introduces the MMonQuorumService base class, to be used by any message that should want to. Signed-off-by: Joao Eduardo Luis <joao.luis@inktank.com>
| * | | signal_handler: add func to queue an async signalSage Weil2013-03-182-0/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | For example, queue a SIGINT without actually sending the signal via the OS. Signed-off-by: Sage Weil <sage@inktank.com>
* | | | qa: add 16MB direct-io write testSage Weil2013-03-181-0/+6
| | | | | | | | | | | | | | | | | | | | | | | | See bug #2657. Signed-off-by: Sage Weil <sage@inktank.com>
* | | | Merge pull request #113 from dalgaaf/wip-da-performance-3Sage Weil2013-03-1823-36/+37
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | Iterator related fixes Reviewed-by: Sage Weil <sage@inktank.com>
| * | | | mon/Session.h: prefer prefix ++operator for iteratorsDanny Al-Gaaf2013-03-181-1/+1
| | | | | | | | | | | | | | | | | | | | Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
| * | | | test/filestore/workload_generator.cc: prefer prefix ++operator for iteratorsDanny Al-Gaaf2013-03-181-2/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Prefer prefix ++operator for iterator. Move the iterator declaration into the for-loop header since the iterator isn't used outside the loop. Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
| * | | | test/filestore/test_idempotent.cc: prefer prefix ++operator for iteratorsDanny Al-Gaaf2013-03-181-1/+1
| | | | | | | | | | | | | | | | | | | | Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
| * | | | test/filestore/test_idempotent.cc: fix ~TestFileStoreState()Danny Al-Gaaf2013-03-181-4/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Fix interator handling in ~TestFileStoreState(). After std::map::erase() the used iterator is invalid. Use a while-loop and erase the object with post-incremented iterator instead. Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
| * | | | test/test_snap_mapper.cc: prefer prefix ++operator for iteratorsDanny Al-Gaaf2013-03-181-1/+1
| | | | | | | | | | | | | | | | | | | | Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
| * | | | test/osd/RadosModel.h: prefer prefix ++operator for iteratorsDanny Al-Gaaf2013-03-181-1/+1
| | | | | | | | | | | | | | | | | | | | Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
| * | | | test/filestore/TestFileStoreState.cc: prefer prefix ++operator for iteratorsDanny Al-Gaaf2013-03-181-2/+2
| | | | | | | | | | | | | | | | | | | | Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
| * | | | test/xattr_bench.cc: prefer prefix ++operator for iteratorsDanny Al-Gaaf2013-03-181-1/+1
| | | | | | | | | | | | | | | | | | | | Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
| * | | | test/osd/Object.cc: prefer prefix --/++operator for iteratorsDanny Al-Gaaf2013-03-181-2/+2
| | | | | | | | | | | | | | | | | | | | Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
| * | | | test/encoding/ceph_dencoder.cc: prefer prefix ++operator for iteratorsDanny Al-Gaaf2013-03-181-5/+5
| | | | | | | | | | | | | | | | | | | | Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
| * | | | test/bench/bencher.h: prefer prefix ++operator for iteratorsDanny Al-Gaaf2013-03-181-1/+1
| | | | | | | | | | | | | | | | | | | | Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
| * | | | ObjectMap/test_object_map.cc: prefer prefix ++operator for iteratorsDanny Al-Gaaf2013-03-181-1/+1
| | | | | | | | | | | | | | | | | | | | Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
| * | | | tools/rest_bench.cc: prefer prefix ++operator for iteratorsDanny Al-Gaaf2013-03-181-1/+1
| | | | | | | | | | | | | | | | | | | | Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
| * | | | tools/common.cc: prefer prefix ++operator for iteratorsDanny Al-Gaaf2013-03-181-1/+1
| | | | | | | | | | | | | | | | | | | | Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
| * | | | ceph-filestore-dump.cc: prefer prefix ++operator for iteratorsDanny Al-Gaaf2013-03-181-1/+1
| | | | | | | | | | | | | | | | | | | | Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
| * | | | rgw/rgw_user.cc: prefer prefix ++operator for iteratorsDanny Al-Gaaf2013-03-181-1/+1
| | | | | | | | | | | | | | | | | | | | Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
| * | | | rgw/rgw_rest_swift.cc: prefer prefix ++operator for iteratorsDanny Al-Gaaf2013-03-181-3/+3
| | | | | | | | | | | | | | | | | | | | Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
| * | | | osd/OSDMap.cc: prefer prefix ++operator for iteratorsDanny Al-Gaaf2013-03-181-1/+1
| | | | | | | | | | | | | | | | | | | | Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
| * | | | mds/MDCache.cc: prefer prefix ++operator for iteratorsDanny Al-Gaaf2013-03-181-1/+1
| | | | | | | | | | | | | | | | | | | | Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
| * | | | mds/CInode.cc: prefer prefix ++operator for iteratorsDanny Al-Gaaf2013-03-181-1/+1
| | | | | | | | | | | | | | | | | | | | Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
| * | | | client/Client.cc: prefer prefix ++operator for iteratorsDanny Al-Gaaf2013-03-181-2/+2
| | | | | | | | | | | | | | | | | | | | Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
| * | | | auth/AuthMethodList.cc: fix remove_supported_auth()Danny Al-Gaaf2013-03-181-1/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Make sure the iterator isn't incremented twice if a element gets erased. Move increment out of the for-loop header and add it to a new else block. Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
| * | | | mds/mdstypes.h: prefer prefix ++operator for iteratorsDanny Al-Gaaf2013-03-181-1/+1
| | | | | | | | | | | | | | | | | | | | Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
* | | | | Merge pull request #112 from dalgaaf/wip-da-performance-2-v2Sage Weil2013-03-1834-295/+292
|\ \ \ \ \ | |_|/ / / |/| | | | | | | | | | | | | | prefer prefix ++/--operator for e.g. iterators for performance reasons Reviewed-by: Sage Weil <sage@inktank.com>
| * | | | rgw/rgw_rados.cc: make sure range_iter != ranges.end()Danny Al-Gaaf2013-03-181-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Make sure range_iter is valid, set range_iter = next_iter instead of ++range_iter, since next_iter is already checked against ranges.end() and is the same as ++range_iter. Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
| * | | | rados.cc: prefer prefix ++operator for iteratorsDanny Al-Gaaf2013-03-181-10/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Prefer prefix ++operator for iterators, move some iterator declaration into the for-loop header, since the iterator is only used within the loop. Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
| * | | | rgw/rgw_rados.cc: prefer prefix ++operator for iteratorsDanny Al-Gaaf2013-03-181-2/+2
| | | | | | | | | | | | | | | | | | | | Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
| * | | | rgw/rgw_admin.cc: prefer prefix ++operator for iteratorsDanny Al-Gaaf2013-03-181-2/+2
| | | | | | | | | | | | | | | | | | | | Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
| * | | | rgw/rgw_acl_s3.cc: prefer prefix ++operator for iteratorsDanny Al-Gaaf2013-03-181-4/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Prefer prefix ++operator for iterators, move some iterator declaration into the for-loop header, since the iterator is only used within the loops. Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
| * | | | osdmaptool.cc: prefer prefix ++operator for iteratorsDanny Al-Gaaf2013-03-181-1/+1
| | | | | | | | | | | | | | | | | | | | Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
| * | | | osdc/Striper.cc: prefer prefix ++operator for iteratorsDanny Al-Gaaf2013-03-181-4/+4
| | | | | | | | | | | | | | | | | | | | Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>