]> git.apps.os.sepia.ceph.com Git - ceph.git/log
ceph.git
16 years agoHadoop: Style fixes.
Greg Farnum [Mon, 24 Aug 2009 18:08:24 +0000 (11:08 -0700)]
Hadoop: Style fixes.

16 years agoHadoop: Move the . and .. elimination
Greg Farnum [Mon, 24 Aug 2009 17:53:21 +0000 (10:53 -0700)]
Hadoop: Move the . and .. elimination
from Java to C++ for less copying.

16 years agouclient: _getdents should *always* return the number of bytes written
Greg Farnum [Sun, 23 Aug 2009 04:50:08 +0000 (21:50 -0700)]
uclient: _getdents should *always* return the number of bytes written
at end of dir, not just assume it's zero!

16 years agoHadoop: Use the new ceph_getdnames instead of getdir
Greg Farnum [Fri, 21 Aug 2009 21:29:26 +0000 (14:29 -0700)]
Hadoop: Use the new ceph_getdnames instead of getdir
Hypertable: fix a nasty not-closing-the-dir bug

16 years agolibceph: Change the C++-only functions to be C-compatible.
Greg Farnum [Fri, 21 Aug 2009 16:31:50 +0000 (09:31 -0700)]
libceph: Change the C++-only functions to be C-compatible.
Hypertable: Change to use ceph_getdnames instead of getdir.

Hadoop: Minor updates to use the new C-style functions in libceph.

16 years agoHadoop: Fix a nasty IO bug.
Greg Farnum [Fri, 21 Aug 2009 16:12:55 +0000 (09:12 -0700)]
Hadoop: Fix a nasty IO bug.
CephInputStream.read() needs to return an int between 0 and 255,
but bytes are signed and casting preserves that. Adjust if needed.

16 years agoHadoop: Clean up ceph_delete code as it's redundant.
Greg Farnum [Fri, 21 Aug 2009 01:32:05 +0000 (18:32 -0700)]
Hadoop: Clean up ceph_delete code as it's redundant.

16 years agoHadoop: Fixed time modification in getFileStatus.
Greg Farnum [Thu, 20 Aug 2009 20:39:52 +0000 (13:39 -0700)]
Hadoop: Fixed time modification in getFileStatus.
No wonder I hadn't noticed an issue with statting!

16 years agoHadoop: Add package.html;
Greg Farnum [Wed, 19 Aug 2009 17:54:43 +0000 (10:54 -0700)]
Hadoop: Add package.html;
fix a NULL instead of null error (Java)

16 years agoHadoop: Put guards up to prevent
Greg Farnum [Tue, 18 Aug 2009 23:30:11 +0000 (16:30 -0700)]
Hadoop: Put guards up to prevent
a nasty bug in case of unspecified preferences, and the unlikely case
that initialize is called twice.

16 years agoupload tarball with 'stable' deb
Sage Weil [Mon, 24 Aug 2009 17:56:35 +0000 (10:56 -0700)]
upload tarball with 'stable' deb

16 years agov0.13 v0.13
Sage Weil [Mon, 24 Aug 2009 17:45:14 +0000 (10:45 -0700)]
v0.13

16 years agotodo
Sage Weil [Fri, 21 Aug 2009 23:35:01 +0000 (16:35 -0700)]
todo

16 years agokclient: cleanup msgpool pr_err
Sage Weil [Fri, 21 Aug 2009 21:36:54 +0000 (14:36 -0700)]
kclient: cleanup msgpool pr_err

16 years agokclient: update ctime on 'no-op' ->setattr(.., ATTR_CTIME)
Sage Weil [Fri, 21 Aug 2009 21:28:26 +0000 (14:28 -0700)]
kclient: update ctime on 'no-op' ->setattr(.., ATTR_CTIME)

If kernel wants ctime updated but nothing else, pick a cap to
dirty, or set a no-op setattr req to the mds.

With this patch, we pass the full pjd fstest with mode ext3.

16 years agokclient tests: fix dir names
Sage Weil [Fri, 21 Aug 2009 20:49:46 +0000 (13:49 -0700)]
kclient tests: fix dir names

