Commit Graph

48972 Commits

Author SHA1 Message Date
Matt Benjamin
c4262b29c4 librgw: add hypothetical rgw_statfs call
Signed-off-by: Matt Benjamin <mbenjamin@redhat.com>
2016-02-12 11:57:43 -05:00
Matt Benjamin
c81b85d291 librgw: stub implement rgw_getattr
This method returns Unix attributes for an object, represented
by an rgw_file_handle.

Signed-off-by: Matt Benjamin <mbenjamin@redhat.com>
2016-02-12 11:57:42 -05:00
Matt Benjamin
27e066de78 librgw: add a library version (1.0.0)
Signed-off-by: Matt Benjamin <mbenjamin@redhat.com>
2016-02-12 11:57:41 -05:00
Matt Benjamin
c52a9fad0a librgw: rgw shared library
Refactor rgw_a and radosgw_srcs, and add librgw_srcs, permitting
librgw to contain a smaller subset of objects, and in particular,
not link with fcgi or civitweb.

Fix aliasing of librgw_t rgw in test_rgw_file.  Also remove global_init
there, since it can't do the right thing.  Instead, assign g_ceph_context
(ref'd) in librgw_create, if not present.

(The current rgw codebase has many dependencies on g_ceph_context to
trivially remove--it would be easier to remove it entirely, and that seems
likely to happen eventually.)

We link librgw as SHARED, with PRIVATE dependencies.  The test_librgw_file
link test demonstrates that librgw.a can be linked with no Ceph library
dependencies except librados (and its dependencies, platform dependencies,
etc).

Signed-off-by: Matt Benjamin <mbenjamin@redhat.com>
2016-02-12 11:57:40 -05:00
Matt Benjamin
ce5ba5d685 librgw: compile and implement more of rgw_file
The rgw_file body wasn't being built, so had some impossible
constructs.  More had been added by the commit which renamed
struct nfs_handle to struct rgw_file_handle.

Several key RGWLib methods hadn't been implemented (in progress).

Signed-off-by: Matt Benjamin <mbenjamin@redhat.com>
2016-02-12 11:56:01 -05:00
Matt Benjamin
e769655412 librgw: the external type of librgw_t must be void*
The C interface cannot contain a C++ forward declaration of
class CephContext.

Signed-off-by: Matt Benjamin <mbenjamin@redhat.com>
2016-02-12 11:56:00 -05:00
Matt Benjamin
f23cd03b63 librgw: install librgw.h
Signed-off-by: Matt Benjamin <mbenjamin@redhat.com>
2016-02-12 11:55:59 -05:00
Matt Benjamin
3f6030074a librgw: s/nfs_file_handle/rgw_file_handle/;
The interface is in rgw_file.h, so make it match.

Signed-off-by: Matt Benjamin <mbenjamin@redhat.com>
2016-02-12 11:55:58 -05:00
Matt Benjamin
9830941704 rgw_file.h: preserve cosnt correctness
/s

Signed-off-by: Matt Benjamin <mbenjamin@redhat.com>
2016-02-12 11:55:57 -05:00
Matt Benjamin
2aa79deb0a librgw: fix some return warnings (and cosmetic)
Fix return codes for several exported functions in the rgw_file
interface.

Fix spacing and pointer, reference type notation, editor boilerplate,
in files added or touched in the prior commit introducing librgw.

Signed-off-by: Matt Benjamin <mbenjamin@redhat.com>
2016-02-12 11:55:56 -05:00
Orit Wasserman
08b89a5f6a rgw: introduce libradosgw
This change exposes the radosgw service as a dynamic
library, and also introduces a file-oriented view of the
RGW corpus as a namespace (e.g., for interop with NFS
clients).

The change concatenates the following commits:
    * rgw: add rgw_file.h
    * rgw: add RGWLibRequest, RGWLibFrontend and RGWLibProcess
    * rgw: Add user command interface for librgw
    * 	   user_commands
    * 	   Implement gen_request
    *	   Install librgw.a
    * 	   add rgw_request.cc to Makefile.am
    *	   Add empty API to librgw.h
    *	   Add rgw_file.cc
    *	   Make RGWLib a global object
    *	   Implement lookup and readdir - wip
    *	   Add rgw_rest_lib.cc
    *	   Install rgw_file.h
    *	   wip implement mount
    *      RGWLibIO

Signed-off-by: Matt Benjamin <mbenjamin@redhat.com>
2016-02-12 11:55:55 -05:00
Matt Benjamin
76f1dcaf80 rgw: refactor rgw_main
This change is an extended version of work by Orit Wasserman
moving some request-processing class headers and definition to
their own files (RGWProcess, RGWProcessEnv, RGWProcessFrontend),
along with process_request.

I have taken the refactoring further, so as to remove all class
declarations and member definitions from rgw_main.cc, so that the
file retains just:

* the responsibility to parse arguments and supervise the daemon
* the responsibility to select from front-ends/configure the RGW service
* usage

I have made small adjustments:
* moving some processing out of headers, to remove circular deps
* removed unused headers from rgw_main.cc
* added editor boilerplate and tweaked include guards in some files

Signed-off-by: Matt Benjamin <mbenjamin@redhat.com>
2016-02-12 11:54:17 -05:00
Loic Dachary
b709f7ce1d Merge pull request #7351 from fmeppo/master
Add --setuser and --setgroup options for ceph-disk

Reviewed-by: Loic Dachary <ldachary@redhat.com>
2016-02-12 23:10:18 +07:00
Kefu Chai
fb72714326 Merge pull request #7605 from dachary/wip-python-wheelhouse
python: use pip instead of python setup.py

Reviewed-by: Kefu Chai <kchai@redhat.com>
2016-02-12 19:59:08 +08:00
Loic Dachary
cd87bd48de ceph-disk,ceph-detect-init: clean the build directory
b030d8fc11 should have kept the build
directory in .gitignore and the clean target. Re-adding.

Signed-off-by: Loic Dachary <loic@dachary.org>
2016-02-12 17:10:41 +07:00
Loic Dachary
c1d8faad26 python: use pip instead of python setup.py
python setup.py develop may try to pull dependencies from the net and
has no way to collect them from the wheelhouse that was populated by
install-deps.sh. Use pip install -e instead

Signed-off-by: Loic Dachary <loic@dachary.org>
2016-02-12 17:10:41 +07:00
Loic Dachary
18e64820aa Merge pull request #7528 from objoo/YD-jewel-mailmap-updates-take2
mailmap updates

Reviewed-by: Loic Dachary <ldachary@redhat.com>
2016-02-12 13:14:17 +07:00
Josh Durgin
a2888e0ad8 Merge pull request #7609 from dillaman/wip-librbd-flatten-test
test: new librbd flatten test case

Reviewed-by: Josh Durgin <jdurgin@redhat.com>
2016-02-11 21:10:13 -08:00
Josh Durgin
bc22c0f327 Merge pull request #7583 from dillaman/wip-librbd-journal-fsx
librbd: integrate journal replay with fsx testing

Reviewed-by: Josh Durgin <jdurgin@redhat.com>
2016-02-11 21:09:01 -08:00
Sage Weil
90d93fe938 Merge pull request #7613 from wjwithagen/patch-1
osd: add missing newline to usage message

Reviewed-by: Sage Weil <sage@redhat.com>
2016-02-11 16:32:44 -05:00
Willem Jan Withagen
34f896b0db src/ceph_osd.cc Add missing newline to usage message
Signed-off-by: Willem Jan Withagen <wjw@digiware.nl>
2016-02-11 21:29:19 +01:00
Sage Weil
d7f0304aec common: fix build error with Graylog
Graylog includes boost stuff, which clobbers our assert macros.

Signed-off-by: Sage Weil <sage@redhat.com>
2016-02-11 13:24:29 -05:00
Casey Bodley
05a4811c57 Merge pull request #6920 from oritwas/wip-mstart-cmake
ajdust mstart and mstop script to run with cmake build
2016-02-11 12:43:04 -05:00
Ali Maredia
aa6d0a9c65 Merge pull request #7523 from tchaikov/wip-fix-cmake
cmake: fix the build of tests
2016-02-11 12:40:41 -05:00
Sage Weil
6adb6944a4 Merge pull request #7607 from FlorentCoppint/master
mount.fuse.ceph: better parsing of arguments passed to mount.fuse.ceph by mount command

Reviewed-by: Sage Weil <sage@redhat.com>
2016-02-11 12:30:54 -05:00
Jason Dillaman
5b3a4d2cbc test: new librbd flatten test case
AIO operations after a flatten operation were previously
hanging during the close of the parent image.

Signed-off-by: Jason Dillaman <dillaman@redhat.com>
2016-02-11 10:01:38 -05:00
Florent
8fe75846bd Better parsing of arguments passed to mount.fuse.ceph by mount command.
Signed-off-by: Florent Bautista <florent@coppint.com>
2016-02-11 14:51:49 +01:00
Sage Weil
63e671a979 Merge pull request #5961 from majianpeng/small-fix
osd: clean up CMPXATTR checks

Reviewed-by: Samuel Just <sjust@redhat.com>
Reviewed-by: Sage Weil <sage@redhat.com>
2016-02-11 08:46:22 -05:00
Sage Weil
e211b5b278 Merge pull request #7533 from Cdiscount/master
debian: include cpio in build-requiers

Reviewed-by: Sage Weil <sage@redhat.com>
2016-02-11 08:45:17 -05:00
Sage Weil
cc2200c5e6 Merge pull request #7537 from ifed01/wip-no-promote-for-delete-fix
osd: fix unnecessary object promotion when deleting from cache pool

Reviewed-by: Sage Weil <sage@redhat.com>
2016-02-11 08:44:35 -05:00
Sage Weil
f8d5807151 Merge pull request #7567 from branch-predictor/bp-slimdown-conns
msg: significantly reduce minimal memory usage of connections

Reviewed-by: Sage Weil <sage@redhat.com>
2016-02-11 08:43:46 -05:00
Sage Weil
88d251475b Merge pull request #7579 from javacruft/wip-systemd-escaping
systemd: correctly escape block device paths

Reviewed-by: Sage Weil <sage@redhat.com>
2016-02-11 08:42:50 -05:00
Sage Weil
0d819d549b Merge pull request #7581 from jcsp/wip-asok-lockdep
librados: mix lock cycle (un)registering asok commands

Reviewed-by: Sage Weil <sage@redhat.com>
2016-02-11 08:42:26 -05:00
Sage Weil
62ecb28ff2 Merge pull request #7604 from ceph/wip-selinux-update-radosgw-log
selinux: allow log files to be located in /var/log/radosgw

Reviewed-by: Sage Weil <sage@redhat.com>
2016-02-11 08:37:50 -05:00
Loic Dachary
4056ee298a Merge pull request #7606 from tchaikov/wip-fix-ceph-disk
tests: ceph-disk.sh: use "readlink -f" instead for fullpath

Reviewed-by: Loic Dachary <ldachary@redhat.com>
2016-02-11 19:18:34 +07:00
Kefu Chai
8f42f89937 tests: ceph-disk.sh: use "readlink -f" instead for fullpath
if $PATH has ".." in it, and the program happen to be located in
"..", `which program` will print `../program` instead of its fullpath,
so we should always use `readlink -f` for the fullpath.

Signed-off-by: Kefu Chai <kchai@redhat.com>
2016-02-11 20:08:35 +08:00
Boris Ranto
bcf12049fb selinux: Allow log files to be located in /var/log/radosgw
We do suggest users to put their logs in /var/log/radosgw in the
documentation at times. We should also label that directory with
ceph_var_log_t so that ceph daemons can also write there.

The commit also updates the man page for this policy. This man page is
automatically generated by

* sepolicy manpage -p . -d ceph_t

and have not been reloaded in a while. Hence, it contains few more
changes than the new radosgw directory.

Signed-off-by: Boris Ranto <branto@redhat.com>
2016-02-11 12:37:51 +01:00
Haomai Wang
765c7592af Merge pull request #7601 from jjhuo/master
os/bluestore: fix a typo in SPDK path parsing

Reviewed-by: Haomai Wang <haomai@xsky.com>
2016-02-11 14:36:01 +08:00
Jianjian Huo
40936fb1f5 os/bluestore: fix a typo in SPDK path parsing
SPDK block path with bluestore is something like spdk:55cd2e404bd73932.
The size of the prefix to compare should be 5.
sizeof(SPDK_PREFIX)-1 returns 5, while sizeof(SPDK_PREFIX-1) returns 8.

Signed-off-by: Jianjian Huo <samuel.huo@gmail.com>
2016-02-10 20:44:33 -05:00
Jason Dillaman
b92eb668c1 librbd: protect journal replay against overlapping writes
If fsx issues a back-to-back synchronous write, these will be
replayed as AIO writes.  If object map is enabled, it's possible
for the two writes to commit to disk out-of-order if the first
write required an object map update.

Signed-off-by: Jason Dillaman <dillaman@redhat.com>
2016-02-10 19:06:02 -05:00
Jason Dillaman
bb662311b4 librbd: track in-flight AIO flush requests during journal replay
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
2016-02-10 17:40:42 -05:00
Jason Dillaman
1cc409b45e test: possible librbd journal replay flush race
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
2016-02-10 17:39:36 -05:00
Sage Weil
0148eacb8d Merge pull request #7588 from dmick/master
common/page.cc: _page_mask has too many bits

Reviewed-by: Sage Weil <sage@redhat.com>
2016-02-10 16:02:11 -05:00
Yehuda Sadeh
da554ae9b2 Merge pull request #7413 from YankunLi/dev
rgw: remove duplicated code in RGWRados::get_bucket_info()

Reviewed-by: Yehuda Sadeh <yehuda@redhat.com>
2016-02-10 11:16:30 -08:00
Yehuda Sadeh
4d36bc792b Merge branch 'wip-11642-0203' 2016-02-10 11:15:49 -08:00
Bo Cai
fce9b27430 rgw: make function parameter 'errordoc_key' passed by reference
Signed-off-by: Bo Cai <cai.bo@h3c.com>
2016-02-10 11:15:11 -08:00
Sage Weil
cb82fc69bd Merge branch 'master' of github.com:ceph/ceph 2016-02-10 13:58:50 -05:00
Yehuda Sadeh
d3e0ca4e14 Merge pull request #7544 from ceph/wip-rh-covscan
rgw/rgw_orphan: check the return value of save_state

Reviewed-by: Yehuda Sadeh <yehuda@redhat.com>
2016-02-10 11:03:04 -08:00
Yehuda Sadeh
709ab2dd6e Merge pull request #7586 from bsedyang/master
rgw: user quota may not adjust on bucket removal

Reviewed-by: Yehuda Sadeh <yehuda@redhat.com>
2016-02-10 11:01:54 -08:00
Sage Weil
7d10a4467b doc/release-notes: v10.0.3
Finalized release notes.

Signed-off-by: Sage Weil <sage@redhat.com>
2016-02-10 13:57:37 -05:00