Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
Commits on Aug 24, 2012
  1. @levin108 @kazum

    collie: make `collie vdi list` not read vdi_inuse bitmap

    levin108 authored kazum committed
    Signed-off-by: levin li <xingke.lwp@taobao.com>
    Signed-off-by: MORITA Kazutaka <morita.kazutaka@lab.ntt.co.jp>
Commits on Aug 5, 2012
  1. @levin108 @liuy

    sheep: remove SD_MAX{DEFAULT}_REDUNDANCY use SD_MAX{DEFAULT}_COPIES i…

    levin108 authored liuy committed
    …nstead
    
    Signed-off-by: levin li <xingke.lwp@taobao.com>
    Signed-off-by: Liu Yuan <tailai.ly@taobao.com>
  2. @levin108 @liuy

    sheep: fix a bug of objects loss when some node has zone set to 0

    levin108 authored liuy committed
    Before the patch 5b27736 it's OK
    to set zone to 0, because we skip the same node in get_nth_page(),
    but after that patch, we just check same_zone() in get_nth_page(),
    and same_zone() return false when zone of some node is 0, so there's
    problem, it's reasonable for users to set zone to 0, so this patch
    fixes this problem
    
    Signed-off-by: levin li <xingke.lwp@taobao.com>
    Signed-off-by: Liu Yuan <tailai.ly@taobao.com>
Commits on May 25, 2012
  1. @levin108 @liuy

    recovery: avoid recovering object from node left

    levin108 authored liuy committed
    In the recovery path, sheep may get to old epoch at which
    some nodes have left the cluster, we shouldn't try to recover
    objects from these nodes, so I add a check function to check
    whether the target node is a valid node at current epoch.
    
    Signed-off-by: levin li <xingke.lwp@taobao.com>
    Signed-off-by: Liu Yuan <tailai.ly@taobao.com>
Commits on May 16, 2012
  1. @levin108 @liuy

    fix a bug in the binary search in get_vnode_pos()

    levin108 authored liuy committed
    Consider the corner case that id is less than the id
    of the first entry in entry list.
    
    Signed-off-by: levin li <xingke.lwp@taobao.com>
    Signed-off-by: Liu Yuan <tailai.ly@taobao.com>
Commits on May 15, 2012
  1. @levin108 @liuy

    use binary search in hval_to_sheep()

    levin108 authored liuy committed
    As we know, binary search is much faster than sequential search,
    we can use binary search to make hval_to_sheep() faster.
    
    remove hval_to_sheep() and hval_to_sheeps() to make the code cleaner.
    
    Signed-off-by: levin li <xingke.lwp@taobao.com>
    Signed-off-by: Liu Yuan <tailai.ly@taobao.com>
  2. @levin108 @liuy

    add oid_to_vnodes() and obj_to_sheeps() to avoid too much vnodes trav…

    levin108 authored liuy committed
    …erse
    
    oid_to_vnode() and obj_to_sheep() traverse the vnode list to find the
    target vnode, many times, sheep needs to call these two functions nr_copies
    times, it means we also need to traverse the vnode list nr_copies times,
    it's absolutely a waste, so I add these two functions to make it only
    traverse one time in stead of calling obj_to_sheep()/oid_to_vnode() nr_copies
    time.
    
    Signed-off-by: levin li <xingke.lwp@taobao.com>
    Signed-off-by: Liu Yuan <tailai.ly@taobao.com>
Commits on Apr 25, 2012
  1. @levin108 @liuy

    collie: add an operation to show nodes in recovery

    levin108 authored liuy committed
    It's useful to show nodes in recovery when we debuging
    or maintaining the cluster, many times we want to know
    which nodes are in recovery, before this, we check the
    logs to find out whether the cluster has ended recovery,
    but with this patch, it's easier.
    
    usage:
    
    #collie node recovery
    
    output:
    
    Nodes In Recovery:
     Id   Host:Port         V-Nodes       Zone
      4   127.0.0.1:7006     	64          6
      5   127.0.0.1:7007      	64          7
      8   127.0.0.1:7010      	64         10
      9   127.0.0.1:7011      	64         11
     10   127.0.0.1:7012      	64         12
    
    Signed-off-by: levin li <xingke.lwp@taobao.com>
    Signed-off-by: Liu Yuan <tailai.ly@taobao.com>
Commits on Apr 16, 2012
  1. @levin108 @liuy

    collie: add an operation to track an object's locations at each epoch

    levin108 authored liuy committed
    When I was debuging the recovery issue(commit: 470533b), I found it
    conveninet to have such a tool to track an object's trace at each epoch
    to check whether an object is placed at the right place, so I add this
    operation for collie at such case.
    
    usage:
    $collie/collie vdi track debian -i 3
    
    output:
    
    obj b1f0b000000003 locations at epoch 1, copies = 3
    ---------------------------------------------------
    127.0.0.1:7004
    127.0.0.1:7000
    127.0.0.1:7001
    
    obj b1f0b000000003 locations at epoch 2, copies = 3
    ---------------------------------------------------
    127.0.0.1:7007
    127.0.0.1:7004
    127.0.0.1:7000
    
    obj b1f0b000000003 locations at epoch 3, copies = 3
    ---------------------------------------------------
    127.0.0.1:7007
    127.0.0.1:7008
    127.0.0.1:7004
    
    Signed-off-by: levin li <xingke.lwp@taobao.com>
    Signed-off-by: Liu Yuan <tailai.ly@taobao.com>
Commits on Apr 6, 2012
  1. @levin108 @liuy

    cleanup the data object in system snapshot by user

    levin108 authored liuy committed
    When recovering is over, it's no need storing the system
    snapshot data any more, since it's just for recovering.
    So when recovering is complete, we can cleanup the
    system snapshot to save the disk space, I implement it
    by adding a new subcommand 'cluster cleanup' to collie.
    
    Signed-off-by: levin li <xingke.lwp@taobao.com>
    Signed-off-by: Liu Yuan <tailai.ly@taobao.com>
Something went wrong with that request. Please try again.