]> git-server-git.apps.pok.os.sepia.ceph.com Git - radosgw-agent.git/log
radosgw-agent.git
12 years agov1.1 v1.1
Gary Lowell [Fri, 22 Nov 2013 00:17:45 +0000 (16:17 -0800)]
v1.1

12 years agoInclude exception information in warnings
Josh Durgin [Fri, 1 Nov 2013 23:04:35 +0000 (16:04 -0700)]
Include exception information in warnings

This will provide more detail when an error occurs without requiring
logging at the debug level.

Signed-off-by: Josh Durgin <josh.durgin@inktank.com>
12 years agoworker: don't try to remove opstate for deletes
Josh Durgin [Fri, 1 Nov 2013 21:15:37 +0000 (14:15 -0700)]
worker: don't try to remove opstate for deletes

Only the copy operation creates an op state. If the object does not
exist, there is no op state to delete.

Signed-off-by: Josh Durgin <josh.durgin@inktank.com>
12 years agorequirements: set lower bound for requests
Josh Durgin [Wed, 30 Oct 2013 16:44:15 +0000 (09:44 -0700)]
requirements: set lower bound for requests

1.2.1 includes url-encoding headers, which we rely on.

Signed-off-by: Josh Durgin <josh.durgin@inktank.com>
12 years agoMerge pull request #6 from ceph/wip-fixes wip-datasync
Josh Durgin [Mon, 28 Oct 2013 21:01:58 +0000 (14:01 -0700)]
Merge pull request #6 from ceph/wip-fixes

Wip fixes
Reviewed-by: Josh Durgin <josh.durgin@inktank.com>
12 years agonormalize indentation to 4 spaces wip-fixes 6/head
Alfredo Deza [Mon, 28 Oct 2013 13:11:08 +0000 (09:11 -0400)]
normalize indentation to 4 spaces

Signed-off-by: Alfredo Deza <alfredo.deza@inktank.com>
12 years agodo not mix tabs and spaces
Alfredo Deza [Mon, 28 Oct 2013 12:53:36 +0000 (08:53 -0400)]
do not mix tabs and spaces

Signed-off-by: Alfredo Deza <alfredo.deza@inktank.com>
12 years agoremove semicolons from statements
Alfredo Deza [Mon, 28 Oct 2013 12:52:58 +0000 (08:52 -0400)]
remove semicolons from statements

Signed-off-by: Alfredo Deza <alfredo.deza@inktank.com>
12 years agosync: handle modified (meta)data log api
Josh Durgin [Fri, 25 Oct 2013 20:06:07 +0000 (13:06 -0700)]
sync: handle modified (meta)data log api

It now returns the last marker in addition to the log entries, which
are now in a separate field.

Signed-off-by: Josh Durgin <josh.durgin@inktank.com>
12 years agoworker: treat 404 as an empty marker
Josh Durgin [Fri, 25 Oct 2013 20:04:14 +0000 (13:04 -0700)]
worker: treat 404 as an empty marker

If the log does not exist at all, since no operations have been completed
on that bucket, we get a 404.

Signed-off-by: Josh Durgin <josh.durgin@inktank.com>
12 years agoworker: use the full op_id when waiting
Josh Durgin [Fri, 25 Oct 2013 20:01:55 +0000 (13:01 -0700)]
worker: use the full op_id when waiting

self.op_id is just the last part of it. Get it from the caller
instead.

Signed-off-by: Josh Durgin <josh.durgin@inktank.com>
12 years agoclient: fix url_safe for non-unicode
Josh Durgin [Fri, 25 Oct 2013 19:59:05 +0000 (12:59 -0700)]
client: fix url_safe for non-unicode

Actually use urllib.quote() in both cases.

Signed-off-by: Josh Durgin <josh.durgin@inktank.com>
12 years agoworker: only wait for existing objects
Josh Durgin [Fri, 25 Oct 2013 19:58:10 +0000 (12:58 -0700)]
worker: only wait for existing objects

Copy operations are long running and use a state log, but deletes do
not.

Signed-off-by: Josh Durgin <josh.durgin@inktank.com>
12 years agoclient: don't escape copy source header
Josh Durgin [Fri, 25 Oct 2013 19:44:46 +0000 (12:44 -0700)]
client: don't escape copy source header

Requests takes care of this for us.

Signed-off-by: Josh Durgin <josh.durgin@inktank.com>
12 years agoreduce default logging level for boto
Josh Durgin [Fri, 25 Oct 2013 19:39:51 +0000 (12:39 -0700)]
reduce default logging level for boto

Log messages about each new connection aren't very useful.