16 years agouclient: small _getdents cleanup
Sage Weil [Fri, 21 Aug 2009 20:44:13 +0000 (13:44 -0700)]
uclient: small _getdents cleanup

16 years agouclient: let's do getdents() too, while we're at it
Sage Weil [Fri, 21 Aug 2009 20:27:31 +0000 (13:27 -0700)]
uclient: let's do getdents() too, while we're at it

16 years agocrush: put temp arrays on the stack
Sage Weil [Fri, 21 Aug 2009 20:20:42 +0000 (13:20 -0700)]
crush: put temp arrays on the stack

40 ints on the stack.. not too much I hope?

16 years agouclient: remove readdirplus, readdirlite cruft
Sage Weil [Fri, 21 Aug 2009 20:14:50 +0000 (13:14 -0700)]
uclient: remove readdirplus, readdirlite cruft

Ancient!

16 years agouclient: add getdnames()
Sage Weil [Fri, 21 Aug 2009 20:11:44 +0000 (13:11 -0700)]
uclient: add getdnames()

16 years agokclient: better info in cap msg debug prints
Sage Weil [Fri, 21 Aug 2009 19:32:01 +0000 (12:32 -0700)]
kclient: better info in cap msg debug prints

16 years agomds: debug show cap issued/pending/wanted or issued/wanted, depending
Sage Weil [Fri, 21 Aug 2009 19:31:35 +0000 (12:31 -0700)]
mds: debug show cap issued/pending/wanted or issued/wanted, depending

16 years agomds: clean out old revocation history on racing release
Sage Weil [Fri, 21 Aug 2009 19:28:01 +0000 (12:28 -0700)]
mds: clean out old revocation history on racing release

If a release and revoke are racing, we need to make sure the MDS
behaves even though the revoke msg will be ignored.  For example:

mds                    client
1 pAs                  pAs
                       release(last_issue 1)
2 p                    p (*** ignored ***)
3 pAs (issue)          pAs
4 p                    p
5 pXs (issue)          pXs
release(last_issue 1)  *** (was completely) ignored ***

We fix this by including both seq AND last_issue in revoke_info.
The cap state for the above is thus:

mds cap state:
 last_issue = 5
 _pending = pXs
 _revokes = [ p seq=2 li=1, p seq=4 li=3 ]

and the MDS will trim any old revokes for which li <= its
last_issue.  For anything after that, the client will have seen a
new issue and will have stopped ignoring cap messages.

16 years agomount.ceph: block same signals as /sbin/mount
Sage Weil [Fri, 21 Aug 2009 18:00:33 +0000 (11:00 -0700)]
mount.ceph: block same signals as /sbin/mount

16 years agomds: remove mdstable ino cruft; version all ondisk encoding
Sage Weil [Fri, 21 Aug 2009 17:32:48 +0000 (10:32 -0700)]
mds: remove mdstable ino cruft; version all ondisk encoding

16 years agomds: do not save cap_push_seq on disk [disk format change]
Sage Weil [Fri, 21 Aug 2009 17:28:41 +0000 (10:28 -0700)]
mds: do not save cap_push_seq on disk [disk format change]

The cap_push_seq is purely associated with the current instance
of the session.  On MDS restart and client reconnect, it resets
to zero.  Don't save it.

16 years agokclient: make msgpools blocking or non-blocking
Sage Weil [Fri, 21 Aug 2009 16:32:51 +0000 (09:32 -0700)]
kclient: make msgpools blocking or non-blocking

16 years agokclient: stop using msgpools for incoming msgs
Sage Weil [Thu, 20 Aug 2009 23:48:07 +0000 (16:48 -0700)]
kclient: stop using msgpools for incoming msgs

Even though we may only dispatch N messages at a time (if we
have N cores), we may have many more connections, and be
reading the same message types in parallel from multiple
peers.  Msgpool_alloc blocks when teh pool is empty, which
will make the messenger thread hang, and stall forward.

Badness.

There is no easy solution here.

16 years agokclient: be smarter about osd reply message refs
Sage Weil [Thu, 20 Aug 2009 23:46:06 +0000 (16:46 -0700)]
kclient: be smarter about osd reply message refs

