Commit Graph

13612 Commits

Author SHA1 Message Date
Sage Weil
b21fbab19d journaler: adjusted requested/received_pos when dropping journal tail
Signed-off-by: Sage Weil <sage@newdream.net>
2011-04-01 15:58:34 -07:00
Sage Weil
65714c59ee mds: show correct incarnation on mdsmap update
Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
2011-04-01 12:19:42 -07:00
Sage Weil
dec5b6b8f8 mds: fix discover_path
If we have the base dirfrag, do not request it.  Otherwise we can get a
reply that contains only that (partial progress), and we will then fail
to wake up our dentry waiter.

This was broken with the rewrite in b58b8d098e.

Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
2011-04-01 11:37:26 -07:00
Wido den Hollander
4cc7dcc487 mkcephfs: Actually do a mkfs.btrfs
Signed-off-by: Wido den Hollander <wido@widodh.nl>
Signed-off-by: Sage Weil <sage@newdream.net>
2011-03-31 11:44:00 -07:00
Josh Durgin
e44a547059 testlibrbd: fix warnings
Signed-off-by: Josh Durgin <josh.durgin@dreamhost.com>
2011-03-30 17:54:26 -07:00
Josh Durgin
5141e90bdf testlibrbd: clean up and add tests for snapshots
Signed-off-by: Josh Durgin <josh.durgin@dreamhost.com>
2011-03-30 17:26:59 -07:00
Josh Durgin
e424171cbc librbd: fix snapshot handling
To ensure consistency, always set the snap context when the header is
updated. If snapid is set, we update librados' snapid when refreshing
the header as well. Also use CEPH_NOSNAP instead of 0 as the default
snapid to prevent confusion. These changes fix snapshot creation
and removal, and prevent writing to a snapshot.

Rollback is fixed by using selfmanaged_snapshot_rollback.

Signed-off-by: Josh Durgin <josh.durgin@dreamhost.com>
2011-03-30 17:26:59 -07:00
Josh Durgin
7b28d5af67 librados, librbd: add some debugging messages
Signed-off-by: Josh Durgin <josh.durgin@dreamhost.com>
2011-03-30 17:26:59 -07:00
Josh Durgin
ab6c036543 librados: add selfmanaged_snap_rollback
This was removed in 2cb86f713d, but is
required for selfmanaged snaps because their snapids aren't in the
pool's snap list, which is how regular rollback finds them.

Signed-off-by: Josh Durgin <josh.durgin@dreamhost.com>
2011-03-30 17:26:59 -07:00
Josh Durgin
3946779b06 librados: return -EROFS when trying to write to a snapshot
Signed-off-by: Josh Durgin <josh.durgin@dreamhost.com>
2011-03-30 17:26:59 -07:00
Samuel Just
69f174c082 mkcephfs: minor fix
line 400: && $type == "osd" is not always valid.

Signed-off-by: Samuel Just <samuel.just@dreamhost.com>
2011-03-30 16:49:37 -07:00
Samuel Just
cf3bb44d47 mkcephfs: copy to daemon nodes for each daemon
The tmp directory is removed after each daemon.  Previously, this would
break if two daemons were on the same node.  Now, the files will be
copied for each daemon.

Signed-off-by: Samuel Just <samuel.just@dreamhost.com>
2011-03-30 16:49:21 -07:00
Sage Weil
5a1ccdcea8 journaler: don't block when we adjust back write_pos
is_readable() may need to adjust the write_pos backward, but will return
false.  If we are at the end we still need to wake up any waiters so they
know about it.

Signed-off-by: Sage Weil <sage@newdream.net>
2011-03-30 16:46:04 -07:00
Sage Weil
c6f1cced64 rados: print error message on exit
Signed-off-by: Sage Weil <sage@newdream.net>
2011-03-30 16:32:26 -07:00
Sage Weil
ab8871aef0 rados: add 'tmap {set,create} obj key value'
Signed-off-by: Sage Weil <sage@newdream.net>
2011-03-30 16:32:15 -07:00
Sage Weil
58fc0cf475 osd: add tmap key (exclusive) create
Return EEXIST if a key already exists.

Signed-off-by: Sage Weil <sage@newdream.net>
2011-03-30 16:31:59 -07:00
Greg Farnum
493e2d952a OSD: ReplicatedPG: commits should be high priority, like acks.
This was consistently breaking stuff for some people, as the acks were
high priority but the commits weren't. They should match.

