]> git.apps.os.sepia.ceph.com Git - ceph.git/log
ceph.git
11 years agomongoose: update submodule 818/head
Yehuda Sadeh [Mon, 16 Dec 2013 20:27:55 +0000 (12:27 -0800)]
mongoose: update submodule

switched to a different source repository, added .gitignore

Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
11 years agorgw: fix memory leak
Yehuda Sadeh [Mon, 16 Dec 2013 18:27:07 +0000 (10:27 -0800)]
rgw: fix memory leak

Remove frontend object on shutdown.

Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
11 years agorgw: rework framework configuration
Yehuda Sadeh [Sat, 14 Dec 2013 00:13:17 +0000 (16:13 -0800)]
rgw: rework framework configuration

The framework config code is now more generic and ready for multiple
config options. Different frameworks are comma separated and each
framework's config list is separated by space. Each config value is in
the key[=value] format. E.g.,

rgw framework = fastcgi, mongoose port=8080

Fastcgi socket configurables can now be set via this config line (either
socket_path, or socket_host + socket_port), e.g.,

rgw framework = fastcgi socket_path=/var/run/radosgw/rgw.sock

Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
11 years agorgw: allow multiple frontends of the same framework
Yehuda Sadeh [Tue, 5 Nov 2013 01:54:51 +0000 (17:54 -0800)]
rgw: allow multiple frontends of the same framework

it is possible to set up mongoose on multiple ports, e.g.,

  rgw frontends = mongoose:80, mongoose:8080

Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
11 years agorgw: clean up shutdown signaling
Yehuda Sadeh [Tue, 5 Nov 2013 01:40:32 +0000 (17:40 -0800)]
rgw: clean up shutdown signaling

Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
11 years agorgw: clean up front end configuration
Yehuda Sadeh [Mon, 4 Nov 2013 22:54:19 +0000 (14:54 -0800)]
rgw: clean up front end configuration

Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
11 years agorgw: more flexible frotnend handler config
Yehuda Sadeh [Tue, 29 Oct 2013 21:09:29 +0000 (14:09 -0700)]
rgw: more flexible frotnend handler config

Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
11 years agorgw: refactor request handling processing
Yehuda Sadeh [Tue, 29 Oct 2013 18:01:41 +0000 (11:01 -0700)]
rgw: refactor request handling processing

Remove all duplicate code for different handlers.

Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
11 years agorgw: support http/1.0 keep-alive response (mongoose)
Yehuda Sadeh [Tue, 29 Oct 2013 00:58:04 +0000 (17:58 -0700)]
rgw: support http/1.0 keep-alive response (mongoose)

Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
11 years agorgw: update code to handle mongoose v4.1
Yehuda Sadeh [Thu, 24 Oct 2013 21:15:10 +0000 (14:15 -0700)]
rgw: update code to handle mongoose v4.1

Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
11 years agorgw: add SERVER_PORT to mongoose environment
Yehuda Sadeh [Wed, 23 Oct 2013 21:51:02 +0000 (14:51 -0700)]
rgw: add SERVER_PORT to mongoose environment

Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
11 years agorgw: configurable mongoose port
Yehuda Sadeh [Wed, 23 Oct 2013 19:03:42 +0000 (12:03 -0700)]
rgw: configurable mongoose port

Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
11 years agorgw: support for mongoose keepalive
Yehuda Sadeh [Wed, 23 Oct 2013 01:11:23 +0000 (18:11 -0700)]
rgw: support for mongoose keepalive

Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
11 years agorgw: rebase mongoose prototype
Yehuda Sadeh [Tue, 22 Oct 2013 20:53:59 +0000 (13:53 -0700)]
rgw: rebase mongoose prototype

Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
11 years agomongoose: submodule, v4.1
Yehuda Sadeh [Tue, 5 Nov 2013 04:21:22 +0000 (20:21 -0800)]
mongoose: submodule, v4.1

add mongoose as a submodule.

11 years agoMerge pull request #770 from dachary/master
Sage Weil [Fri, 25 Oct 2013 23:00:35 +0000 (16:00 -0700)]
Merge pull request #770 from dachary/master

packages: ceph.spec.in is missing make as a build dependency

Reviewed-by: Sage Weil <sage@inktank.com>
11 years agopackages: ceph.spec.in is missing make as a build dependency 770/head
Loic Dachary [Fri, 25 Oct 2013 22:46:32 +0000 (00:46 +0200)]
packages: ceph.spec.in is missing make as a build dependency