16 years agoconfigure: check for expat for radosgw
Sage Weil [Thu, 20 Aug 2009 23:02:46 +0000 (16:02 -0700)]
configure: check for expat for radosgw

16 years agoMakefile: add missing MOSDPGTemp.h
Sage Weil [Thu, 20 Aug 2009 22:52:24 +0000 (15:52 -0700)]
Makefile: add missing MOSDPGTemp.h

16 years agomds: clean up loner set/drop logic
Sage Weil [Thu, 20 Aug 2009 21:48:10 +0000 (14:48 -0700)]
mds: clean up loner set/drop logic

Track what loner we _want_ separately from what loner we have, so
that locks can move toward the right state.

Centralize loner set/drop call points.

Move out of EXCL in simple_eval if our target loner is -1(none).

16 years agokclient: don't keep reply ref in osd_request; just parse out the result
Sage Weil [Thu, 20 Aug 2009 21:45:51 +0000 (14:45 -0700)]
kclient: don't keep reply ref in osd_request; just parse out the result

This requires a few new flags: r_prepared_pages, so we only do that
once, and r_got_reply, so we only parse the result once.

16 years agokclient: add iozone, kernel tar+compile tests
Sage Weil [Thu, 20 Aug 2009 18:48:30 +0000 (11:48 -0700)]
kclient: add iozone, kernel tar+compile tests

16 years agokclient: remove ancient crufty test code
Sage Weil [Thu, 20 Aug 2009 18:23:31 +0000 (11:23 -0700)]
kclient: remove ancient crufty test code

16 years agokclient: use msgpool for client_caps
Sage Weil [Wed, 19 Aug 2009 23:15:37 +0000 (16:15 -0700)]
kclient: use msgpool for client_caps

16 years agokclient: clean up msgr debug output a bit
Sage Weil [Wed, 19 Aug 2009 20:51:19 +0000 (13:51 -0700)]
kclient: clean up msgr debug output a bit

16 years agokclient: fix data skip arithmetic
Sage Weil [Wed, 19 Aug 2009 20:51:07 +0000 (13:51 -0700)]
kclient: fix data skip arithmetic

16 years agokclient: drop middle, data in ceph_msg_put
Sage Weil [Wed, 19 Aug 2009 20:44:49 +0000 (13:44 -0700)]
kclient: drop middle, data in ceph_msg_put

And not msgpool reclaim.

This fixes bug where a reused message has nr_pages != 0 and
gets confused.

16 years agoauth: auth scheme notes
Sage Weil [Wed, 19 Aug 2009 17:18:29 +0000 (10:18 -0700)]
auth: auth scheme notes

16 years agoMerge branch 'unstable' of ssh://ceph.newdream.net/git/ceph into unstable
Sage Weil [Wed, 19 Aug 2009 17:15:34 +0000 (10:15 -0700)]
Merge branch 'unstable' of ssh://ceph.newdream.net/git/ceph into unstable

16 years agokclient: requeue cap if cap send fails
Sage Weil [Wed, 19 Aug 2009 17:14:49 +0000 (10:14 -0700)]
kclient: requeue cap if cap send fails

16 years agokclient: don't reuse message for revoke_ack
Sage Weil [Wed, 19 Aug 2009 16:53:17 +0000 (09:53 -0700)]
kclient: don't reuse message for revoke_ack

This is error prone (multiple paths for sending caps) and screws
up the msg pools.

16 years agomds: shut up cap sanity check
Sage Weil [Tue, 18 Aug 2009 21:59:20 +0000 (14:59 -0700)]
mds: shut up cap sanity check

16 years agokclient: use reference counted ceph_buffer for xattr blob, msg middle
Sage Weil [Tue, 18 Aug 2009 21:59:06 +0000 (14:59 -0700)]
kclient: use reference counted ceph_buffer for xattr blob, msg middle

16 years agofix client caps encoding
Sage Weil [Tue, 18 Aug 2009 20:36:30 +0000 (13:36 -0700)]
fix client caps encoding

16 years agouclient/hadoop: Implement lstat_precise.
Greg Farnum [Tue, 18 Aug 2009 20:31:25 +0000 (13:31 -0700)]
uclient/hadoop: Implement lstat_precise.