Signed-off-by: Greg Farnum <gregory.farnum@dreamhost.com>
2011-03-30 13:30:43 -07:00
Sage Weil
a2ec936a7c cosd: fix bind to specific address
Do not default to public_addr for cluster, heartbeat messengers.

Signed-off-by: Sage Weil <sage@newdream.net>
2011-03-29 16:23:55 -07:00
Sage Weil
138f360d00 cmon: fix typo
Signed-off-by: Sage Weil <sage@newdream.net>
2011-03-29 14:49:09 -07:00
Sage Weil
1601df6554 Merge branch 'stable' into next
Conflicts:
	configure.ac
	debian/changelog
	src/msg/SimpleMessenger.cc
2011-03-29 14:47:57 -07:00
Sage Weil
41899a3bde cmon: add --inject-monmap option
This lets you manually inject a monmap into a down monitor.  This is useful
in cases where you need to change the monmap but aren't able to get a
quorum with the old map.

Signed-off-by: Sage Weil <sage@newdream.net>
2011-03-29 11:58:13 -07:00
Sage Weil
de6338c418 mkcephfs: don't clobber osdmap when importing crushmap
Signed-off-by: Sage Weil <sage@newdream.net>
2011-03-29 11:20:49 -07:00
Sage Weil
e1ce76750b mds: include .ceph is root directory
If the dentry isn't marked dirty _commit_partial won't save it.  This is
caught later by the check_rstats() (or anyone actually trying to use the
/.ceph directory).

Fixes: #938
Signed-off-by: Sage Weil <sage@newdream.net>
2011-03-25 14:34:17 -07:00
Sage Weil
009714b8a2 mds: fix client session removal on journal replay
We want to remove the client session from the map as long as it is not
attached to an actual messenger Connection.  This key point got lost
somewhere the last time the session states were restructured.  It is now
explicit.

This fixes the symptom where a recovering MDS reconnect has to time out on
clients that cleanly closed their sessions.

Also, fix a use-after-free when (uselessly) printing the session state.

Signed-off-by: Sage Weil <sage@newdream.net>
2011-03-25 13:50:45 -07:00
Laszlo Boszormenyi
5658857afd Fix Debian librados1 -> librados2 package renames
The librados2{,-dbg,-dev} packages should conflict with and replace their
librados1{,-dbg,-dev} counterpart.
2011-03-25 12:54:22 -07:00
Colin Patrick McCabe
2a53c83c47 obsync: Remove deadcode
Signed-off-by: Colin McCabe <colin.mccabe@dreamhost.com>
2011-03-25 12:30:27 -07:00
Colin Patrick McCabe
ede7e3df33 units: remove "performance test" from crypto units
Signed-off-by: Colin McCabe <colin.mccabe@dreamhost.com>
2011-03-25 10:37:49 -07:00
Colin Patrick McCabe
50d0947a84 units: fix cauthtool usage test
Signed-off-by: Colin McCabe <colin.mccabe@dreamhost.com>
2011-03-25 10:37:33 -07:00
Colin Patrick McCabe
1e7b371c28 rgw: escape XML attributes
Signed-off-by: Colin McCabe <colin.mccabe@dreamhost.com>
2011-03-25 10:33:32 -07:00
Colin Patrick McCabe
7eca830b24 boto_tool.py: usage fix
Signed-off-by: Colin McCabe <colin.mccabe@dreamhost.com>
2011-03-25 10:23:54 -07:00
Colin Patrick McCabe
aac1ef57ad rgw: don't reject requests that don't have bucket
Some requests don't specify a bucket. Allow those!

Signed-off-by: Colin McCabe <colin.mccabe@dreamhost.com>
2011-03-25 10:23:05 -07:00
Colin Patrick McCabe
658b14040b common_init: allow init without config file
Add a flag, CINIT_FLAG_NO_DEFAULT_CONFIG_FILE, that specifies that the
program should not read a config file by default.

Signed-off-by: Colin McCabe <colin.mccabe@dreamhost.com>
2011-03-24 17:28:46 -07:00
Greg Farnum
227ff6e37a MDSMon: Add mon_force_standby_active config option.
If this is set to true (which it defaults to), then the mon
will force MDSes configured as mds_standby_replay to become active.
For #893.

