Commit Graph

10199 Commits

Author SHA1 Message Date
Sage Weil
701d267208 mds: better debugging on rmdir 2010-05-25 13:01:48 -07:00
Sage Weil
29ca21f50b mds: fix scatterlock gather, writebehind
We stopped overloading the virutal is_updated() when we renamed to
is_dirty.

broken by 7f19ee1ac3
2010-05-25 13:01:37 -07:00
Sage Weil
f8f9e6c422 mds: make export targets stay in mdsmap for a while
This limits the mdsmap churn some.  Keep old targets around for at least
min-max iterations before removing them.
2010-05-24 16:51:04 -07:00
Sage Weil
7f0ef1cd94 mds: balancer cleanup 2010-05-24 16:51:01 -07:00
Sage Weil
da42d0611c mds: warn on dn release that dne 2010-05-24 16:50:58 -07:00
Yehuda Sadeh
06b86ea4a8 rbd: modify rbd on-disk header 2010-05-24 16:11:29 -07:00
Yehuda Sadeh
7cf4861413 rbd: fix push_to_qemu.pl 2010-05-24 15:58:36 -07:00
Sage Weil
7113775b6d mon: roll mkmonfs functionality into cmon --mkfs 2010-05-24 15:56:02 -07:00
Sage Weil
be082f0d25 filestore: make mkfs() zap any file or dirs it finds 2010-05-24 15:56:02 -07:00
Yehuda Sadeh
5e8a6096b3 rbd: modify header, add utility to ease sync with qemu tree 2010-05-24 15:55:58 -07:00
Sage Weil
0d98fc6ffd osd: keep recovery ops in sync with pull
Call start_recovery_op from pull() instead of fixing every caller (some
were wrong).  This keeps the recovery state in sync with pulling state,
even when pull() has to pull something different (head, snapdir) first.

Fixes this crash:
osd/PG.cc: In function 'void PG::finish_recovery_op(const sobject_t&, bool)':
osd/PG.cc:1842: FAILED assert(recovering_oids.count(soid))
 1: (PG::finish_recovery_op(sobject_t const&, bool)+0x14e) [0x74caf6]
 2: (ReplicatedPG::sub_op_push(MOSDSubOp*)+0x1da8) [0x669292]
 3: (ReplicatedPG::do_sub_op(MOSDSubOp*)+0x109) [0x671a73]
 4: (OSD::dequeue_op(PG*)+0x23c) [0x6bda00]
 5: (OSD::OpWQ::_process(PG*)+0x21) [0x7387c9]
 6: (ThreadPool::WorkQueue<PG>::_void_process(void*)+0x28) [0x6f5e12]
 7: (ThreadPool::worker()+0x23a) [0x7f2404]
 8: (ThreadPool::WorkThread::entry()+0x19) [0x73b783]
 9: (Thread::_entry_func(void*)+0x20) [0x64f92a]
 10: /lib/libpthread.so.0 [0x7f7a12cf473a]
 11: (clone()+0x6d) [0x7f7a11f1e69d]
2010-05-24 14:00:43 -07:00
Sage Weil
a9b494c444 mon: no need for 'whoami' file in store
The monitor rank is provided during startup.  No need to verify it against
the monitor store, especially since the stores are otherwise identical.

This makes it simpler to restore/duplicate/wahtever a monitor.. just copy
the files.
2010-05-24 14:00:43 -07:00
Greg Farnum
56c4043acc reword blacklisted output so it's clearly discussing MDSes and not OSDs 2010-05-23 15:13:33 -07:00
Sage Weil
f7708dea1f uclient: don't unlink null dentry when getting null linkage in mds reply
This broke semi-recently when the mds started returning null linkages (and
associated leases).
2010-05-22 09:56:27 -07:00
Sage Weil
bf1cb87d25 mon: trim pgmap states even when we don't have a full quorum 2010-05-21 16:17:48 -07:00
Sage Weil
357aa03344 paxos: recover using stashed latest when state histories don't overlap
If we don't have incremental states to catch up, jump to the latest.
2010-05-21 16:17:34 -07:00
Sage Weil
51c5823472 mds: anchor multiversion inode before unlinking it
If we are going to create a remote dentry linking to a multiversion inode
we're unlinking, make sure it's anchored!

This is a bit fugly because it mirrors the logic in journal_cow_dentry. No
obvious way to use a generic helper for that though.
2010-05-21 14:55:38 -07:00
Yehuda Sadeh
fbbff74304 librados.h: add other TMAP definitions
also add a comment in rados.h about the defines in librados.h
2010-05-21 13:44:40 -07:00
Sage Weil
929048f98f mds: fix readdir pingpong on snapped dir with multiple mds
Our traverse helper will follow the auth if we're looking at snapped
metadata, but we _don't_ want that for readdir because we check auth
ourselves, and want the dir's auth, not the inode's.