libceph: Some functions were getting C bindings where it
didn't make sense (having string parameters. Fixed now.

16 years agouClient: Whoops, apparently I thought stat's atime was in millis, but it's in seconds.
Greg Farnum [Tue, 18 Aug 2009 19:52:51 +0000 (12:52 -0700)]
uClient: Whoops, apparently I thought stat's atime was in millis, but it's in seconds.

16 years agomsgr: handle 'middle' section of message
Sage Weil [Tue, 18 Aug 2009 19:16:42 +0000 (12:16 -0700)]
msgr: handle 'middle' section of message

16 years agoHadoop: What's with all these unused variables?
Greg Farnum [Tue, 18 Aug 2009 17:33:59 +0000 (10:33 -0700)]
Hadoop: What's with all these unused variables?

16 years agoHadoop: Javadoc and cleanup in CephInput/OutputStream.
Greg Farnum [Tue, 18 Aug 2009 15:41:40 +0000 (08:41 -0700)]
Hadoop: Javadoc and cleanup in CephInput/OutputStream.

16 years agoHadoop: Javadoc and cleanup in CephInputStream.
Greg Farnum [Tue, 18 Aug 2009 00:15:01 +0000 (17:15 -0700)]
Hadoop: Javadoc and cleanup in CephInputStream.

16 years agokclient: alloc 'middle' section of messages via callback
Sage Weil [Mon, 17 Aug 2009 23:51:13 +0000 (16:51 -0700)]
kclient: alloc 'middle' section of messages via callback

16 years agokclient: fix up msgpool some
Sage Weil [Mon, 17 Aug 2009 23:50:45 +0000 (16:50 -0700)]
kclient: fix up msgpool some

16 years agouclient: A Sage-given fix for something Sage broke.
Greg Farnum [Mon, 17 Aug 2009 22:56:04 +0000 (15:56 -0700)]
uclient: A Sage-given fix for something Sage broke.

16 years agomsgr: add 'middle' section to msgs
Sage Weil [Mon, 17 Aug 2009 21:57:42 +0000 (14:57 -0700)]
msgr: add 'middle' section to msgs

16 years agokclient: use msgpools for some messages
Sage Weil [Mon, 17 Aug 2009 20:36:15 +0000 (13:36 -0700)]
kclient: use msgpools for some messages

16 years agoHadoop: cleanup compile bugs from previous cleanup work.
Greg Farnum [Mon, 17 Aug 2009 19:38:00 +0000 (12:38 -0700)]
Hadoop: cleanup compile bugs from previous cleanup work.

16 years agokclient: add msgpools
Sage Weil [Mon, 17 Aug 2009 19:36:47 +0000 (12:36 -0700)]
kclient: add msgpools

16 years agoHadoop: Remove an exists call by checking return codes on mkdirs
Greg Farnum [Sat, 15 Aug 2009 00:29:45 +0000 (17:29 -0700)]
Hadoop: Remove an exists call by checking return codes on mkdirs

16 years agoHadoop: Remove references to uid and gid.
Greg Farnum [Sat, 15 Aug 2009 00:07:39 +0000 (17:07 -0700)]
Hadoop: Remove references to uid and gid.

16 years agoHadoop: Remove unused getLength and supporting C stuff.
Greg Farnum [Sat, 15 Aug 2009 00:04:29 +0000 (17:04 -0700)]
Hadoop: Remove unused getLength and supporting C stuff.

16 years agoHadoop: uses the new stat_precise.
Greg Farnum [Fri, 14 Aug 2009 23:58:13 +0000 (16:58 -0700)]
Hadoop: uses the new stat_precise.

16 years agouclient/libceph: setattr and _setattr now use a stat_precise struct
Greg Farnum [Fri, 14 Aug 2009 23:55:27 +0000 (16:55 -0700)]
uclient/libceph: setattr and _setattr now use a stat_precise struct
that handles both seconds and microseconds.
stat_precise has a stat_precise(struct stat) constructor.
ll_setattr still uses struct stat.