Signed-off-by: Greg Farnum <gregory.farnum@dreamhost.com>
2011-03-24 16:52:06 -07:00
Sage Weil
1324c935c7 filestore: fix journaling for writeahead, parallel modes
This was broken by c866536bff: build_op() clobbers
the local tls, so we need to use o->tls instead.

Signed-off-by: Sage Weil <sage@newdream.net>
2011-03-24 16:13:21 -07:00
Sage Weil
d7f4323e74 filestore: include stat result (size) in debug output
Signed-off-by: Sage Weil <sage@newdream.net>
2011-03-24 14:25:16 -07:00
Sage Weil
64141a4a32 osd: let single large ops through the throttler
Otherwise we block indefinitely on a single op that's larger than the
throttler limit.

Signed-off-by: Sage Weil <sage@newdream.net>
2011-03-24 14:25:15 -07:00
Yehuda Sadeh
d053f53fdd rgw: fix str_to_bool 2011-03-24 14:24:30 -07:00
Yehuda Sadeh
a9633ce6c5 rgw: don't validate bucket/object names if name is empty 2011-03-24 14:24:30 -07:00
Colin Patrick McCabe
7b6491af74 boto_tool rework
Change boto_tool to have more functionality.

Signed-off-by: Colin McCabe <colin.mccabe@dreamhost.com>
2011-03-24 12:59:34 -07:00
Yehuda Sadeh
e4e0ff6a23 Merge branch 'master' of ssh://ceph.newdream.net/git/ceph 2011-03-24 12:12:10 -07:00
Yehuda Sadeh
cd897e7f3e rgw: path paramter for pseudo folders 2011-03-24 12:11:41 -07:00
Sage Weil
1236ce68d4 mds: drop dead journal flush code
This is now obsolete.

Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
2011-03-24 11:54:37 -07:00
Yehuda Sadeh
7af9de97e5 Merge branch 'rgw'
Conflicts:

	src/rgw/rgw_common.h
2011-03-24 11:48:52 -07:00
Sage Weil
39be6c4404 mds: remove mds_log_unsafe mode
The mds_log_unsafe mode would wait for ack for some journal writes, and
safe for others.  Now that we can reply to client requests without waiting
for the journal to flush (as of ~2 years ago), this distinction is no
longer useful.  It is also more error-prone, as it complicates the code
and vastly expands the possible combinations of MDS failures and replay
scenarios we need to verify.

Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
2011-03-24 11:41:14 -07:00
Colin Patrick McCabe
1324f8f727 bucket name: better ip addr detection, allow caps
Signed-off-by: Colin McCabe <colin.mccabe@dreamhost.com>
2011-03-24 10:41:08 -07:00
Colin Patrick McCabe
7fa90ecb52 validate_bucket_name: loosen up
Allow users to create bucket names that don't meet the S3
recommendations, but which do meet the spec.

Signed-off-by: Colin McCabe <colin.mccabe@dreamhost.com>
2011-03-24 10:27:45 -07:00
Colin Patrick McCabe
0791dd4a66 boto_tool.py: add more bucket interaction stuff
Signed-off-by: Colin McCabe <colin.mccabe@dreamhost.com>
2011-03-24 10:11:43 -07:00
Sage Weil
399cae9a05 mds: reimplement laggy
The goal is for the MDS to stop processing requests when it hasn't heard
from the monitors, to avoid a situation where a rogue process goes off
doing its own thing.  Yes, if we fail it over the cmds can't write to the
object store, but it can reply to clients when it may not be appropriate
or good to do so.

The old logic was fragile and wonky, with messages getting deferred, and
then re-deferred.  This implementation is much cleaner and should be much
more efficient and less fragile.  There are still improvements to be made
as far as which messages we do/do not process when we think we're laggy.

Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
2011-03-24 09:29:01 -07:00
Sage Weil
e6b0302510 mds: check safe_pos for _expired check
Don't expire a log segment until it's committed (not acked).

Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
2011-03-24 09:29:00 -07:00
Sage Weil
a56a8133ab mds: skip redundant flush before journal segment trim
Back in olden times when we would would wait for acks for some journal
writes, we did an extra wait_for_safe() before discarding a journal segment
to make sure anything being discarded was safely committed in newers
segments.  These days mds_log_unsafe is always false (and
journaler_safe is true), so we can skip this check.

Signed-off-by: Sage Weil <sage.weil@dreamhost.com>
2011-03-24 09:29:00 -07:00