29 Sep, 2011

2 commits

  • The incremental map updates have a record for each pg_temp mapping that is
    to be add/updated (len > 0) or removed (len == 0). The old code was
    written as if the updates were a complete enumeration; that was just wrong.
    Update the code to remove 0-length entries and drop the rbtree traversal.

    This avoids misdirected (and hung) requests that manifest as server
    errors like

    [WRN] client4104 10.0.1.219:0/275025290 misdirected client4104.1:129 0.1 to osd0 not [1,0] in e11/11

    Signed-off-by: Sage Weil

    Sage Weil
     
  • We need to apply the modulo pg_num calculation before looking up a pgid in
    the pg_temp mapping rbtree. This fixes pg_temp mappings, and fixes
    (some) misdirected requests that result in messages like

    [WRN] client4104 10.0.1.219:0/275025290 misdirected client4104.1:129 0.1 to osd0 not [1,0] in e11/11

    on the server and stall make the client block without getting a reply (at
    least until the pg_temp mapping goes way, but that can take a long long
    time).

    Reorder calc_pg_raw() a bit to make more sense.

    Signed-off-by: Sage Weil

    Sage Weil
     

25 May, 2011

1 commit


20 May, 2011

1 commit


13 Jan, 2011

1 commit


21 Oct, 2010

1 commit

  • This factors out protocol and low-level storage parts of ceph into a
    separate libceph module living in net/ceph and include/linux/ceph. This
    is mostly a matter of moving files around. However, a few key pieces
    of the interface change as well:

    - ceph_client becomes ceph_fs_client and ceph_client, where the latter
    captures the mon and osd clients, and the fs_client gets the mds client
    and file system specific pieces.
    - Mount option parsing and debugfs setup is correspondingly broken into
    two pieces.
    - The mon client gets a generic handler callback for otherwise unknown
    messages (mds map, in this case).
    - The basic supported/required feature bits can be expanded (and are by
    ceph_fs_client).

    No functional change, aside from some subtle error handling cases that got
    cleaned up in the refactoring process.

    Signed-off-by: Sage Weil

    Yehuda Sadeh