Signed-off-by: Josh Durgin <josh.durgin@inktank.com>
12 years agoHandle errors preparing for an incremental sync
Josh Durgin [Fri, 25 Oct 2013 19:37:52 +0000 (12:37 -0700)]
Handle errors preparing for an incremental sync

Log the issue, but keep retrying with a delay.
Move continuous incremental sync and preparing retry into
helpers in sync.py.

Signed-off-by: Josh Durgin <josh.durgin@inktank.com>
12 years agoMerge pull request #5 from kri5/wip-datasync
Josh Durgin [Tue, 15 Oct 2013 17:58:16 +0000 (10:58 -0700)]
Merge pull request #5 from kri5/wip-datasync

Rename variable to match option parsing variable name (again)

Reviewed-by: Josh Durgin <josh.durgin@inktank.com>
12 years agoRename variable to match option parsing variable name (again) 5/head
Christophe Courtaut [Tue, 15 Oct 2013 17:53:03 +0000 (19:53 +0200)]
Rename variable to match option parsing variable name (again)

The object_timeout variable was renamed object_sync_timeout
in the option parser, but not elsewhere.

This patch fixes it.

Signed-off-by: Christophe Courtaut <christophe.courtaut@gmail.com>
12 years agoMerge pull request #4 from kri5/wip-datasync
Josh Durgin [Tue, 15 Oct 2013 17:36:16 +0000 (10:36 -0700)]
Merge pull request #4 from kri5/wip-datasync

Rename variable to match option parsing variable name

Reviewed-by: Josh Durgin <josh.durgin@inktank.com>
12 years agoRename variable to match option parsing variable name 4/head
Christophe Courtaut [Tue, 15 Oct 2013 17:32:43 +0000 (19:32 +0200)]
Rename variable to match option parsing variable name

The data_log_window variable was renamed rgw_data_log_window
in the option parser, but not elsewhere.

This patch fixes it.

Signed-off-by: Christophe Courtaut <christophe.courtaut@gmail.com>
12 years agoMerge pull request #3 from kri5/wip-datasync
Josh Durgin [Tue, 15 Oct 2013 15:37:43 +0000 (08:37 -0700)]
Merge pull request #3 from kri5/wip-datasync

Fix option parsing for destination arg

Reviewed-by: Josh Durgin <josh.durgin@inktank.com>
12 years agoForgot to add unit tests dir as well
Josh Durgin [Tue, 15 Oct 2013 14:51:59 +0000 (07:51 -0700)]
Forgot to add unit tests dir as well

Signed-off-by: Josh Durgin <josh.durgin@inktank.com>
12 years agoFix option parsing for destination arg 3/head
Christophe Courtaut [Tue, 15 Oct 2013 10:09:06 +0000 (12:09 +0200)]
Fix option parsing for destination arg

As mentionned at http://docs.python.org/3.4/library/argparse.html#nargs,
nargs=1 will not provide the default behaviour, but instead will produce
a list of args, and that is not what we want.

This patch uses nargs=None to provide default behaviour instead.

As it is a positionnal argument, we can't use required option.

Signed-off-by: Christophe Courtaut <christophe.courtaut@gmail.com>
12 years agoAdd forgotten files for running tests
Josh Durgin [Mon, 14 Oct 2013 16:10:58 +0000 (09:10 -0700)]
Add forgotten files for running tests

12 years agoImplement data sync and several other changes that should be separate commits
Josh Durgin [Wed, 25 Sep 2013 01:05:42 +0000 (18:05 -0700)]
Implement data sync and several other changes that should be separate commits

The larger changes are:
- metadata sync uses the replica log for retrying after errors
- command line usage is simpler, and requires fewer options
- source and destination are gotten from / validated against
  the region map, with unit tests

Signed-off-by: Josh Durgin <josh.durgin@inktank.com>
12 years agoMerge pull request #1 from kri5/wip-datasync
Josh Durgin [Mon, 23 Sep 2013 19:23:46 +0000 (12:23 -0700)]
Merge pull request #1 from kri5/wip-datasync

Reviewed-by: Josh Durgin <josh.durgin@inktank.com>
12 years agoAdds data sync capabilities to test server 1/head
Christophe Courtaut [Mon, 23 Sep 2013 14:25:25 +0000 (16:25 +0200)]
Adds data sync capabilities to test server

12 years agoFix cli to match obj/method names according to sync.py
Christophe Courtaut [Mon, 23 Sep 2013 13:59:43 +0000 (15:59 +0200)]
Fix cli to match obj/method names according to sync.py

Signed-off-by: Christophe Courtaut <christophe.courtaut@gmail.com>
12 years agoSet up full data sync
Josh Durgin [Fri, 13 Sep 2013 20:01:34 +0000 (13:01 -0700)]
Set up full data sync

