Commit Graph

24432 Commits

Author SHA1 Message Date
Danny Al-Gaaf
4ce3461659 Client.cc: reduce the scope of some variables
Reduce the scope of some variables.

Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
2013-02-26 19:31:02 +01:00
Danny Al-Gaaf
60b9b10873 Client.cc: use static_cast instead of C-Style cast
Use static_cast<T>() instead of C-Style cast.

Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
2013-02-26 19:18:58 +01:00
Sage Weil
455832a7e8 Merge pull request #75 from alram/master
Typo: pool should be root in rados/operations/crush-map.rst

Reviewed-by: Sage Weil <sage@inktank.com>
2013-02-26 10:00:41 -08:00
Danny Al-Gaaf
26e8577d29 Paxos.h: pass string name function parameter by reference
Pass 'const string name' function parameter by reference.

Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
2013-02-26 18:50:13 +01:00
Alexandre Marangone
dc55c29348 Typo: pool should be root in rados/operations/crush-map.rst
Signed-off-by: Alexandre Marangone <alexandre.marangone@inktank.com>
2013-02-26 09:47:58 -08:00
Sage Weil
8f7d56c5a6 Merge pull request #73 from dalgaaf/wip-da-sca-cppcheck-emptiness
fix more emptiness checks 

Reviewed-by: Sage Weil <sage@inktank.com>
2013-02-26 09:00:38 -08:00
Sage Weil
25768c2a8b Merge pull request #74 from dalgaaf/wip-da-sca-misc
mds/journal.cc: fix assert in replay()

Let's see how many bugs this has been hiding... :)

Reviewed-by: Sage Weil <sage@inktank.com>
2013-02-26 08:58:51 -08:00
Danny Al-Gaaf
ef20382d02 osd/ReplicatedPG.cc: remove unused variables
Remove unused variable declarations.

Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
2013-02-26 16:27:22 +01:00
Danny Al-Gaaf
fd5ce75b87 osd_types.cc: add parenthesis around expression
Add parenthesis around expressions like (x && y & z).

Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
2013-02-26 16:24:46 +01:00
Danny Al-Gaaf
c0da0e122d OSDMap.cc: add parenthesis around expression
Add parenthesis around expressions like (x && y & z).

Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
2013-02-26 16:23:25 +01:00
Danny Al-Gaaf
83eadd894c PGMonitor.cc: add parenthesis around expression
Add parenthesis around expressions like (x && y & z).

Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
2013-02-26 16:13:09 +01:00
Danny Al-Gaaf
43e2b51a1e Client.cc: add parenthesis around expression
Add parenthesis around expressions like (x && y & z).

Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
2013-02-26 16:03:19 +01:00
Danny Al-Gaaf
d783f95c20 CephxProtocol.cc: catch end_of_buffer by reference
Follow 'Throw by value, catch by reference' to void copying and
potential slicing the exception.

Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
2013-02-26 15:56:03 +01:00
Danny Al-Gaaf
bf10e5e948 CephxProtocol.cc: catch error by reference
Follow 'Throw by value, catch by reference' to void copying and
potential slicing the exception.

Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
2013-02-26 15:54:19 +01:00
Danny Al-Gaaf
d0e48ebb35 crushtool.cc: remove unneeded function declaration
Remove unneeded function declarations (data_analysis() is unused and
usage() is not needed).

Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
2013-02-26 15:47:05 +01:00
Danny Al-Gaaf
a6b3cc78c9 mds/journal.cc: fix assert in replay()
Fix assert in replay(), check if mds->sessionmap.version is cmapv
instead of assign cmapv to  mds->sessionmap.version. Add missing
second '='.

Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
2013-02-26 15:21:38 +01:00
Danny Al-Gaaf
88555e7285 KeyValueDBMemory.cc: use empty() instead of size() == 0
Use empty() since it should be prefered as it has, following the
standard, a constant time complexity regardless of the containter
type. The same is not guaranteed for size().

Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
2013-02-26 11:25:49 +01:00
Danny Al-Gaaf
4059d94a52 ReplicatedPG.cc: use empty() instead of size() == 0
Use empty() since it should be prefered as it has, following the
standard, a constant time complexity regardless of the containter
type. The same is not guaranteed for size().

Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
2013-02-26 11:19:25 +01:00
Danny Al-Gaaf
a2d842f97b FileStore.cc: use if(!empty()) instead of if(size())
Use empty() since it should be prefered as it has, following the
standard, a constant time complexity regardless of the containter
type. The same is not guaranteed for size().

Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
2013-02-26 11:16:56 +01:00
Danny Al-Gaaf
e3b27b7b67 mon_store_converter.cc: use empty() instead of size()
Use empty() since it should be prefered as it has, following the
standard, a constant time complexity regardless of the containter
type. The same is not guaranteed for size().

Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
2013-02-26 11:15:35 +01:00
Danny Al-Gaaf
ed83d4b9df Paxos.cc: use empty() instead of size()
Use empty() since it should be prefered as it has, following the
standard, a constant time complexity regardless of the containter
type. The same is not guaranteed for size().

Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
2013-02-26 11:13:45 +01:00
Danny Al-Gaaf
14716fd24b Monitor.h: use empty() instead of !size()
Use empty() since it should be prefered as it has, following the
standard, a constant time complexity regardless of the containter
type. The same is not guaranteed for size().

Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
2013-02-26 11:01:42 +01:00
Danny Al-Gaaf
7a81b07f24 Monitor.cc: use empty() instead of size()
Use empty() since it should be prefered as it has, following the
standard, a constant time complexity regardless of the containter
type. The same is not guaranteed for size().

Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
2013-02-26 11:01:29 +01:00
Gary Lowell
1c8ffc5852 ceph.spec.in: Create placeholder directorys under /var/lib/ceph (Bug 4119)
Signed-off-by: Gary Lowell  <gary.lowell@inktank.com>
2013-02-25 23:51:25 -08:00
Gary Lowell
aa79077c24 configure.ac: Add test for c++ compiler.
The AC_PROG_CXX macro sets a flag if a C++ compiler is found
but does not fail if one is not found, it left to application
to test the flags as needed. This fix will issue an error
when a c++ compiler is not found.  Bug 3955.

