Commit Graph

10527 Commits

Author SHA1 Message Date
Sage Weil
79991ed498 debug: revamp debug/logging
- By default, append to $type.$name.log.
- Get old $hostname.$pid + $type.$name symlink behavior only with
  g_conf.log_per_instance
- Add new g_conf.log_file option to force a particular file.
2010-07-01 08:47:35 -07:00
Greg Farnum
1bd46c0480 client: set MetaRequest::inode to the inode or directory inode whenever possible.
Provides link to caps, useful when requests come back ESTALE or similar.
2010-06-30 16:10:12 -07:00
Greg Farnum
e5b60faac7 client: set inode/dentry fields where available 2010-06-30 16:10:11 -07:00
Greg Farnum
beeb08bb09 client: remove now-unused authority and pick_replica functions 2010-06-30 16:10:09 -07:00
Greg Farnum
fa62e9db4b client: rewrite choose_target_mds to more closely mirror kclient logic and be correct. 2010-06-30 16:08:56 -07:00
Greg Farnum
39796b4794 client: make fragmap updates a little more space efficient.
If the auth is the same as the parent, don't add to the map (and remove if
it's already there). Absence is interpreted the same as a value of -1.
2010-06-30 16:08:07 -07:00
Greg Farnum
60f2672ee2 client: add mds_num to MDSSession struct 2010-06-30 16:08:07 -07:00
Greg Farnum
0992001c1e client: clean up Inode::authority 2010-06-30 16:06:52 -07:00
Greg Farnum
4f2f78dd0e client: move all mds selection code into choose_target_mds 2010-06-30 16:06:52 -07:00
Greg Farnum
060d22d043 client: remove dead code 2010-06-30 16:06:52 -07:00
Greg Farnum
194986a3a1 client: remove Inode::dir_auth data member 2010-06-30 16:06:52 -07:00
Greg Farnum
abd26eea23 client: initialize auth_caps in Inode! Prevents bad pointer derefs. 2010-06-30 16:06:52 -07:00
Greg Farnum
18c305abb8 qa: set runoncfuse.sh to run cfuse in background and kill at end of tests.
This is an imperfect solution at best, since it doesn't handle errors at all,
but it'll have to do for now.
2010-06-30 16:06:52 -07:00
Yehuda Sadeh
bfd335c2b1 rbd: some header cleanup 2010-06-30 16:06:57 -07:00
Yehuda Sadeh
77a1664af6 rbdtool: implement snap rollback 2010-06-30 16:06:50 -07:00
Sage Weil
2fdd43e71f buffer: handle write_fd() on empty bufferlist 2010-06-30 15:44:38 -07:00
Sage Weil
8410e6a65a osd: fix, cleanup ack/disk reply logic
There was a bug where we would get no reply if we could send ondisk but
the client didn't want it.  This simplifies and cleans up the checks
to make more sense, removing the can_* helpers that were hiding which
checks were being done.

Signed-off-by: Sage Weil <sage@newdream.net>
2010-06-30 14:40:20 -07:00
Sage Weil
aa30dd18aa buffer: make write_fd() tolerate zero length ptrs in the bufferlist 2010-06-30 14:18:06 -07:00
Sage Weil
3235abe918 msgr: clean up aborted message handling
No need for a dummy message.  Make the (single) caller handle returning
no message as a non-error.

Signed-off-by: Sage Weil <sage@newdream.net>
2010-06-30 12:09:32 -07:00
Sage Weil
7cedafd3e3 msgr: release bytes reserved from throttlers in failure paths
If we don't release those bytes, the throttler count eventually fills up
with bytes we were going to read but didn't (due to socket errors, etc)
until we can't read anything.

Signed-off-by: Sage Weil <sage@newdream.net>
2010-06-30 12:09:31 -07:00
Sage Weil
3c80b9dafe uclient: rename make_path; cleanup/move make_request_from_Meta
Document, make it clear what kind of "path" it's really building.

