summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* ReplicatedPG: block reads on an object until the write is committedwip-5992-3Samuel Just2013-10-032-23/+197
| | | | Signed-off-by: Samuel Just <sam.just@inktank.com>
* ReplicatedPG: remove the other backfill related flushesSamuel Just2013-10-031-18/+16
| | | | Signed-off-by: Samuel Just <sam.just@inktank.com>
* ReplicatedPG: reset backfill_info.begin to backfill_pos recover_backfillSamuel Just2013-10-032-9/+10
| | | | Signed-off-by: Samuel Just <sam.just@inktank.com>
* ReplicatedPG: lock snapdir obc during writeSamuel Just2013-10-022-4/+18
| | | | | | Otherwise, we won't block properly in prep_push_backfill_object. Signed-off-by: Samuel Just <sam.just@inktank.com>
* PGLog: on split, leave log head aloneSamuel Just2013-10-012-7/+2
| | | | | | | This way last_update doesn't go backwards. Fixes: 6447 Signed-off-by: Samuel Just <sam.just@inktank.com>
* FileStore: make _setattrs not return -ENOENT most of the timeSamuel Just2013-10-011-0/+2
| | | | Signed-off-by: Samuel Just <sam.just@inktank.com>
* ReplicatedPG: add debugging in recover_replicas for objects added for backfillSamuel Just2013-10-011-0/+11
| | | | Signed-off-by: Samuel Just <sam.just@inktank.com>
* ReplicatedPG,PG: use PGBackend methods for getattrSamuel Just2013-10-012-16/+28
| | | | Signed-off-by: Samuel Just <sam.just@inktank.com>
* ReplicatedPG,PG: adapt collection_list* users to PGBackend interfaceSamuel Just2013-10-012-20/+20
| | | | Signed-off-by: Samuel Just <sam.just@inktank.com>
* PG,ReplicatedPG: expose PGBackend to PGSamuel Just2013-10-012-0/+6
| | | | Signed-off-by: Samuel Just <sam.just@inktank.com>
* PG.cc: remove leading empty spaceSamuel Just2013-10-011-1/+0
| | | | Signed-off-by: Samuel Just <sam.just@inktank.com>
* PGBackend,ReplicatedBackend: add interfaces for scanning the pgSamuel Just2013-10-013-0/+110
| | | | | | | This will be important since the erasure coded pg will have a different on-disk format than the replicated backend. Signed-off-by: Samuel Just <sam.just@inktank.com>
* ReplicatedPG: don't rescan the local collection if we can avoid itSamuel Just2013-10-013-8/+68
| | | | Signed-off-by: Samuel Just <sam.just@inktank.com>
* common/hobject: add is_degenerate methodSamuel Just2013-10-011-0/+4
| | | | Signed-off-by: Samuel Just <sam.just@inktank.com>
* PGMap: calc_min_last_epoch_clean() will now also use osd_epochsSamuel Just2013-10-011-0/+8
| | | | | | | We don't want to trim past the current osd map for any up osd. osd_epochs provides a lower bound for that epoch for each osd. Signed-off-by: Samuel Just <sam.just@inktank.com>
* PGMap: maintain a mapping of osd to epoch of most recent stat messageSamuel Just2013-10-012-2/+43
| | | | | | | Each up osd will have a mapping since out osds are now included as empty stats. Signed-off-by: Samuel Just <sam.just@inktank.com>
* PGMap,PGMonitor: osd_stat will be empty for out osdSamuel Just2013-10-013-17/+46
| | | | | | | | | | | When an osd is marked out, rather than remove it from osd_stat, we instead 0 out the structure. This patch also makes osd_stat_updates and osd_stat_rm private. This should make it simpler to enforce invariants on these mappings. Signed-off-by: Samuel Just <sam.just@inktank.com>
* Merge pull request #669 from ceph/wip-6443Sage Weil2013-10-011-6/+4
|\ | | | | | | | | ReplicatedPG: don't bless C_OSD_SendMessageOnConn Reviewed-by: Sage Weil <sage@inktank.com>
| * ReplicatedPG: don't bless C_OSD_SendMessageOnConnSamuel Just2013-10-011-6/+4
| | | | | | | | | | | | | | | | C_OSD_SendMessageOnConn doesn't need to lock the pg. Canceling it resulted in a leaked message. Fixes: 6443 Signed-off-by: Samuel Just <sam.just@inktank.com>
* | msgr: debug delay_thread joinSage Weil2013-10-012-10/+14
|/ | | | Signed-off-by: Sage Weil <sage@inktank.com>
* Use 'k' when printing 'kilo'; accept either 'K' or 'k' as inputDan Mick2013-10-012-4/+5
| | | | | | Fixes: #4612 Signed-off-by: Dan Mick <dan.mick@inktank.com> Reviewed-by: Sage Weil <sage@inktank.com>
* Merge pull request #659 from ceph/wip-objecter-notierSage Weil2013-10-013-1/+7
|\ | | | | | | | | Wip objecter notier Reviewed-by: Sage Weil <sage@inktank.com>
| * OSD: unset_honor_cache_redirects() on Objecterwip-objecter-notierGreg Farnum2013-09-301-0/+1
| | | | | | | | Signed-off-by: Greg Farnum <greg@inktank.com>
| * Objecter: add "honor_cache_redirects" flag covering cache settingsGreg Farnum2013-09-302-1/+6
| | | | | | | | | | | | | | When set to false, we do not redirect based on the cache_pool data in the OSDMap. We'll use this so the OSDs can actually fetch data into the cache pools on promotion! Signed-off-by: Greg Farnum <greg@inktank.com>
* | Merge pull request #668 from liewegas/wip-cache-stallJosh Durgin2013-10-011-1/+5
|\ \ | | | | | | | | | osdc/ObjectCacher: limit writeback IOs generated while holding lock Reviewed-by: Josh Durgin <josh.durgin@inktank.com>
| * | osdc/ObjectCacher: limit writeback IOs generated while holding lockSage Weil2013-10-011-1/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | While analyzing a log from Mike Dawson I saw a long stall while librbd's objectcacher was starting lots (many hundreds) of IOs. Limit the amount of time we spend doing this at a time to allow IO replies to be processed so that the cache remains responsive. I'm not sure this warrants a tunable (which we would need to add for both libcephfs and librbd). Signed-off-by: Sage Weil <sage@inktank.com>
* | | Merge pull request #663 from ceph/wip-cancel-copyGregory Farnum2013-10-011-4/+3
|\ \ \ | | | | | | | | Reviewed-by: Greg Farnum <greg@inktank.com>
| * | | osd/ReplicatedPG: fix iterator corruption in cancel_copy_ops()Sage Weil2013-10-011-4/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The cancel_copy() method removes the entry from copy_ops. Move the iterator forward before calling. Fixes segfault when thrashing osds with a copy-from workload. Signed-off-by: Sage Weil <sage@inktank.com>
* | | | rbd: fix cli testSage Weil2013-10-011-0/+1
| |/ / |/| | | | | | | | Signed-off-by: Sage Weil <sage@inktank.com>
* | | rgw: quiet down warning messageYehuda Sadeh2013-10-011-1/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Fixes: #6123 We don't want to know about failing to read region map info if it's not found, only if failed on some other error. In any case it's just a warning. Signed-off-by: Yehuda Sadeh <yehuda@inktank.com> Reviewed-by: Sage Weil <sage@inktank.com>
* | | rbd.cc: add readonly option for "rbd map"Guangliang Zhao2013-09-303-1/+19
|/ / | | | | | | | | | | | | | | | | The device could only be set to rw(default) when mapping now. This patch only handle the user space, because the kernel part has been completed. Signed-off-by: Guangliang Zhao <guangliang@unitedstack.com> Reviewed-by: Josh Durgin <josh.durgin@inktank.com>
* | Merge pull request #660 from ceph/wip-fs-crcSage Weil2013-09-3011-3/+561
|\ \ | | | | | | | | | | | | sloppy / opportunistic CRC tracking in the filestore Reviewed-by: Samuel Just <sam.just@inktank.com>
| * | os/FileStore: add sloppy crc trackingSage Weil2013-09-305-3/+180
| | | | | | | | | | | | | | | | | | | | | Opportunistically track CRCs for data we write and verify it for data we read. Signed-off-by: Sage Weil <sage@inktank.com>
| * | common/SloppyCRCMap: add type to sloppily track crcsSage Weil2013-09-306-0/+381
| |/ | | | | | | | | | | Signed-off-by: Sage Weil <sage@inktank.com> sloppy
* | Merge pull request #661 from ceph/wip-copy-cleanupsSage Weil2013-09-302-20/+10
|\ \ | |/ |/| | | | | Wip copy cleanups Reviewed-by: Sage Weil <sage@inktank.com>
| * ReplicatedPG: remove unused CopyOp::waiting member, rename function for accuracyGreg Farnum2013-09-302-13/+5
| | | | | | | | | | | | We never placed any ops here, and so we weren't ever requeuing any ops. Signed-off-by: Greg Farnum <greg@inktank.com>
| * ReplicatedPG: remove useless pcop param from start_copyGreg Farnum2013-09-302-5/+3
| | | | | | | | Signed-off-by: Greg Farnum <greg@inktank.com>
| * ReplicatedPG: use our already-found iterator instead of going back into mapGreg Farnum2013-09-301-2/+2
|/ | | | | | | We have an iterator pointing at the element we want; no need to search the map again in order to grab the element or remove it. Signed-off-by: Greg Farnum <greg@inktank.com>
* Merge remote-tracking branch 'gh/next'Sage Weil2013-09-274-6/+2
|\ | | | | | | | | Conflicts: src/common/crc32c_intel_fast.c
| * Merge pull request #658 from dmick/nextSage Weil2013-09-271-1/+1
| |\ | | | | | | | | | | | | ceph.in: fix missing exception variable in failure to open -o file Reviewed-by: Sage Weil <sage@inktank.com>
| | * ceph.in: fix missing exception variable in failure to open -o fileDan Mick2013-09-271-1/+1
| | | | | | | | | | | | | | | Fixes: #6424 Signed-off-by: Dan Mick <dan.mick@inktank.com>
| * | Merge pull request #657 from ceph/wip-6397Josh Durgin2013-09-272-4/+1
| |\ \ | | |/ | |/| | | | | | | Wip 6397 Reviewed-by: Josh Durgin <josh.durgin@inktank.com>
| | * rgw: don't append NULL char before json parsingYehuda Sadeh2013-09-271-1/+0
| | | | | | | | | | | | | | | | | | Parser handles that by itself. Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
| | * ceph_json: use different string constructor for parser bufferYehuda Sadeh2013-09-271-3/+1
| | | | | | | | | | | | | | | | | | | | | | | | Fixes: #6397 Previous implementation did not user the constructor with the length param. Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
| * | qa: workunits: mon: test snaps ops using rbd.Joao Eduardo Luis2013-09-271-0/+39
| | | | | | | | | | | | | | | | | | | | | Regression test for #6047 Signed-off-by: Joao Eduardo Luis <jecluis@gmail.com> (cherry picked from commit b2b0f202ea8a0028e7e27664b3ea6b9b8cdafe6e)
| * | common/crc32c_intel_fast: avoid reading partial trailing wordSage Weil2013-09-271-1/+17
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The optimized intel code reads in word-sized chunks, knowing that the allocator will only hand out memory in word-sized increments. This makes valgrind unhappy. Whitelisting doesn't work because for some reason there is no caller context (probably because of some interaction with yasm?). Instead, just use the baseline code for the last few bytes. This should not be significant. Signed-off-by: Sage Weil <sage@inktank.com> Reviewed-by: Greg Farnum <greg@inktank.com> (cherry picked from commit 39c89dcfed0587f822e2226f2de8e4092449af29) Conflicts: src/test/common/test_crc32c.cc
* | | Merge pull request #643 from dachary/masterSage Weil2013-09-271-1/+1
|\ \ \ | | | | | | | | | | | | | | | | autoconf: fix build out of tree Reviewed-by: Sage Weil <sage@inktank.com>
| * | | autoconf: fix build out of treeLoic Dachary2013-09-261-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | so that the following works: git clone git@github.com:ceph/ceph.git cd ceph ./autogen.sh mkdir ../build cd ../build ../ceph/configure --with-radosgw make check Signed-off-by: Loic Dachary <loic@dachary.org>
* | | | doc: changed journal aio default to true.John Wilkins2013-09-271-1/+5
| | | | | | | | | | | | | | | | | | | | | | | | fixes: #6389 Signed-off-by: John Wilkins <john.wilkins@inktank.com>
* | | | Merge pull request #654 from ceph/wip-testradosSage Weil2013-09-272-53/+17
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | fix some issues with ceph_test_rados Reviewed-by: Samuel Just <sam.just@inktank.com>