Signed-off-by: Gary Lowell  <gary.lowell@inktank.com>

it's not installed, this fix adds an error message for a
2013-02-25 19:35:34 -08:00
Dan Mick
ccdafa067a test_lock_fence.sh, rbdrw.py: rbd lock/fence test
qa/workunits/rbd/test_lock_fence.sh runs using test/rbdrw.py

rbdrw.py creates an image, locks it, and runs an I/O loop;
test_lock_fence.sh runs it, waits, and then blacklists that client,
which causes rbdrw.py to get ESHUTDOWN on operations thereafter.
Currently doesn't work with rbd caching enabled.

rbd.py gets new exception type for ESHUTDOWN

Fixes: #3190
Signed-off-by: Dan Mick <dan.mick@inktank.com>
Signed-off-by: Josh Durgin <josh.durgin@inktank.com>
2013-02-25 18:17:40 -08:00
Sage Weil
1f1427415c Merge remote-tracking branch 'gh/wip-4249-master' 2013-02-25 17:48:16 -08:00
Sage Weil
9096d70642 Merge remote-tracking branch 'gh/wip-4249' into next 2013-02-25 17:48:07 -08:00
Sage Weil
21471c1ef4 Merge remote-tracking branch 'gh/wip-4252' 2013-02-25 17:41:07 -08:00
Sage Weil
98408f5ca4 mon: PaxosService: remove lingering uses of paxos getters and wait methods
We should use the PaxosServices getters, setters, and wait methods when and
wherever possible.  These must have fallen through the cracks during the
merge.

Signed-off-by: Joao Eduardo Luis <joao.luis@inktank.com>
2013-02-25 16:55:07 -08:00
Josh Durgin
9d472ca75d systest: restrict list error acceptance
Only ignore errors after the midway point if the midway_sem_post is
defined.

Signed-off-by: Josh Durgin <josh.durgin@inktank.com>
(cherry picked from commit 5b24a68b6e)
2013-02-25 16:50:47 -08:00
Josh Durgin
b64d26176a systest: fix race with pool deletion
The second test have pool deletion and object listing wait on the same
semaphore to connect and start. This led to errors sometimes when the
pool was deleted before it could be opened by the listing process. Add
another semaphore so the pool deletion happens only after the listing
has begun.

Fixes: #4147
Signed-off-by: Josh Durgin <josh.durgin@inktank.com>
(cherry picked from commit b0271e3905)
2013-02-25 16:50:44 -08:00
Sage Weil
29642d33c3 Merge remote-tracking branch 'gh/wip-4147' 2013-02-25 16:49:37 -08:00
John Wilkins
9e6025b697 doc: Added subnet example and verbiage to network settings.
fixes: #4049

