summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* ReplicatedPG: rename finish_copy -> finish_copyfromwip-start-copyGreg Farnum2013-10-012-3/+3
| | | | Signed-off-by: Greg Farnum <greg@inktank.com>
* ReplicatedPG: copy: use CopyCallback instead of CopyOp in OpContextGreg Farnum2013-10-012-18/+23
| | | | | | | | | | | | In order to make this happen, we make the switch to generate the complete transaction in the generic copy code and save it into the Callback. Then in finish_copy() we just take that transaction and prepend it to the existing transaction. With that change, and by making use of the existing CopyCallback data, we no longer need to access the CopyOp from the OpContext, so we can remove it. Hurray, the pipelines are now independent! Signed-off-by: Greg Farnum <greg@inktank.com>
* ReplicatedPG: copy: implement CopyFromCallback::finish, remove CopyOp::ctxGreg Farnum2013-10-012-12/+26
| | | | | | | | We implement enough of the CopyFromCallback that CopyOp no longer needs a direct reference to the OpContext, so we remove it and replace all references with calls to cop->cb->complete(). Signed-off-by: Greg Farnum <greg@inktank.com>
* ReplicatedPG: copy: add CopyCallback pointer to CopyOp, and set it upGreg Farnum2013-10-012-7/+9
| | | | | | | We'll start using it in the next commit; eventually we can use the interfaces we're putting their to replace our link to the OpContext. Signed-off-by: Greg Farnum <greg@inktank.com>
* ReplicatedPG: copy: start defining CopyCallback structuresGreg Farnum2013-10-011-0/+57
| | | | | | | Outline the basic interfaces we're going to use, and implement the more obvious ones. Signed-off-by: Greg Farnum <greg@inktank.com>
* ReplicatedPG: copy: split up the transaction generation from the PG managementGreg Farnum2013-10-012-8/+22
| | | | Signed-off-by: Greg Farnum <greg@inktank.com>
* ReplicatedPG: copy: specify the temp_oid in the callerGreg Farnum2013-10-012-7/+13
| | | | Signed-off-by: Greg Farnum <greg@inktank.com>
* ReplicatedPG: copy: take an ObjectContextRef in start_copy and use thatGreg Farnum2013-10-012-6/+6
| | | | Signed-off-by: Greg Farnum <greg@inktank.com>
* ReplicatedPG: copy: add an ObjectContextRef to CopyOpGreg Farnum2013-10-012-10/+10
| | | | | | Use that instead of the OpContext::obc in copy codepaths. Signed-off-by: Greg Farnum <greg@inktank.com>
* ReplicatedPG: follow the same finish path for failed copy opsGreg Farnum2013-10-011-30/+29
| | | | | | | | | | | | We don't necessarily want to respond to clients with a failure if a copy got an error code. Instead, conditionally execute the success path and always launch back into execute_ctx() when the copy has stopped (either due to completion or failure). Update the COPY_FROM section so it returns the CopyOp::rval (instead of always zero) and only launches finish_copy() on success. Signed-off-by: Greg Farnum <greg@inktank.com>
* ReplicatedPG: copy: remove most references to OpContext from process_copy_chunkGreg Farnum2013-10-011-9/+10
| | | | Signed-off-by: Greg Farnum <greg@inktank.com>
* ReplicatedPG: copy: do not use an OpContext in _copy_someGreg Farnum2013-10-012-6/+6
| | | | Signed-off-by: Greg Farnum <greg@inktank.com>
* ReplicatedPG: update pg stats correctly when doing a copyGreg Farnum2013-10-011-1/+1
| | | | | | | | | The obs.oi.size needs to updated in the middle so that we actually change the stats -- this got set backwards by mistake during one of the refactors to support large objects! (See 4e29e362e7981634d751ee982144fbf602782a9a) Signed-off-by: Greg Farnum <greg@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>
| * | | | ceph_test_rados: remove useless snapc setupSage Weil2013-09-271-44/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | We update this on snap create and delete; no need to do it any other time. Signed-off-by: Sage Weil <sage@inktank.com>
| * | | | ceph_test_rados: update for copy_from in begin, not finishSage Weil2013-09-271-2/+7
| | | | | | | | | | | | | | | | | | | | Signed-off-by: Sage Weil <sage@inktank.com>
| * | | | ceph_test_rados: improve debug outputwip-testradosSage Weil2013-09-262-5/+7
| | | | | | | | | | | | | | | | | | | | Signed-off-by: Sage Weil <sage@inktank.com>
| * | | | ceph_test_rados: fix update_object_fullSage Weil2013-09-261-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Update at current snap, not the last snap we did an update. Broken this this was introduced in 996af2d8fd8e60bcdce8e9408249b974521de24e Signed-off-by: Sage Weil <sage@inktank.com>
* | | | | Merge pull request #650 from dachary/wip-6425-2Loic Dachary2013-09-271-4/+8
|\ \ \ \ \ | | | | | | | | | | | | pybind: update osd blacklist tests for nonce
| * | | | | pybind: update osd blacklist tests for nonceLoic Dachary2013-09-271-4/+8
|/ / / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Update the unit tests to reflect a) that the nonce is no longer mandatory, b) that it must be an integer. http://tracker.ceph.com/issues/6426 refs #6426 Reviewed-by: Joao Eduardo Luis <joao.luis@inktank.com> Signed-off-by: Loic Dachary <loic@dachary.org>