Signed-off-by: Sage Weil <sage@newdream.net>
2010-05-21 12:08:35 -07:00
Sage Weil
cd1b071011 monc: pick a different mon when repicking 2010-05-21 12:08:35 -07:00
Sage Weil
3ec4605977 monc: hunting by default
Otherwise if we fail to connect to the first mon we try, we never retry.
2010-05-21 12:08:35 -07:00
Yehuda Sadeh
16ab067c75 librados: update librados to define CEPH_OSD_TMAP_SET 2010-05-20 16:19:01 -07:00
Sage Weil
0050dd84d8 mon: fix mon injectargs, and simplify 2010-05-20 11:14:41 -07:00
Sage Weil
9e4e53e073 osd: simplify --mkjournal, add --flush-journal 2010-05-20 10:58:56 -07:00
Sage Weil
41b260600c Merge branch 'osd_snapdir' into unstable 2010-05-20 10:39:57 -07:00
Sage Weil
1d9ab261ba osd: nicer debug output 2010-05-20 10:39:47 -07:00
Sage Weil
f3ab812ba0 interval_set: fix union_of _size accounting; optimize == 2010-05-20 10:33:55 -07:00
Sage Weil
e162aab360 mds: fix interval_set copy of projected_free 2010-05-19 16:43:02 -07:00
Sage Weil
155efe24dc mds: fix interval_set copy of projected_free 2010-05-19 16:42:34 -07:00
Sage Weil
f6c4827483 osd: use blank reqid for snapdir events, too
Make reqid_is_indexed() less weird.
2010-05-19 16:11:10 -07:00
Sage Weil
8dfe74f66f osd: do not index by reqid if reqid not defined 2010-05-19 16:10:14 -07:00
Sage Weil
4ed3acb08a osd: update purged_snaps in PG::Info on trim completion; and replicate 2010-05-19 15:42:50 -07:00
Yehuda Sadeh
9149dfa1ba rbd: fix snap_seq type in rbd_header 2010-05-19 13:17:32 -07:00
Sage Weil
99690f63cf initscripts: remove 'flushoncommit' from default btrfs mount options 2010-05-19 11:49:27 -07:00
Sage Weil
46891dd0e9 osd: trim snaps via replicated osd ops 2010-05-19 10:53:32 -07:00
Sage Weil
ff94c3a4f5 osd: make build_removed_snaps, is_removed_snap consistent 2010-05-19 10:42:20 -07:00
Greg Farnum
e0315485c0 rados: update documentation to mention mkpool and rmpool 2010-05-19 10:35:28 -07:00
Sage Weil
ee218a1e81 osd: fix peer_info updates on active primary 2010-05-18 15:04:17 -07:00
Sage Weil
a7769755c1 automake: some clean up 2010-05-18 08:01:23 -07:00
Yehuda Sadeh
1ea0f858fe poolop: fix MPoolOpReply decoding 2010-05-17 16:29:50 -07:00
Sage Weil
736d837e88 throttle: allow large items if we're under our max
Normally we stay under max, but for large items, take it as long as we're
currently below max.  This avoids deadlock.
2010-05-17 14:53:59 -07:00
Sage Weil
d006ae9331 osd: purged_snaps in PG::Info, queue snap trim on primary 2010-05-15 20:55:44 -07:00
Sage Weil
47ba928ba9 osd: include snapdir objects in pg log for proper replication, recovery 2010-05-14 14:18:21 -07:00
Sage Weil
ffd72a98fb strings: clean up pool op names 2010-05-14 11:36:41 -07:00
Sage Weil
d1c78fcbfe mds: allow readdir result limit in bytes
This will allow the client to bound the size of the reply it gets
2010-05-14 11:32:51 -07:00
Sage Weil
7be27f435d debian: put proper distribution in debian changelog 2010-05-14 09:43:31 -07:00
Sage Weil
33bf1a2bc2 version: use next version ~rc for unstable branch
This makes unstable always sort after stable, testing releases:
  0.21~rc-unstable... > 0.20.1-testing...
2010-05-14 09:14:00 -07:00
Sage Weil
0e177d2824 radosgw_admin: die after first bad argument 2010-05-13 13:28:46 -07:00
Sage Weil
c54d6cde61 objecter: separately track pgmap, osdmap state machine version
Mixing these up can make our request hang on the monitor indefinitely.
2010-05-13 10:47:33 -07:00
Sage Weil
52e544bf45 mon: return correct state machine epoch in replies 2010-05-13 10:47:07 -07:00