Skip to content

Instantly share code, notes, and snippets.

View zhouyuan's full-sized avatar

Yuan zhouyuan

View GitHub Profile
@zhouyuan
zhouyuan / gist:8092641
Created December 23, 2013 06:43
change ring order
diff --git a/swift/proxy/server.py b/swift/proxy/server.py
index 1d5f968..a4cecba 100644
--- a/swift/proxy/server.py
+++ b/swift/proxy/server.py
@@ -457,16 +457,32 @@ class Application(object):
handoff_nodes = node_iter
nodes_left = self.request_node_count(ring)
- for node in primary_nodes:
- if not self.error_limited(node):
for nheaders in outgoing_headers:
# RFC2616:8.2.3 disallows 100-continue without a body
if (req.content_length > 0) or chunked:
nheaders['Expect'] = '100-continue'
#####
nheaders['Content-Length'] = \
int(req.content_length / 4)
# need to sync up with kevin, how long is the header?
# then we could calculate the chunk_length and put it here
pile.spawn(self._connect_put_node, node_iter, partition,
From 25fd26acb26dbfec959daabca4e16350eed3f83b Mon Sep 17 00:00:00 2001
From: Yuan Zhou <yuan.zhou@intel.com>
Date: Tue, 15 Apr 2014 16:01:34 +0800
Subject: [PATCH] Fixes probe tests with non-default storage policy
Adding Storage Policy Index to direct client headers, use default
policy if none specified
Raise SkipTest if default object replica count not equals to 3 in
handoff related probe tests
diff --git a/swift/common/ring/ring.py b/swift/common/ring/ring.py
index daad23f..11618a3 100644
--- a/swift/common/ring/ring.py
+++ b/swift/common/ring/ring.py
@@ -243,7 +243,7 @@ class Ring(object):
if dev_id not in seen_ids:
part_nodes.append(self.devs[dev_id])
seen_ids.add(dev_id)
- return part_nodes
+ return [dict(node, index=i) for i, node in enumerate(part_nodes)]
diff --git a/src/ceph_fuse.cc b/src/ceph_fuse.cc
index 4dde417..0ef854e 100644
--- a/src/ceph_fuse.cc
+++ b/src/ceph_fuse.cc
@@ -209,6 +209,7 @@ int main(int argc, const char **argv, const char *envp[]) {
r = client->mount(g_conf->client_mountpoint.c_str());
if (r < 0) {
cerr << "ceph-fuse[" << getpid() << "]: ceph mount failed with " << cpp_strerror(-r) << std::endl;
+ cerr << "ceph-fuse[" << getpid() << "]: probably no MDS server is up?" << std::endl;
goto out_shutdown;
--- /tmp/test/gitbuilder/autobuilder.sh 2015-08-21 13:53:31.971931227 +0800
+++ autobuilder.sh 2015-07-02 10:59:09.588364316 +0800
@@ -54,6 +54,12 @@
trap "echo 'Killing (SIGINT)'; kill -TERM -$XPID; exit 1" SIGINT
trap "echo 'Killing (SIGTERM)'; kill -TERM -$XPID; exit 1" SIGTERM
wait; wait
+ mkdir -p /ceph_repos/ceph-deb-trusty-x86_64-basic/ref/${branch#*/}
+ cp -r --preserve=links /ceph_tmp/release/Ubuntu/{conf,db,dists,pool,trusty,version} /ceph_repos/ceph-deb-trusty-x86_64-basic/ref/${branch#*/}
+ echo $ref > /ceph_repos/ceph-deb-trusty-x86_64-basic/ref/${branch#*/}/sha1
+
diff --git a/make-debs.sh b/make-debs.sh
index b8d3e46..529af65 100755
--- a/make-debs.sh
+++ b/make-debs.sh
@@ -58,8 +58,8 @@ tar -C $releasedir -zxf $releasedir/ceph_$vers.orig.tar.gz
#
cp -a debian $releasedir/ceph-$vers/debian
cd $releasedir
-perl -ni -e 'print if(!(/^Package: .*-dbg$/../^$/))' ceph-$vers/debian/control
-perl -pi -e 's/--dbg-package.*//' ceph-$vers/debian/rules
From 37037a38000a12e77d858365dcbe4a073b529999 Mon Sep 17 00:00:00 2001
From: Yuan Zhou <yuan.zhou@intel.com>
Date: Fri, 28 Aug 2015 09:07:21 +0800
Subject: [PATCH 1/1] Update for internal use
delete http proxy before creating
bump gevent version in requirement
Signed-off-by: Yuan Zhou <yuan.zhou@intel.com>
---
cache_tier=cache
base_tier=rbd
ceph osd tier cache-mode $cache_tier forward
ceph osd tier remove-overlay $base_tier
ceph osd tier remove $base_tier $cache_tier
ceph osd pool delete $base_tier $base_tier --yes-i-really-really-mean-it
ceph osd pool create $base_tier 1024 1024 replicated
ceph osd pool set $base_tier size 2

#DRBD(distributed replication block deivce kernel module) 8.4.4 was shiped with Ubuntu 14.04 defautly.

  • install drbd on both nodes apt-get update; apt-get install drbd8-utils

  • load kernel module modprobe drbd

  • create disk resource