Signed-off-by: John Wilkins <john.wilkins@inktank.com>
2013-02-25 16:29:57 -08:00
John Wilkins
5e5530be19 doc: Added content to remove REJECT rules from iptables.
Signed-off-by: John Wilkins <john.wilkins@inktank.com>
2013-02-25 16:12:50 -08:00
Josh Durgin
9c693d7e83 test_rbd: move flatten tests back into TestClone
They need the same setup, and it's easy enough to run specific
subtests. Making them a separate subclass accidentally duplicated
tests from TestClone.

Signed-off-by: Josh Durgin <josh.durgin@inktank.com>
2013-02-25 16:09:29 -08:00
Josh Durgin
55bd7687bf qa: enable watch-notify dependent test
This works now that watch-notify has been reworked a bit.

Signed-off-by: Josh Durgin <josh.durgin@inktank.com>
2013-02-25 15:59:48 -08:00
Josh Durgin
345aa2df54 test_rbd: close image before removing it
This error was masked before by watch notify not differentiating
between watches from the same client with different cookies.
Reopen the image at the end of this test so teardown works.

Signed-off-by: Josh Durgin <josh.durgin@inktank.com>
2013-02-25 15:56:00 -08:00
John Wilkins
9ab0fd758a doc: Added a small ref section for osd config reference.
Signed-off-by: John Wilkins <john.wilkins@inktank.com>
2013-02-25 15:28:07 -08:00
John Wilkins
3ef6d5bde1 doc: Updated osd configuration reference.
Signed-off-by: John Wilkins <john.wilkins@inktank.com>
2013-02-25 15:27:09 -08:00
Josh Durgin
5b24a68b6e systest: restrict list error acceptance
Only ignore errors after the midway point if the midway_sem_post is
defined.

Signed-off-by: Josh Durgin <josh.durgin@inktank.com>
2013-02-25 15:02:56 -08:00
Josh Durgin
b0271e3905 systest: fix race with pool deletion
The second test have pool deletion and object listing wait on the same
semaphore to connect and start. This led to errors sometimes when the
pool was deleted before it could be opened by the listing process. Add
another semaphore so the pool deletion happens only after the listing
has begun.

Fixes: #4147
Signed-off-by: Josh Durgin <josh.durgin@inktank.com>
2013-02-25 14:55:37 -08:00
Josh Durgin
2b7deeea2e qa: output rados test names as they run
So we don't have to figure out which test is running from the output,
which can be difficult with the system tests.

Signed-off-by: Josh Durgin <josh.durgin@inktank.com>
2013-02-25 14:09:44 -08:00
Samuel Just
62999ea2d3 PG,ReplicatedPG: use pg_has_reset_since to discard old async events
Local async events are obsolete if the pg is deleting or if the
epoch at which they were created is prior to last_peering_reset.

Signed-off-by: Samuel Just <sam.just@inktank.com>
2013-02-25 13:30:11 -08:00
Samuel Just
67225339dc PG::build_scrub_map: detect race with peering via last_peering_reset
Signed-off-by: Samuel Just <sam.just@inktank.com>
2013-02-25 13:30:11 -08:00
Samuel Just
04ee8f478b ReplicatedPG::C_OSD_CommittedPushedObject: use intrusive_ptr for pg
Signed-off-by: Samuel Just <sam.just@inktank.com>
2013-02-25 13:30:11 -08:00
Samuel Just
a01dea6af9 ReplicatedPG::C_OSD_CommittedPushedObject take epoch submitted
What we really care about is that the epoch in which the Context
was submitted is at complete() time >= last_peering_reset.

Signed-off-by: Samuel Just <sam.just@inktank.com>
2013-02-25 13:30:11 -08:00
Josh Durgin
c4537347b3 librbd: remove unused internal method
get_snap_size() has been replaced by get_image_size(snap_id) everywhere.

Signed-off-by: Josh Durgin <josh.durgin@inktank.com>
2013-02-25 12:12:57 -08:00
Josh Durgin
db5fc2270f Merge branch 'wip-4249' into wip-4249-master
Make snap_rollback() only take a read lock on snap_lock, since
it does not modify snapshot-related fields.
Conflicts:
	src/librbd/internal.cc
2013-02-25 12:12:04 -08:00
Josh Durgin
5806226cf0 librbd: drop snap_lock before invalidating cache
Writeback will take the snap_lock, so read everything we need under it
before invalidating the cache. This avoids a recursive lock when writeback
uses snap_lock while snap_rollback() was holding it.

Remove a not-very-useful debugging message that depended on snap_lock being held.

Fixes: #4249
Backport: bobtail
Signed-off-by: Josh Durgin <josh.durgin@inktank.com>
2013-02-25 11:36:58 -08:00