Sage Weil
cd9f7df917
Merge remote-tracking branch 'gh/wip-dump-ops-in-flight'
...
Reviewed-by: Sage Weil <sage@newdream.net>
2012-02-23 14:38:03 -08:00
Sage Weil
d85e9153ef
mon: use pending_mdsmap for deactivate
...
We should always look at the proposed map to avoid weird races.
Signed-off-by: Sage Weil <sage@newdream.net>
2012-02-23 14:28:46 -08:00
Sage Weil
a1544c0e06
doc: 'deactivate mds' instead of 'stop mds'
...
Signed-off-by: Sage Weil <sage@newdream.net>
2012-02-23 14:28:46 -08:00
Sage Weil
079dd6db38
mon: mds "stop" -> "deactivate"
...
See #1820 .
Signed-off-by: Sage Weil <sage@newdream.net>
2012-02-23 14:28:46 -08:00
Yehuda Sadeh
2824c07f8d
rgw: can use swift to set bucket permissions
...
Currently only setting, not reading. Also, at the moment it's
setting the wrong permissions.
Signed-off-by: Yehuda Sadeh <yehuda@hq.newdream.net>
2012-02-23 13:56:22 -08:00
Greg Farnum
700fe079b2
test: add basic test for the OSD's dump_ops_in_flight adminsocket command
...
Signed-off-by: Greg Farnum <gregory.farnum@dreamhost.com>
2012-02-23 12:12:17 -08:00
Greg Farnum
5944016b05
osd: add "dump_ops_in_flight" to the AdminSocket.
...
Signed-off-by: Greg Farnum <gregory.farnum@dreamhost.com>
2012-02-23 12:12:14 -08:00
Sage Weil
21c43133c2
mon: refuse to stop mds if max_mds will make it rejoin
...
Otherwise the MDS will leave the cluster and immediately rejoin, which is
useless and confusing to users. See #1820 .
Signed-off-by: Sage Weil <sage@newdream.net>
2012-02-23 12:08:52 -08:00
Sage Weil
7700ea94f9
crushtool: add --reweight-item cli tests
...
Test list, tree, and straw buckets.
Signed-off-by: Sage Weil <sage@newdream.net>
2012-02-23 11:53:48 -08:00
Sage Weil
286df2db3e
crush: fix weight adjust for list, tree buckets
...
Fix the typo. Code now matches that for straw buckets.
Reported-by: ZhuRongze <zrz4ceph@gmail.com>
Signed-off-by: Sage Weil <sage@newdream.net>
2012-02-23 11:39:57 -08:00
Sage Weil
963dec8288
Merge branch 'wip-2090'
...
Reviewed-by: Greg Farnum <gregory.farnum@dreamhost.com>
2012-02-23 11:16:17 -08:00
Sage Weil
62a113aaa7
mon: unlock mon before msgr shutdown
...
The ceph_mon.cc main() will delete mon when the msgr dispatch thread
completes. Make sure we unlock before we shut down the messenger, and
avoid touching this after messenger->shutdown().
Fixes : #2090
Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
2012-02-23 11:15:05 -08:00
Sage Weil
d1fe2f8fd7
mon: deprecate mon 'stop' command
...
Send SIGTERM.
Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
2012-02-23 11:15:05 -08:00
Sage Weil
962aa3ea33
msgr: join dispatch_thread after it completes
...
This is just for completeness. No change in behavior, since we don't
get here until the thread has signaled it is done.
Drop the destroy() overload, since we join earlier.
Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
2012-02-23 11:14:51 -08:00
Sage Weil
d8192222d0
Merge remote-tracking branch 'gh/wip-stop'
2012-02-23 11:04:30 -08:00
Sage Weil
86a54a6e44
filestore: use IOC_CLONERANGE intead of IOC_CLONE ioctl
...
This is functionally equivalent, except that valgrind doesn't complain
about a bad pointer passed to an ioctl.
Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
Reviewed-by: Samuel Just <samuel.just@dreamhost.com>
2012-02-23 09:51:31 -08:00
Sage Weil
49588e9462
osd: drop "stop" command
...
Send SIGINT.
Fixes : #1820
Signed-off-by: Sage Weil <sage@newdream.net>
2012-02-23 09:43:03 -08:00
Sage Weil
560ddf463c
osd: drop unused "stop" check
...
This is never reached: both callers handle "stop" explicitly.
Signed-off-by: Sage Weil <sage@newdream.net>
2012-02-23 09:42:11 -08:00
Sage Weil
64ca584da1
osd: don't complete recovery if unfound
...
Otherwise we fail the !needs_recovery() assert. Because we aren't
recovered. For example,
2012-02-21 16:16:13.104665 1685c700 osd.5 1217 pg[0.16( v 1215'337 lc 19'2 (0'0,1215'337] n=25 ec=1 les/c 0/1061 1210/1210/1210) [5,3] r=0 lpr=1210 mlcod 0'0 active m=23 u=23 snaptrimq=[1~99,9b~e,aa~72,11d~3d,15b~e,16a~f,17a~5,180~4,185~1a,1a0~a,1ac~10,1bd~4,1c2~8,1cb~1,1cd~1,1cf~1a,1ea~10,1fb~6,202~2,205~2,209~2,20c~8,215~2,218~5,21e~1,220~1,222~9,22c~4,231~3,235~2,238~3,23e~2,241~4,246~1,248~1,24b~1,24d~9,257~6,25e~1,263~1,265~2,268~3,26e~1,273~1,275~5,27e~1,280~2]] needs_recovery osd.3 has 23 missing
osd/PG.cc: In function 'boost::statechart::result PG::RecoveryState::Active::react(const PG::RecoveryState::RecoveryComplete&)' thread 1685c700 time 2012-02-21 16:16:13.108923
osd/PG.cc: 4070: FAILED assert(!pg->needs_recovery())
ceph version 0.42-70-g0e4367a (commit:0e4367aaac88b99c36386b6ce5e8d816fdd4ada0)
1: (PG::RecoveryState::Active::react(PG::RecoveryState::RecoveryComplete const&)+0x1b3) [0x6a1173]
2: (boost::statechart::simple_state<PG::RecoveryState::Active, PG::RecoveryState::Primary, boost::mpl::list<mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na, mpl_::na>, (boost::statechart::history_mode)0>::react_impl(boost::statechart::event_base const&, void const*)+0x121) [0x6c7301]
3: (boost::statechart::state_machine<PG::RecoveryState::RecoveryMachine, PG::RecoveryState::Initial, std::allocator<void>, boost::statechart::null_exception_translator>::process_event(boost::statechart::event_base const&)+0x6b) [0x6bfc6b]
4: (PG::RecoveryState::handle_recovery_complete(PG::RecoveryCtx*)+0x10c) [0x67c03c]
5: (ReplicatedPG::start_recovery_ops(int, PG::RecoveryCtx*)+0x241) [0x4f83c1]
6: (OSD::do_recovery(PG*)+0x345) [0x54b3e5]
7: (ThreadPool::worker()+0xa26) [0x619e66]
8: (ThreadPool::WorkThread::entry()+0xd) [0x57ad5d]
9: (()+0x7971) [0x5037971]
10: (clone()+0x6d) [0x679f92d]
Signed-off-by: Sage Weil <sage@newdream.net>
Reviewed-by: Samuel Just <samuel.just@dreamhost.com>
2012-02-23 09:39:50 -08:00
Sage Weil
3628f901d4
mds: make EMetaBlob::fullbit::old_inodes non-ptr
...
No need to put this separately on the heap, as a static map<> isn't much
more expensive than a pointer. Also, this ensures we unconditonally
reset in->old_inodes to a potentially empty value if we replay the same
inode multiple times and lose old inodes in subsequent versions.
Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
2012-02-22 21:24:27 -08:00
Alexandre Oliva
7842bb50c7
mds: Add old_inodes to emetablob
...
Add information about old inodes to the mds journal.
Signed-off-by: Alexandre Oliva <oliva@lsd.ic.unicamp.br>
Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
2012-02-22 21:21:29 -08:00
Alexandre Oliva
26b5675301
Fix ceph-mds --journal-reset
...
Complete configuration initialization for special actions, and
hold Resetter lock while running reset.
Signed-off-by: Alexandre Oliva <oliva@lsd.ic.unicamp.br>
Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
2012-02-22 21:08:19 -08:00
Sage Weil
761ecc69c2
Makefile: include encoding check scripts in dist tarball
...
This makes 'make distcheck' happy. Well, more happy at least; it's still
cranky but I can't tell why.
Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
2012-02-21 17:11:02 -08:00
Sage Weil
7fab4fa06c
debian: add ceph-dencoder
...
Signed-off-by: Sage Weil <sage@newdream.net>
2012-02-21 15:44:55 -08:00
Sage Weil
cd5a8f7e60
ceph.spec.in: add ceph-dencoder
...
Signed-off-by: Sage Weil <sage@newdream.net>
2012-02-21 15:44:55 -08:00
Sage Weil
a6c7f999d0
ceph-dencoder: man page
...
Signed-off-by: Sage Weil <sage@newdream.net>
2012-02-21 15:44:55 -08:00
Yehuda Sadeh
8c48a8e078
rgw: read correct acls for swift metadata update ops
...
Signed-off-by: Yehuda Sadeh <yehuda@hq.newdream.net>
2012-02-21 15:24:25 -08:00
Sage Weil
e67c0ff0c6
osd: make object_info_t::dump using hobject_t and object_locator_t dumpers
...
Makes the output more readable.
Signed-off-by: Sage Weil <sage@newdream.net>
2012-02-21 15:08:26 -08:00
Sage Weil
f7feded073
Merge remote-tracking branch 'gh/wip-dump-stuck-pgs'
...
Reviewed-by: Sage Weil <sage@newdream.net>
2012-02-21 14:46:00 -08:00
Sage Weil
04c8e01d80
Merge remote-tracking branch 'gh/wip-osd-write'
...
Reviewed-by: Josh Durgin <josh.durgin@dreamhost.com>
2012-02-21 14:44:44 -08:00
Sage Weil
55a606519b
osdmap: dump embedded crush map in Incremental::dump()
...
Signed-off-by: Sage Weil <sage@newdream.net>
2012-02-21 14:43:23 -08:00
Yehuda Sadeh
2365c77aad
rgw: maintain separate policies for object and bucket
...
Signed-off-by: Yehuda Sadeh <yehuda@hq.newdream.net>
2012-02-21 14:39:20 -08:00
Sage Weil
cc78fdaaab
Merge branch 'wip-crush'
...
Reviewed-by: Josh Durgin <josh.durgin@dreamhost.com>
2012-02-21 14:39:16 -08:00
Sage Weil
d2335fab5b
crush: write CrushWrapper:dump()
...
Signed-off-by: Sage Weil <sage@newdream.net>
2012-02-21 14:37:50 -08:00
Sage Weil
27c8a3f4d2
test/rados-api/misc: fix LibRadosMisc.Operate1PP test
...
It's a mutation, so we get a result of 0 (or error).
Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
2012-02-21 13:58:17 -08:00
Sage Weil
174f6b845c
osd: refuse to return data payload if request wrote anything
...
Write operations aren't allowed to return a data payload because
we can't do so reliably. If the client has to resend the request
and it has already been applied, we will return 0 with no
payload. Non-deterministic behavior is no good.
See #1765 .
Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
2012-02-21 13:58:17 -08:00
Sage Weil
270bb5cfce
Merge branch 'wip-osdmap'
...
Reviewed-by: Josh Durgin <josh.durgin@dreamhost.com>
2012-02-21 13:51:27 -08:00
Sage Weil
7cafa255c5
osdmap: dump fullmap from dump()
...
Signed-off-by: Sage Weil <sage@newdream.net>
2012-02-21 13:50:34 -08:00
Sage Weil
80d86306f9
Merge branch 'wip-1821'
...
Reviewed-by: Josh Durgin <josh.durgin@dreamhost.com>
2012-02-21 13:43:36 -08:00
Yehuda Sadeh
0e4367aaac
rgw: accepted access key chars should be url safe
...
Signed-off-by: Yehuda Sadeh <yehuda@hq.newdream.net>
2012-02-21 12:18:49 -08:00
Yehuda Sadeh
17d38700dd
rgw: don't invalidate cache when adding xattrs
2012-02-21 09:29:57 -08:00
Sage Weil
cedb3d738f
ceph: if 'pg <pgid> ..' doesn't parse a pgid, send to mon
...
E.g., 'pg dump'. Sigh.
Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
2012-02-20 20:40:35 -08:00
Sage Weil
9927671b3d
Makefile: fix misplaced unit tests
...
These weren't run on make check because they were defined in the wrong
spot.
Signed-off-by: Sage Weil <sage@newdream.net>
2012-02-20 16:03:46 -08:00
Sage Weil
1ff75684eb
hobject_t: remove unused back_up_to_bounding_key()
...
This was a path not taken in the backfill code.
Signed-off-by: Sage Weil <sage@newdream.net>
2012-02-20 16:03:39 -08:00
Sage Weil
4d3de03811
osd: sched_scrub() outside of map_lock
...
Inside sched_scrub() we call _lookup_lock_pg(), which takes
map_lock.get_read(). That's technically okay because RWLock read side is
recursive, but lockdep doesn't know that, and we don't need map_lock
because we hold osd_lock.
Signed-off-by: Sage Weil <sage@newdream.net>
2012-02-20 14:41:28 -08:00
Sage Weil
0b7f6e397c
global: resurrect lockdep
...
Add 'lockdep' config option, and initialize g_lockdep from that in
global_init().
Signed-off-by: Sage Weil <sage@newdream.net>
2012-02-20 14:38:20 -08:00
Sage Weil
443203705c
mon: disable pg_num adjustment
...
Until #1515 is fixed/reimplemented.
Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
2012-02-20 13:00:14 -08:00
Sage Weil
7d3ae37511
mon: use encode function for new Incremental
...
When we encode an Incremental, use the encode wrapper function, so that
we can capture the encoded struct when building with ENCODE_DUMP. Set
all features (the default when encode() is called directly).
Signed-off-by: Sage Weil <sage@newdream.net>
2012-02-20 11:02:49 -08:00
Sage Weil
f3a273a657
osdmap: successfully decode short map
...
When we send (old) maps to the kclient, we omit the extended section. Lets
decode those (old, abbreviated maps) successfully, too.
Signed-off-by: Sage Weil <sage@newdream.net>
2012-02-20 10:56:42 -08:00
Sage Weil
f3020c4ae7
osdmap: use FEATURE encoder macro
...
This generates encode/decode functions that pass feature bits into the
encoder, allowing us to encode old formats.
Signed-off-by: Sage Weil <sage@newdream.net>
2012-02-20 10:56:42 -08:00