On a virgin centos-6.4, after yum-builddep ceph and following
http://ceph.com/docs/next/install/building-ceph/ instructions to:

cd ceph
./autogen.sh
./configure
make

it fails because make is not installed. It probably is not a problem for
most people because there are few developers who did not install make.

Signed-off-by: Loic Dachary <loic@dachary.org>
11 years agoMerge remote-tracking branch 'gh/next'
Sage Weil [Thu, 24 Oct 2013 22:23:19 +0000 (15:23 -0700)]
Merge remote-tracking branch 'gh/next'

11 years agoUpdate init-rbdmap
Adam Twardowski [Thu, 24 Oct 2013 16:24:11 +0000 (12:24 -0400)]
Update init-rbdmap

Add a chkconfig line for RHEL based distros to make chkconfig start rbdmap earlier on boot and stop later on shutdown.  This will help prevent shutdown/reboot from hanging your system forever in the event that some daemon has a file held open on an rbd mounted filesystem.

Signed-off-by: Adam Twardowski <adam.twardowski@gmail.com>(cherry picked from commit 80384a1a24e681fff11c8715804b7f8cc4a2189a)
11 years agoMerge pull request #762 from atwardowski/patch-2
Sage Weil [Thu, 24 Oct 2013 21:41:37 +0000 (14:41 -0700)]
Merge pull request #762 from atwardowski/patch-2

add redhat settings to rbdmap init script

Backport: emperor
Reviewed-by: Sage Weil <sage@inktank.com>
11 years agoceph: tolerate commands without any child args
Greg Farnum [Thu, 24 Oct 2013 18:33:08 +0000 (11:33 -0700)]
ceph: tolerate commands without any child args

Signed-off-by: Greg Farnum <greg@inktank.com>
Reviewed-by: Dan Mick <dan.mick@inktank.com>
Reviewed-by: Josh Durgin <josh.durgin@inktank.com>
11 years agoMerge branch 'wip-rgw-sync-next' into next
Josh Durgin [Thu, 24 Oct 2013 18:38:13 +0000 (11:38 -0700)]
Merge branch 'wip-rgw-sync-next' into next

Reviewed-by: Yehuda Sadeh <yehuda@inktank.com>
11 years agorgw: eliminate one unnecessary case statement
Josh Durgin [Thu, 24 Oct 2013 16:47:16 +0000 (09:47 -0700)]
rgw: eliminate one unnecessary case statement

0x21 '!' is the first character that doesn't need encoding, so we can
expand the lower bound check.

Signed-off-by: Josh Durgin <josh.durgin@inktank.com>
11 years agoUpdate init-rbdmap 762/head
Adam Twardowski [Thu, 24 Oct 2013 16:24:11 +0000 (12:24 -0400)]
Update init-rbdmap

Add a chkconfig line for RHEL based distros to make chkconfig start rbdmap earlier on boot and stop later on shutdown.  This will help prevent shutdown/reboot from hanging your system forever in the event that some daemon has a file held open on an rbd mounted filesystem.

Signed-off-by: Adam Twardowski <adam.twardowski@gmail.com>
11 years agoradosgw-admin: remove unused function escape_str() 763/head
Josh Durgin [Thu, 24 Oct 2013 15:46:31 +0000 (08:46 -0700)]
radosgw-admin: remove unused function escape_str()

This was added before formatters were used for dumping logs.

Signed-off-by: Josh Durgin <josh.durgin@inktank.com>
11 years agorgw: escape bucket and object names in StreamReadRequests
Josh Durgin [Thu, 24 Oct 2013 15:42:48 +0000 (08:42 -0700)]
rgw: escape bucket and object names in StreamReadRequests

This fixes copy operations for objects that contain unsafe characters,
like a newline, which would return a 403 otherwise, since the GET to
the source rgw would be unable to verify the signature on a partially
valid bucket name.

Fixes: #6604
Backport: dumpling
Signed-off-by: Josh Durgin <josh.durgin@inktank.com>
11 years agorgw: move url escaping to a common place
Josh Durgin [Thu, 24 Oct 2013 15:37:25 +0000 (08:37 -0700)]
rgw: move url escaping to a common place

This is useful outside of the s3 interface. Rename url_escape()
url_encode() for consistency with the exsting common url_decode()
function. This is in preparation for the next commit, which needs
to escape url-unsafe characters in another place.