16 years agotestceph: Clarify use of endl so it's non-ambiguous when the includes change.
Greg Farnum [Fri, 14 Aug 2009 22:20:48 +0000 (15:20 -0700)]
testceph: Clarify use of endl so it's non-ambiguous when the includes change.

16 years agoHadoop: More Javadoc, indentation fixes, etc.
Greg Farnum [Fri, 14 Aug 2009 20:37:14 +0000 (13:37 -0700)]
Hadoop: More Javadoc, indentation fixes, etc.

16 years agoHadoop: Convert bytes to kb in statfs
Greg Farnum [Fri, 14 Aug 2009 20:36:36 +0000 (13:36 -0700)]
Hadoop: Convert bytes to kb in statfs

16 years agoHadoop: Javadoc and consistency.
Greg Farnum [Thu, 13 Aug 2009 20:56:13 +0000 (13:56 -0700)]
Hadoop: Javadoc and consistency.

16 years agoHadoop: Adds the getStatus method introduced by Hadoop .21;
Greg Farnum [Wed, 12 Aug 2009 23:54:47 +0000 (16:54 -0700)]
Hadoop: Adds the getStatus method introduced by Hadoop .21;
currently commented out since it doesn't compile in .20, but it's tested.

16 years agokclient: zero pages we did readahead on
Sage Weil [Fri, 14 Aug 2009 21:37:36 +0000 (14:37 -0700)]
kclient: zero pages we did readahead on

If we get -ENOENT or a short read on readahead, we should still
zero the pages and add them to the page cache, to avoid a future
readpage on each one.

16 years agokclient: zero page on ->readpage() ENOENT
Sage Weil [Fri, 14 Aug 2009 21:31:30 +0000 (14:31 -0700)]
kclient: zero page on ->readpage() ENOENT

16 years agokclient: fix bad up_read(snap_rwsem) on readpage failure in write_begin
Sage Weil [Fri, 14 Aug 2009 21:31:05 +0000 (14:31 -0700)]
kclient: fix bad up_read(snap_rwsem) on readpage failure in write_begin

16 years agomount.ceph: key -> secret
Sage Weil [Fri, 14 Aug 2009 19:50:03 +0000 (12:50 -0700)]
mount.ceph: key -> secret

16 years agokclient: kill unused unsafe_writeback option
Sage Weil [Fri, 14 Aug 2009 19:33:07 +0000 (12:33 -0700)]
kclient: kill unused unsafe_writeback option

16 years agokclient: fix up snapdirname, secret mount options
Sage Weil [Fri, 14 Aug 2009 19:32:29 +0000 (12:32 -0700)]
kclient: fix up snapdirname, secret mount options

16 years agomount: translate keyfile=file to key=thekey
Sage Weil [Wed, 5 Aug 2009 22:10:38 +0000 (15:10 -0700)]
mount: translate keyfile=file to key=thekey

By reading the first line from the file.

16 years agotodo
Sage Weil [Fri, 14 Aug 2009 18:57:19 +0000 (11:57 -0700)]
todo

16 years agomds: keep precalculated _issued instead of recalcing each time
Sage Weil [Fri, 14 Aug 2009 18:09:10 +0000 (11:09 -0700)]
mds: keep precalculated _issued instead of recalcing each time

16 years agomds: rewrite Capability issue/revoke tracking
Sage Weil [Fri, 14 Aug 2009 17:56:39 +0000 (10:56 -0700)]
mds: rewrite Capability issue/revoke tracking

Use a list.  Track everything.  Be smart about trimming the list.

16 years agokclient: set issue_seq in revoke ack
Sage Weil [Fri, 14 Aug 2009 17:56:11 +0000 (10:56 -0700)]
kclient: set issue_seq in revoke ack

16 years agotodo
Sage Weil [Thu, 13 Aug 2009 23:51:06 +0000 (16:51 -0700)]
todo

16 years agouclient: clean up write path a bit; better max_size handling
Sage Weil [Thu, 13 Aug 2009 23:50:59 +0000 (16:50 -0700)]
uclient: clean up write path a bit; better max_size handling

16 years agokclient: check size on llseek(..., SEEK_END)
Sage Weil [Thu, 13 Aug 2009 22:43:49 +0000 (15:43 -0700)]
kclient: check size on llseek(..., SEEK_END)