Get data log markers and store them after all buckets are synced. Also
get bucket-index markers for each bucket, and update them in the
bucket index replica log once syncing is complete. The bucket-index
replica log updates should be moved to happend after each bucket once
the actual object copying is implemented.

Signed-off-by: Josh Durgin <josh.durgin@inktank.com>
12 years agoRefactor sync and fix errors found by pyflakes
Josh Durgin [Wed, 11 Sep 2013 01:17:44 +0000 (18:17 -0700)]
Refactor sync and fix errors found by pyflakes

Instead of 4 copies of queue and worker creation
and results gathering, just have one, with subclasses
that can add special behavior at the beginning or end.

Signed-off-by: Josh Durgin <josh.durgin@inktank.com>
12 years agoclient: escape bucket and object names used in urls
Josh Durgin [Tue, 10 Sep 2013 00:19:12 +0000 (17:19 -0700)]
client: escape bucket and object names used in urls

Convert to utf8 since urllib doesn't handle unicode well in python 2.

Signed-off-by: Josh Durgin <josh.durgin@inktank.com>
12 years agoclient: fix spacing
Josh Durgin [Tue, 10 Sep 2013 00:14:32 +0000 (17:14 -0700)]
client: fix spacing

Signed-off-by: Josh Durgin <josh.durgin@inktank.com>
12 years agosync: remove extraneous error checking
Josh Durgin [Tue, 10 Sep 2013 00:12:24 +0000 (17:12 -0700)]
sync: remove extraneous error checking

These loops all end once a result of any sort is received for a child
process. It will already complete if every worked has a connection
error.

Signed-off-by: Josh Durgin <josh.durgin@inktank.com>
12 years agoGetting code readh for handoff
Joe Buck [Tue, 27 Aug 2013 18:14:06 +0000 (11:14 -0700)]
Getting code readh for handoff

Signed-off-by: Joe Buck <jbbuck@gmail.com>
12 years agoImprove exception handling
Joe Buck [Fri, 30 Aug 2013 16:26:46 +0000 (09:26 -0700)]
Improve exception handling

Catch exceptions and continue syncing items
in that shard but do NOT update the worker
bounds. This will result in redundant work
but prevents an error from stopping
the syncing of objects 'after' that object
in the same shard.

Signed-off-by: Joe Buck <jbbuck@gmail.com>
Reviewd-by: Josh Durgin <josh.durgin@inktank.com>
12 years agosetup.py: Add a version range to the python-boto dependency.
Gary Lowell [Mon, 26 Aug 2013 23:38:37 +0000 (16:38 -0700)]
setup.py:  Add a version range to the python-boto dependency.

Signed-off-by: Gary Lowell <gary.lowell@inktank.com>
12 years agosetup.cfg: Dependencies for rpm builds.
Gary Lowell [Mon, 26 Aug 2013 22:01:49 +0000 (15:01 -0700)]
setup.cfg:  Dependencies for rpm builds.

These should track the dependencies listed in setup.py and
requirements.txt.

Signed-off-by: Gary Lowell <gary.lowell@inktank.com>
12 years agodebian: Initial version debian control files
Gary Lowell [Mon, 26 Aug 2013 16:23:56 +0000 (09:23 -0700)]
debian:  Initial version debian control files

Signed-off-by: Gary Lowell <gary.lowell@inktank.com>
12 years agorename partial sync to incremental sync
Yehuda Sadeh [Mon, 5 Aug 2013 17:50:28 +0000 (10:50 -0700)]
rename partial sync to incremental sync

Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
12 years agoset bounds on the dest zone, not on the source zone
Yehuda Sadeh [Sat, 3 Aug 2013 05:20:00 +0000 (22:20 -0700)]
set bounds on the dest zone, not on the source zone

Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
12 years agotest api: init response to empty
Josh Durgin [Fri, 26 Jul 2013 23:25:31 +0000 (16:25 -0700)]
test api: init response to empty

This way len() etc works on it.

Signed-off-by: Josh Durgin <josh.durgin@inktank.com>
12 years agoAdd a quick and dirty http serving mode for testing
Josh Durgin [Thu, 25 Jul 2013 22:53:00 +0000 (15:53 -0700)]
Add a quick and dirty http serving mode for testing

POST to --test-server-host:--test-server-port/metadata/[partial|full]
to do a partial or full metadata sync. The server will respond
when the sync is complete.

Signed-off-by: Josh Durgin <josh.durgin@inktank.com>
12 years agocli: use new name for partial sync delay
Josh Durgin [Fri, 19 Jul 2013 18:16:46 +0000 (11:16 -0700)]
cli: use new name for partial sync delay

Signed-off-by: Josh Durgin <josh.durgin@inktank.com>