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>
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>
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>
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>
AIO operations after a flatten operation were previously
hanging during the close of the parent image.
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
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>
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>
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>
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>
turns out trusty does not have `realpath` unless the package named
`realpath` is installed.
Reported-by: Joao Eduardo Luis <joao@suse.de>
Signed-off-by: Kefu Chai <kchai@redhat.com>