Backport: dumpling
Signed-off-by: Josh Durgin <josh.durgin@inktank.com>
11 years agorgw: update metadata log list to match data log list
Josh Durgin [Thu, 24 Oct 2013 15:34:24 +0000 (08:34 -0700)]
rgw: update metadata log list to match data log list

Send the last marker whether the log is truncated in the same format
as data log list, so clients don't have more needless complexity
handling the difference.  Keep bucket index logs the same, since they
contain the marker already, and are not used in exactly the same way
metadata and data logs are.

Backport: dumpling
Signed-off-by: Josh Durgin <josh.durgin@inktank.com>
11 years agorgw: include marker and truncated flag in data log list api
Josh Durgin [Thu, 24 Oct 2013 15:26:19 +0000 (08:26 -0700)]
rgw: include marker and truncated flag in data log list api

Consumers of this api need to know their position in the log. It's
readily available when fetching the log, so return it.  Without the
marker in this call, a client could not easily or efficiently figure
out its position in the log, since it would require getting the global
last marker in the log, and then reading all the log entries.

This would be slow for large logs, and would be subject to races that
would cause potentially very expensive duplicate work.

Returning this atomically while fetching the log entries simplifies
all of this.

Fixes: #6615
Backport: dumpling
Signed-off-by: Josh Durgin <josh.durgin@inktank.com>
11 years agocls_log: always return final marker from log_list
Josh Durgin [Thu, 24 Oct 2013 15:18:19 +0000 (08:18 -0700)]
cls_log: always return final marker from log_list

There's no reason to restrict returning the marker to the case where
less than the whole log is returned, since there's already a truncated
flag to tell the client what happened.

Giving the client the last marker makes it easy to consume when the
log entries do not contain their own marker. If the last marker is not
returned, the client cannot get the last marker without racing with
updates to the log.

Backport: dumpling
Signed-off-by: Josh Durgin <josh.durgin@inktank.com>
11 years agorgw: skip read_policy checks for system_users
Josh Durgin [Thu, 10 Oct 2013 22:50:39 +0000 (15:50 -0700)]
rgw: skip read_policy checks for system_users

A system user should still be able to examine suspended buckets, and
get -ENOENT instead of -EACCESS for a deleted object.

Fixes: #6616
Backport: dumpling
Signed-off-by: Josh Durgin <josh.durgin@inktank.com>
11 years agoMerge pull request #750 from ceph/wip-backtrace
Gregory Farnum [Thu, 24 Oct 2013 00:43:41 +0000 (17:43 -0700)]
Merge pull request #750 from ceph/wip-backtrace

Reviewed-by: Greg Farnum <greg@inktank.com>
11 years agoMerge pull request #761 from ceph/wip-6620
Sage Weil [Wed, 23 Oct 2013 23:24:23 +0000 (16:24 -0700)]
Merge pull request #761 from ceph/wip-6620

mds: MDSMap: adjust buffer size for uint64 values with more than 5 chars

Backport: dumpling, cuttlefish

11 years agomds: MDSMap: adjust buffer size for uint64 values with more than 5 chars 761/head
Joao Eduardo Luis [Wed, 23 Oct 2013 23:17:45 +0000 (00:17 +0100)]
mds: MDSMap: adjust buffer size for uint64 values with more than 5 chars