16 years agouclient: check size on lseek(..., SEEK_END)
Sage Weil [Thu, 13 Aug 2009 22:38:38 +0000 (15:38 -0700)]
uclient: check size on lseek(..., SEEK_END)

16 years agouclient: remove dead code
Sage Weil [Thu, 13 Aug 2009 22:38:24 +0000 (15:38 -0700)]
uclient: remove dead code

16 years agotodo
Sage Weil [Thu, 13 Aug 2009 22:33:51 +0000 (15:33 -0700)]
todo

16 years agouclient: handle short sync reads vs eof
Sage Weil [Thu, 13 Aug 2009 22:30:14 +0000 (15:30 -0700)]
uclient: handle short sync reads vs eof

16 years agoosd: reorder snapc setup and ORDERSNAP check
Sage Weil [Thu, 13 Aug 2009 22:12:08 +0000 (15:12 -0700)]
osd: reorder snapc setup and ORDERSNAP check

16 years agoradosgw: remove unneeded INT_MAX
Yehuda Sadeh [Thu, 13 Aug 2009 22:28:42 +0000 (15:28 -0700)]
radosgw: remove unneeded INT_MAX

16 years agoradosgw: list objects in chunks
Yehuda Sadeh [Thu, 13 Aug 2009 22:03:02 +0000 (15:03 -0700)]
radosgw: list objects in chunks

16 years agokclient: zero tail of page in readpage, readpages after short read
Sage Weil [Thu, 13 Aug 2009 20:41:24 +0000 (13:41 -0700)]
kclient: zero tail of page in readpage, readpages after short read

ceph_osdc_readpages isn't zeroing for us anymore (as of commit
23b81b9082c987a6f8221eb81c77fd7701086c5b).

16 years agokclient: check EOF on sync read to do short result when appropriate
Sage Weil [Thu, 13 Aug 2009 20:38:04 +0000 (13:38 -0700)]
kclient: check EOF on sync read to do short result when appropriate

We only want to return a short read if we read the end of file.
Otherwise, a short object read means we hit a hole and need to
zero-fill.

16 years agoconfigure: fix --with-radosgw
Sage Weil [Thu, 13 Aug 2009 18:23:54 +0000 (11:23 -0700)]
configure: fix --with-radosgw

16 years agomds: track caps we release in requests, and reissue on request cleanup if needed
Sage Weil [Thu, 13 Aug 2009 00:08:04 +0000 (17:08 -0700)]
mds: track caps we release in requests, and reissue on request cleanup if needed

We may suppress cap issue when we release caps in a request.  A lock state
change may have changed the allowed caps and should normally have issued
caps, but we suppress that because the request will way to embed that
normally.  When we cleanup the request, if we haven't issued on that cap
for some reason (maybe the request errored out, or forwarded, etc.), force
an issue then.

16 years agomds: do not suppress cap msg if it is a revocation
Sage Weil [Wed, 12 Aug 2009 20:19:25 +0000 (13:19 -0700)]
mds: do not suppress cap msg if it is a revocation

This can cause things to hang, because the mds is waiting for a revocation
ack that is never going to arrive.

In contrast, an issue can be suppressed if we know we are going to issue
to the client later.

16 years agoHadoop: Added some checks for not-a-file paths;
Greg Farnum [Tue, 11 Aug 2009 23:09:22 +0000 (16:09 -0700)]
Hadoop: Added some checks for not-a-file paths;
changed what delete returns on not-a-file.

16 years agouClient: move last_flush_tid into Inodes,
Greg Farnum [Tue, 11 Aug 2009 17:44:39 +0000 (10:44 -0700)]
uClient: move last_flush_tid into Inodes,
make kick_flushing_caps faster by overwriting tids.

16 years agoMakefile: include stop.sh in tarball
Sage Weil [Tue, 11 Aug 2009 23:29:01 +0000 (16:29 -0700)]
Makefile: include stop.sh in tarball

16 years agotodo
Sage Weil [Tue, 11 Aug 2009 23:22:11 +0000 (16:22 -0700)]
todo