Signed-off-by: Sage Weil <sage@newdream.net>
2010-06-30 11:14:50 -07:00
Yehuda Sadeh
e76ce44131 man: add man pages for cclass and cclsinfo 2010-06-30 10:32:21 -07:00
Sage Weil
2f9ea76fba filejournal: fix buffer realignment condition; useful debug output on error
We don't care about contiguous, only about page alignment.
2010-06-30 08:34:26 -07:00
Yehuda Sadeh
134a0d0f72 rbdtool: fix uninitialized variable 2010-06-29 22:58:52 -07:00
Yehuda Sadeh
0627965198 rbdtool: implement rename 2010-06-29 17:23:18 -07:00
Yehuda Sadeh
015faa8853 config: update __isarg before reading config param 2010-06-29 17:23:18 -07:00
Sage Weil
4d9f49a725 debian: include cclsinfo 2010-06-29 16:25:27 -07:00
Sage Weil
013f9e52e3 Makefile: include cclsinfo; lose the old .cc 2010-06-29 16:23:11 -07:00
Sage Weil
0812b8f4d9 Makefile: include cclass.in in dist 2010-06-29 16:08:33 -07:00
Yehuda Sadeh
f9dc4b9091 buffer: write_fd should skip empty buffers 2010-06-29 16:00:05 -07:00
Yehuda Sadeh
96b1db80d0 rbdtool: init rbd block id, later will be used for rename 2010-06-29 16:00:05 -07:00
Yehuda Sadeh
c9930900e6 cclass.in: LIBDIR=.libs in certain cases 2010-06-29 16:00:05 -07:00
Yehuda Sadeh
0f4ddbac3b cls: cls_read, cls_cxx_read return the number of bytes read 2010-06-29 16:00:05 -07:00
Sage Weil
2ec729d1fe config: use <<20 for MB 2010-06-29 14:40:30 -07:00
Sage Weil
2df8b9fd49 script/plot.pl: don't pause
Run like so:

 $ script/plot.pl path/to/log osd c_wrb [smooth bezier] | gnuplot -persist
2010-06-29 14:40:23 -07:00
Sage Weil
fcc39c8113 msgr: use dedicated reaper thread
We were calling the reaper from the wait() loop.  The problem is that
the OSD has two messengers, and only the first was in wait().. the second
wait() was only called after the first terminated (i.e, when the OSD was
shutting down).

Instead, launch a separate reaper thread when we bind, and close it out
on shutdown right after the accepter.
2010-06-29 14:40:23 -07:00
Sage Weil
3e334024f4 osd: removed unused RepGather::indata
Signed-off-by: Sage Weil <sage@newdream.net>
2010-06-29 14:38:39 -07:00
Sage Weil
852ab94a22 osd: change write osd logging timing 2010-06-29 14:38:28 -07:00
Sage Weil
419bd914dc osd: always use original Connection when replying
...even when the op came from another OSD.  Not that that should happen
anyway, since we don't forward messages currently.  (And can't, since the
OSD doesn't initiate connections to the client!)
2010-06-29 14:32:28 -07:00
Sage Weil
def4b40e96 osd: always include osd op result, result code in the first reply 2010-06-29 14:31:12 -07:00
Sage Weil
e85d98ba62 osd: track open repops in logger
Signed-off-by: Sage Weil <sage@newdream.net>
2010-06-29 14:21:06 -07:00
Sage Weil
ff8df7dcca osd: add 'logger reset' command 2010-06-29 14:21:06 -07:00
Sage Weil
fc1d1665d9 journal: set max journal write to 10MB
If we take too big a bite of data to write in a single writev(2), we can
end up making performance worse, because everyone waits for the full write
to complete.  Bigger writes mean better throughput but higher latency.
So, balance the two by placing some upper limit.
2010-06-29 14:21:05 -07:00
Yehuda Sadeh
1d517986a8 conf: fix parsing when there's no eol at the end of file 2010-06-29 09:59:26 -07:00
Sage Weil
d9dc7cb581 msg: fix entity_addr_t::parse() to return false on failure 2010-06-29 08:34:53 -07:00
CC Lien
0cb7a71c3b mkcephfs: Fix wrong maxosd when OSD ids are random ordered in ceph.conf
Hi

I got a trouble that mkcephfs will have wrong "maxosd" when you have
ceph.conf with OSD ids in random order like:

[osd2]
...
[osd0]
...
[osd1]
...

In this case, you will got "2" for the "maxosd", instead of 3.
After adding a sort, the problem seems solved.

Cheers,
CC Lien

Signed-off-by: CC Lien <cc_lien@tcloudcomputing.com>
Signed-off-by: Sage Weil <sage@newdream.net>
2010-06-29 08:22:13 -07:00
Sage Weil
50f254d0ce filejournal: fix journal write_pos advance
This was broken by bd4188a02a.  @pos needs to
be advanced (it is pass by reference) or else we just overwrite the same
bytes at the journal start over and over again.
2010-06-28 11:34:29 -07:00
Sage Weil
d9554d5db2 mount.ceph: update mount options
Signed-off-by: Thomas Mueller <thomas@chaschperli.ch>
Signed-off-by: Sage Weil <sage@newdream.net>
2010-06-28 09:57:25 -07:00
Sage Weil
6bae200b6b msgr: fix throttle deadlock
Do msgr throttle after peer policy throttle.  The msgr (dispatch) throttle
is shortlived and won't deadlock (unless dispatch blocks), so it's safe to
take last.  In contrast, the policy throttle carries over the lifetime of
the message, and may block until replication completes or whatever else.
2010-06-26 10:29:11 -07:00
Sage Weil
8f2731bc02 crushwrapper: gracefully handle crush error
crush_do_rule can return <0 in certain error cases (e.g., forcefed device
does not exist in crush map).  We should take that to mean an empty []
result instead of crashing.

Signed-off-by: Sage Weil <sage@newdream.net>
2010-06-25 21:47:00 -07:00