Fixes: #6620
Signed-off-by: Joao Eduardo Luis <joao.luis@inktank.com>
11 years agoMerge pull request #758 from hjwsm1989/master
Sage Weil [Wed, 23 Oct 2013 22:06:08 +0000 (15:06 -0700)]
Merge pull request #758 from hjwsm1989/master

   rename test_arch.c --> test_arch.cc to avoid undefined reference to `...

11 years agoMerge pull request #759 from jcfischer/master
Sage Weil [Wed, 23 Oct 2013 22:05:00 +0000 (15:05 -0700)]
Merge pull request #759 from jcfischer/master

doc: clarify that mons must have qurorum during deploy

11 years agodoc: clarify that mons must have qurorum during deploy 759/head
Jens-Christian Fischer [Wed, 23 Oct 2013 12:40:32 +0000 (14:40 +0200)]
doc: clarify that mons must have qurorum during deploy

If multiple mons are specified in 'ceph-deploy new', but less than
those necessary for quorum are started with 'ceph-deploy mon create',
later steps (like 'ceph-deploy gatherkeys') will fail.

11 years ago rename test_arch.c --> test_arch.cc to avoid undefined reference to `__gxx_persona... 758/head
huangjun [Wed, 23 Oct 2013 05:38:10 +0000 (13:38 +0800)]
   rename test_arch.c --> test_arch.cc to avoid undefined reference to `__gxx_personality_v0' error.
Signed-off-by: huangjun <hjwsm1989@gmail.com>
11 years agoMerge pull request #730 from ceph/wip-monc-ping
João Eduardo Luís [Wed, 23 Oct 2013 02:18:55 +0000 (19:18 -0700)]
Merge pull request #730 from ceph/wip-monc-ping

mon: MonClient: ping monitors without authenticating

* add support on the monitor to reply to MPing messages with the contents of
  'mon_status' and 'health', regardless of a client having authenticated beforehand.

* add support on the MonClient to send a MPing message to a randomly picked
  monitor (it was easier this way, '-m ip:port' allows for targeted ping) and block
  waiting for a reply.

* add support on librados, pybind/rados.py and the 'ceph' tool to send pings to
  monitors.

Resolves: #5984

Reviewed-by: Greg Farnum <greg@inktank.com>
Reviewed-by: Josh Durgin <josh.durgin@inktank.com>
Reviewed-by: Dan Mick <dan.mick@inktank.com>
Reviewed-by: Sage Weil <sage@inktank.com>
11 years agocli: ceph: add support to ping monitors 730/head
Joao Eduardo Luis [Wed, 23 Oct 2013 02:04:23 +0000 (03:04 +0100)]
cli: ceph: add support to ping monitors

Signed-off-by: Joao Eduardo Luis <joao.luis@inktank.com>
11 years agopybind: rados: ping a monitor via librados
Joao Eduardo Luis [Tue, 15 Oct 2013 16:49:57 +0000 (17:49 +0100)]
pybind: rados: ping a monitor via librados

Signed-off-by: Joao Eduardo Luis <joao.luis@inktank.com>
11 years agopybind: rados: support ETIMEDOUT on make_ex()
Joao Eduardo Luis [Wed, 23 Oct 2013 01:54:34 +0000 (02:54 +0100)]
pybind: rados: support ETIMEDOUT on make_ex()

Signed-off-by: Joao Eduardo Luis <joao.luis@inktank.com>
11 years agolibrados: support pinging a monitor without auth via RadosClient
Joao Eduardo Luis [Tue, 15 Oct 2013 16:49:40 +0000 (17:49 +0100)]
librados: support pinging a monitor without auth via RadosClient

Signed-off-by: Joao Eduardo Luis <joao.luis@inktank.com>
11 years agomon: MonClient: allow pinging a monitor without authenticating first
Joao Eduardo Luis [Wed, 16 Oct 2013 15:19:58 +0000 (16:19 +0100)]
mon: MonClient: allow pinging a monitor without authenticating first

Signed-off-by: Joao Eduardo Luis <joao.luis@inktank.com>
11 years agomon: MonClient: adjust whitespaces
Joao Eduardo Luis [Wed, 16 Oct 2013 15:19:48 +0000 (16:19 +0100)]
mon: MonClient: adjust whitespaces

Signed-off-by: Joao Eduardo Luis <joao.luis@inktank.com>
11 years agomon: Monitor: reply to ping messages, letting them know we're alive
Joao Eduardo Luis [Tue, 15 Oct 2013 17:36:28 +0000 (18:36 +0100)]
mon: Monitor: reply to ping messages, letting them know we're alive

Fixes: #5984
Signed-off-by: Joao Eduardo Luis <joao.luis@inktank.com>
11 years agomon: Monitor: do not flush formatter at end of _mon_status()
Joao Eduardo Luis [Wed, 16 Oct 2013 00:31:20 +0000 (01:31 +0100)]
mon: Monitor: do not flush formatter at end of _mon_status()

Delegate that to the caller so that we can combine the result of
_mon_status() with the result of other functions.

Signed-off-by: Joao Eduardo Luis <joao.luis@inktank.com>
11 years agoMerge remote-tracking branch 'gh/wip-6242-b' into next
Sage Weil [Tue, 22 Oct 2013 20:32:01 +0000 (13:32 -0700)]
Merge remote-tracking branch 'gh/wip-6242-b' into next

Reviewed-by: Greg Farnum <greg@inktank.com>
Reviewed-by: Dan Mick <dan.mick@inktank.com>
11 years agopybind/rados: create InterruptedOrTimeoutError exception 757/head
Sage Weil [Tue, 22 Oct 2013 20:12:59 +0000 (13:12 -0700)]
pybind/rados: create InterruptedOrTimeoutError exception

Signed-off-by: Sage Weil <sage@inktank.com>
11 years agoceph: move timeout
Sage Weil [Tue, 22 Oct 2013 20:02:22 +0000 (13:02 -0700)]
ceph: move timeout

Signed-off-by: Sage Weil <sage@inktank.com>
11 years agoceph: catch exceptions thrown during the rados handle init
Sage Weil [Tue, 22 Oct 2013 19:54:09 +0000 (12:54 -0700)]
ceph: catch exceptions thrown during the rados handle init

In my case, making ceph.conf unreadable triggers an exception here:

Traceback (most recent call last):
  File "./ceph", line 802, in <module>
    sys.exit(main())
  File "./ceph", line 575, in main
    conf_defaults=conf_defaults, conffile=conffile)
  File "/home/sage/src/ceph/src/pybind/rados.py", line 221, in __init__
    self.conf_read_file(conffile)
  File "/home/sage/src/ceph/src/pybind/rados.py", line 272, in conf_read_file
    raise make_ex(ret, "error calling conf_read_file")
rados.Error: error calling conf_read_file: errno EACCES

Signed-off-by: Sage Weil <sage@inktank.com>
11 years agoceph: show basic help before initializing cluster connection
Sage Weil [Tue, 22 Oct 2013 19:53:30 +0000 (12:53 -0700)]
ceph: show basic help before initializing cluster connection

That way we still get help if there is an error.

Signed-off-by: Sage Weil <sage@inktank.com>
11 years agoceph: default 5 second timeout for -h
Sage Weil [Tue, 22 Oct 2013 19:22:32 +0000 (12:22 -0700)]
ceph: default 5 second timeout for -h

Signed-off-by: Sage Weil <sage@inktank.com>
11 years agoceph: add --connect-timeout option
Sage Weil [Tue, 22 Oct 2013 19:22:24 +0000 (12:22 -0700)]
ceph: add --connect-timeout option

Signed-off-by: Sage Weil <sage@inktank.com>
11 years agoceph: print basic options before connecting
Sage Weil [Tue, 22 Oct 2013 18:23:28 +0000 (11:23 -0700)]
ceph: print basic options before connecting

This will let you control-c if the mon is unresponsive.

Signed-off-by: Sage Weil <sage@inktank.com>
11 years agoceph: fixup do_help() function connection check
Greg Farnum [Thu, 17 Oct 2013 23:45:06 +0000 (16:45 -0700)]
ceph: fixup do_help() function connection check

We might have cluster_handle defined, but not have
successfully connected. Instead, check if it's in
the connected state.

Signed-off-by: Greg Farnum <greg@inktank.com>
11 years agoceph.in: add emacs modeline
Sage Weil [Tue, 22 Oct 2013 18:13:04 +0000 (11:13 -0700)]
ceph.in: add emacs modeline

Signed-off-by: Sage Weil <sage@inktank.com>
11 years agoMerge branch 'wip-6606' into next
Yehuda Sadeh [Tue, 22 Oct 2013 19:27:51 +0000 (12:27 -0700)]
Merge branch 'wip-6606' into next

Reviewed-by: Sage Weil <sage@inktank.com>
11 years agorgw: don't bother to call c_str() on strings passed to dump_string() 755/head
Yehuda Sadeh [Tue, 22 Oct 2013 19:10:57 +0000 (12:10 -0700)]
rgw: don't bother to call c_str() on strings passed to dump_string()

dump_string() also accepts const string reference.

Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
11 years agoMerge remote-tracking branch 'gh/next'
Sage Weil [Tue, 22 Oct 2013 17:45:27 +0000 (10:45 -0700)]
Merge remote-tracking branch 'gh/next'

11 years agoMerge pull request #756 from hjwsm1989/master
Loic Dachary [Tue, 22 Oct 2013 17:43:03 +0000 (10:43 -0700)]
Merge pull request #756 from hjwsm1989/master

  test_ceph_argparse.py: No assert_not_in and assert_in in nose.tools

Reviewed-by: Loic Dachary <loic@dachary.org>
11 years agoMerge pull request #749 from ceph/wip-6599
Sage Weil [Tue, 22 Oct 2013 17:39:54 +0000 (10:39 -0700)]
Merge pull request #749 from ceph/wip-6599

client: fix invalid iterator dereference in Client::trim_caps()

Backport: emperor, dumpling, cuttlefish
Reviewed-by: Sage Weil <sage@inktank.com>
11 years agoMerge pull request #754 from ceph/wip-test-librbd
Josh Durgin [Tue, 22 Oct 2013 17:04:25 +0000 (10:04 -0700)]
Merge pull request #754 from ceph/wip-test-librbd

fix ceph_test_lirbd crash
Reviewed-by: Josh Durgin <josh.durgin@inktank.com>
11 years agoceph_test_librbd: fix heap overrun 754/head
Sage Weil [Tue, 22 Oct 2013 16:37:08 +0000 (09:37 -0700)]
ceph_test_librbd: fix heap overrun

We are storing rbd_snap_info_t structs, not pointers to them.  But we
can also avoid the heap entirely.

This crashed pretty reliably on arm.

Signed-off-by: Sage Weil <sage@inktank.com>
11 years ago test_ceph_argparse.py: No assert_not_in and assert_in in nose.tools 756/head
huangjun [Tue, 22 Oct 2013 11:16:57 +0000 (19:16 +0800)]
  test_ceph_argparse.py: No assert_not_in and assert_in in nose.tools
Signed-off-by: huangjun <hjwsm1989@gmail.com>
11 years agorgw: init src_bucket_name, src_object in the S3 handler
Yehuda Sadeh [Tue, 22 Oct 2013 01:02:32 +0000 (18:02 -0700)]
rgw: init src_bucket_name, src_object in the S3 handler

Be consistent and initialize these fields also in the S3 case.

Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
11 years agorgw: get rid of req_state.bucket_name
Yehuda Sadeh [Mon, 21 Oct 2013 21:45:59 +0000 (14:45 -0700)]
rgw: get rid of req_state.bucket_name

No need for this field, as we already have req_state.bucket_name_str.
This saves us some memory allocation / freeing through every request
processing.

Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
11 years agorgw: turn swift COPY into PUT
Yehuda Sadeh [Mon, 21 Oct 2013 21:17:12 +0000 (14:17 -0700)]
rgw: turn swift COPY into PUT

Fixes: #6606
The swift COPY operation is unique in a sense that it's a write
operation that has its destination not set by the URI target, but by a
different HTTP header. This is problematic as there are some hidden
assumptions in the code that the specified bucket/object in the URI is
the operation target. E.g., certain initialization functions, quota,
etc. Instead of creating a specialized code everywhere for this case
just turn it into a regular copy operation, that is, a PUT with
a specified copy source.

Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
11 years agolibrbd: parse args to ceph_test_librbd
Sage Weil [Mon, 21 Oct 2013 22:55:32 +0000 (15:55 -0700)]
librbd: parse args to ceph_test_librbd

Signed-off-by: Sage Weil <sage@inktank.com>
11 years agolibrbd: fix build error
Sage Weil [Mon, 21 Oct 2013 22:48:42 +0000 (15:48 -0700)]
librbd: fix build error

From a10703008f7f4eb57a62658f2b9a015eb81509d0.

Signed-off-by: Sage Weil <sage@inktank.com>
11 years agoceph-mon: add debug to ip selection
Sage Weil [Mon, 21 Oct 2013 22:33:37 +0000 (15:33 -0700)]
ceph-mon: add debug to ip selection

This will hopefully help us track down #5804.

Signed-off-by: Sage Weil <sage@inktank.com>
11 years agoMerge pull request #753 from ceph/wip-5668-b
Josh Durgin [Mon, 21 Oct 2013 21:58:31 +0000 (14:58 -0700)]
Merge pull request #753 from ceph/wip-5668-b

librbd: wire up flush counter
Reviewed-by: Josh Durgin <josh.durgin@inktank.com>
11 years agolibrbd: wire up flush counter 753/head
Sage Weil [Mon, 21 Oct 2013 21:40:03 +0000 (14:40 -0700)]
librbd: wire up flush counter

Fixes: #5668
Signed-off-by: Sage Weil <sage@inktank.com>
11 years agoMerge pull request #751 from ceph/wip-6603
Loic Dachary [Mon, 21 Oct 2013 18:20:37 +0000 (11:20 -0700)]
Merge pull request #751 from ceph/wip-6603

a couple trivial leaks

11 years agocommon/BackTrace: fix memory leak 751/head
Sage Weil [Mon, 21 Oct 2013 16:22:35 +0000 (09:22 -0700)]
common/BackTrace: fix memory leak

Signed-off-by: Sage Weil <sage@inktank.com>
11 years agocommon/cmdparse: fix memory leak
Sage Weil [Mon, 21 Oct 2013 16:21:57 +0000 (09:21 -0700)]
common/cmdparse: fix memory leak

demangle is allocating with malloc() in this case.

Signed-off-by: Sage Weil <sage@inktank.com>
11 years agomds: update backtrace when old format inode is touched 750/head
Yan, Zheng [Mon, 21 Oct 2013 01:06:16 +0000 (09:06 +0800)]
mds: update backtrace when old format inode is touched

We updated inode format version to 7 when introducing inode backtrace.
If we found a inode's format version < 7 when fetching the inode, set
the inode's backtrace_version to 0, to indicate the inode's backtrace
is out of data. When touching a inode with backtrace_version == 0, we
also update its backtrace.

Signed-off-by: Yan, Zheng <zheng.z.yan@intel.com>
11 years agoclient: fix invalid iterator dereference in Client::trim_caps() 749/head
Yan, Zheng [Sun, 20 Oct 2013 09:08:42 +0000 (17:08 +0800)]
client: fix invalid iterator dereference in Client::trim_caps()

trimming inode drops a reference to the inode's parent, it may cause
the inode's parent also be trimmed. If the cap iterator 'p' happens to
point to the inode's parent and the inode's parent is trimmed, the cap
iterator 'p' become invalid.

Fix the issue by delaying removing cap from the seesion cap list.
(similar to what the kclient does)

Fixes #6599
Signed-off-by: Yan, Zheng <zheng.z.yan@intel.com>
11 years agoMerge pull request #747 from dachary/wip-commands
Sage Weil [Sun, 20 Oct 2013 04:12:38 +0000 (21:12 -0700)]
Merge pull request #747 from dachary/wip-commands

common: get_command_descriptions use cout instead of dout

Reviewed-by: Sage Weil <sage@inktank.com>
11 years agoMerge remote-tracking branch 'gh/next'
Sage Weil [Sun, 20 Oct 2013 04:01:28 +0000 (21:01 -0700)]
Merge remote-tracking branch 'gh/next'

11 years agoMerge pull request #748 from dachary/master
Loic Dachary [Sun, 20 Oct 2013 02:33:57 +0000 (19:33 -0700)]
Merge pull request #748 from dachary/master

autoconf: fix typo on AM_COMMON_CFLAGS

11 years agoautoconf: fix typo on AM_COMMON_CFLAGS 748/head
Loic Dachary [Sun, 20 Oct 2013 02:11:07 +0000 (04:11 +0200)]
autoconf: fix typo on AM_COMMON_CFLAGS

Signed-off-by: Loic Dachary <loic@dachary.org>
11 years agocommon: get_command_descriptions use cout instead of dout 747/head
Loic Dachary [Sat, 19 Oct 2013 16:57:47 +0000 (18:57 +0200)]
common: get_command_descriptions use cout instead of dout

Using dout instead of cout creates noise and makes it more difficult for
people trying to debug a failure in test_ceph_argparse.py.

The output of get_command_descriptions is modified to only contain
parseable information and the code parsing its output
test_ceph_argparse.py is removed.

Signed-off-by: Loic Dachary <loic@dachary.org>
11 years agoMerge pull request #746 from ceph/wip-6582
Sage Weil [Sat, 19 Oct 2013 06:08:08 +0000 (23:08 -0700)]
Merge pull request #746 from ceph/wip-6582

Wip 6582

Reviewed-by: Sage Weil <sage@inktank.com>
11 years agoMerge pull request #734 from kri5/master
Sage Weil [Sat, 19 Oct 2013 01:41:13 +0000 (18:41 -0700)]
Merge pull request #734 from kri5/master

ceph: Remove unavailable option with clang

Reviewed-by: Sage Weil <sage@inktank.com>
11 years agoReplicatedPG: copy: conditionally requeue copy ops when cancelled 746/head
Greg Farnum [Fri, 18 Oct 2013 23:34:11 +0000 (16:34 -0700)]
ReplicatedPG: copy: conditionally requeue copy ops when cancelled

We may need to requeue copy ops which are cancelled as part of an acting
set change but don't change the primary. To support this, add a
"requeue" flag to cancel_copy_ops() and copy_ops(), as well as to
CopyResults. The CopyCallback is then responsible for requeuing (the
higher layers can't do so as they can't know which request actually
triggered the copy).

Signed-off-by: Greg Farnum <greg@inktank.com>
11 years agoPG: add a requeue_op() function to complement requeue_ops().
Greg Farnum [Fri, 18 Oct 2013 23:24:27 +0000 (16:24 -0700)]
PG: add a requeue_op() function to complement requeue_ops().

Signed-off-by: Greg Farnum <greg@inktank.com>
11 years agoMerge pull request #741 from hjwsm1989/master
Loic Dachary [Fri, 18 Oct 2013 20:44:56 +0000 (13:44 -0700)]
Merge pull request #741 from hjwsm1989/master

ceph.spec.in:  Add erasure-code related files.

11 years agoMerge pull request #742 from atwardowski/patch-1
John Wilkins [Fri, 18 Oct 2013 18:21:57 +0000 (11:21 -0700)]
Merge pull request #742 from atwardowski/patch-1

Update ceph-authtool.rst - Fix typo

11 years agodoc: Removed references to Chef.
John Wilkins [Fri, 18 Oct 2013 18:12:43 +0000 (11:12 -0700)]
doc: Removed references to Chef.

fixes: #6464

Signed-off-by: John Wilkins <john.wilkins@inktank.com>
11 years agodoc/release-notes: missed mds snaps
Sage Weil [Fri, 18 Oct 2013 17:35:31 +0000 (10:35 -0700)]
doc/release-notes: missed mds snaps

Signed-off-by: Sage Weil <sage@inktank.com>
11 years agodoc/release-notes: v0.71
Sage Weil [Fri, 18 Oct 2013 17:33:23 +0000 (10:33 -0700)]
doc/release-notes: v0.71

Signed-off-by: Sage Weil <sage@inktank.com>
11 years agoUpdate ceph-authtool.rst 742/head
Adam Twardowski [Fri, 18 Oct 2013 17:14:25 +0000 (13:14 -0400)]
Update ceph-authtool.rst

Fix typo

11 years agoceph.spec.in: Add erasure-code related files. 741/head
huangjun [Fri, 18 Oct 2013 10:21:22 +0000 (18:21 +0800)]
ceph.spec.in:  Add erasure-code related files.
Signed-off-by: huangjun <hjwsm1989@gmail.com>
11 years agoMerge pull request #722 from ceph/wip-6475
Sage Weil [Fri, 18 Oct 2013 04:11:57 +0000 (21:11 -0700)]
Merge pull request #722 from ceph/wip-6475

radosgw: create /var/log/radosgw in package, not init script

Reviewed-and-tested-by: Gary Lowell <gary.lowell@inktank.com>
11 years agoMerge branch 'next'
Gary Lowell [Fri, 18 Oct 2013 01:51:16 +0000 (01:51 +0000)]
Merge branch 'next'

11 years agoMerge pull request #737 from xarses/6127
Josh Durgin [Fri, 18 Oct 2013 00:27:34 +0000 (17:27 -0700)]
Merge pull request #737 from xarses/6127

Add Redhat init script option
Reviewed-by: Josh Durgin <josh.durgin@inktank.com>
11 years agoAdd Redhat init script option 737/head
Andrew Woodward [Thu, 17 Oct 2013 23:21:58 +0000 (16:21 -0700)]
Add Redhat init script option

Resolves: 6127
Signed-off-by: Andrew Woodward <awoodward@mirantis.com>
11 years agoMerge pull request #738 from ceph/wip-cache-crc
Sage Weil [Thu, 17 Oct 2013 23:52:29 +0000 (16:52 -0700)]
Merge pull request #738 from ceph/wip-cache-crc

fix cached crc, bug #6583

Reviewed-by: Samuel Just <sam.just@inktank.com>
11 years agocommon/buffer: invalidate crc on zero, copy_in 738/head
Sage Weil [Thu, 17 Oct 2013 23:47:29 +0000 (16:47 -0700)]
common/buffer: invalidate crc on zero, copy_in

This does not capture users who

 - calc a crc
 - use c_str() to modify the buffer content
 - (re)calc a crc

Signed-off-by: Sage Weil <sage@inktank.com>