Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
Commits on Feb 19, 2011
  1. @steveyen

    MB-3447 - binary protocol err handling

    steveyen authored
    Need to schedule the upstream conn into libevent so the error response
    actually gets written to socket.
    
    Change-Id: Id058e9dc84beeb2b109b99787b1ee9fc35dbbb38
Commits on Jan 29, 2011
  1. @steveyen @alk

    MB-3389 - b2b not-my-vbucket handling

    steveyen authored alk committed
    This bug fix required these changes...
    
    - binary protocol ntohs(status) conversion, so the NOT_MY_VBUCKET
      status code comparison actually works.
    
    - remove an assert() so that b2b request retry codepath works.
    
    - send binary error message to binary upstream clients instead of
      an ASCII protocol error string.
    
    Test hint -- point: memcachetest -h HOST:11211 -i 1 -c 1000 -l -L 2
    at moxi while adding & removing servers in a cluster.
    
    Change-Id: I06aba8cc3390042cc7430a3b4d5c659421f112de
    Reviewed-on: http://review.membase.org/4374
    Tested-by: Aliaksey Kandratsenka <alkondratenko@gmail.com>
    Reviewed-by: Aliaksey Kandratsenka <alkondratenko@gmail.com>
Commits on Jan 11, 2011
  1. @steveyen

    MB-3308 - error message when empty config received

    steveyen authored Matt Ingenthron committed
    Change-Id: I0d97b6d1113b30ea0ed88239fa42f74a4bd4e497
    Reviewed-on: http://review.membase.org/4237
    Tested-by: Matt Ingenthron <matt@northscale.com>
    Reviewed-by: Matt Ingenthron <matt@northscale.com>
Commits on Dec 16, 2010
  1. @steveyen

    MB-3202 - windows async connect() returns different errcode

    steveyen authored
    Enabled async connect() usage on windows, so moxi will have the same
    "pull network plug" behavior as on linux.  However, windows returns
    EWOULDBLOCK instead of EINPROGRESS, and WSAGetLastError() must be used
    instead of errno.
    
    Change-Id: I6f4918387737cbb6ee458825aec96b57877062ae
    Reviewed-on: http://review.membase.org/4103
    Reviewed-by: Bin Cui <bin.cui@gmail.com>
    Tested-by: Steve Yen <steve.yen@gmail.com>
Commits on Dec 15, 2010
  1. @steveyen

    ECONNRESET for win32

    steveyen authored
    Change-Id: I303c01f6f556cbc4da39b5263fad4d6ecde33b9e
    Reviewed-on: http://review.membase.org/4092
    Reviewed-by: Steve Yen <steve.yen@gmail.com>
    Tested-by: Steve Yen <steve.yen@gmail.com>
  2. @steveyen

    MB-3075: 100% CPU windows due to mapErr() error

    steveyen authored
    Found and fixed in memcached.exe originally by Bin Cui.
    
    Change-Id: I12e44fffcd16454d37014333533261df03b5e68a
    Reviewed-on: http://review.membase.org/4084
    Reviewed-by: Bin Cui <bin.cui@gmail.com>
    Tested-by: Steve Yen <steve.yen@gmail.com>
    Reviewed-by: Steve Yen <steve.yen@gmail.com>
Commits on Dec 14, 2010
  1. @steveyen

    MB-3175 - SERVER_ERROR proxy downstream timeout

    steveyen authored
    Provide a slightly different ascii error response if moxi hits a
    downstream timeout.
    
    Change-Id: Icb4501f1e255072263d96b17ea40a4e006a011de
    Reviewed-on: http://review.membase.org/4073
    Reviewed-by: Dustin Sallings <dustin@spy.net>
    Tested-by: Steve Yen <steve.yen@gmail.com>
Commits on Dec 13, 2010
  1. @steveyen @chiyoung

    MB-3162 - early closing code in conn_new() fixed

    steveyen authored chiyoung committed
    The previous change to reject client conns exposed an old bug in
    conn_new(), where libevent'ed conns were incorrectly added to the conn
    freelist.
    
    This fix clears up the libevent registration and avoids the freelist
    when moxi rejects a client conn early.
    
    Change-Id: I6e13271f10a8268e14ebf3de210026c23128a3b8
    Reviewed-on: http://review.membase.org/4058
    Tested-by: Chiyoung Seo <chiyoung.seo@gmail.com>
    Reviewed-by: Chiyoung Seo <chiyoung.seo@gmail.com>
Commits on Dec 9, 2010
  1. @steveyen @seanlynch

    MB-3113 - close new upstream conns when there are no buckets

    steveyen authored seanlynch committed
    Change-Id: I0dd5ccb3b35f6c3ba4d0b8678aaa9b8810559951
    Reviewed-on: http://review.membase.org/4008
    Tested-by: Sean Lynch <seanl@literati.org>
    Reviewed-by: Sean Lynch <seanl@literati.org>
  2. @steveyen @seanlynch

    MB-3113 - allow conn_init() callbacks to return an error

    steveyen authored seanlynch committed
    Change-Id: Ie3a41ea3f3009eb7995200bed7c01a219aa4baba
    Reviewed-on: http://review.membase.org/4007
    Tested-by: Sean Lynch <seanl@literati.org>
    Reviewed-by: Sean Lynch <seanl@literati.org>
  3. @steveyen @chiyoung

    MB-2649 - using labrea for slower simulant

    steveyen authored chiyoung committed
    Change-Id: Ibc4bf399f73f21a40ca8a1dfc1ae06cd9d0a279b
    Reviewed-on: http://review.membase.org/3979
    Tested-by: Chiyoung Seo <chiyoung.seo@gmail.com>
    Reviewed-by: Chiyoung Seo <chiyoung.seo@gmail.com>
Commits on Dec 8, 2010
  1. @steveyen @chiyoung

    MB-3129 - handle downstream_timeout/conn_queue_timeout cleaner

    steveyen authored chiyoung committed
    When we hit a downstream_timeout or downstream_conn_queue_timeout,
    count those events as separate stats.
    
    Also, explicitly propagate an error to the upstream conn right away,
    so upstream client is not hung.
    
    Also, use explicit downstream_release, instead of the indirect,
    counter-based approach of cproxy_close_conn().
    
    Change-Id: Ib7babe83812c69224d67815fe732d7e5bf3e7d52
    Reviewed-on: http://review.membase.org/3972
    Reviewed-by: Chiyoung Seo <chiyoung.seo@gmail.com>
    Tested-by: Chiyoung Seo <chiyoung.seo@gmail.com>
  2. @steveyen @chiyoung

    MB-3129 - avoid queue infinite loops

    steveyen authored chiyoung committed
    Change-Id: Ied94ff62af5794cc8c21467d1533ed78d4951227
    Reviewed-on: http://review.membase.org/3971
    Tested-by: Steve Yen <steve.yen@gmail.com>
    Reviewed-by: Chiyoung Seo <chiyoung.seo@gmail.com>
Commits on Dec 7, 2010
  1. @mtaneja @steveyen

    Ascii and Binary implementation for unl (unlock key)

    mtaneja authored steveyen committed
    unl is a membase command which is used to unlock a key
    which was previously locked by getl.
    
    Sample interaction:
    
    B:localhost:11211 unl k1 665
    UNLOCK_ERROR
    B:localhost:11211 getl k1
    VALUE k1 0 5 666
    manik
    END
    B:localhost:11211 unl k1 666
    UNLOCKED
    
    Change-Id: I0213b90535f60559f9606c73f4c83e70380990d0
    Reviewed-on: http://review.membase.org/3910
    Reviewed-by: Steve Yen <steve.yen@gmail.com>
    Tested-by: Steve Yen <steve.yen@gmail.com>
  2. @steveyen @chiyoung

    stats for downstream_conn_queue add/remove

    steveyen authored chiyoung committed
    Change-Id: I9d409005ce508669426f4be203501a7e16566ae5
    Reviewed-on: http://review.membase.org/3969
    Tested-by: Chiyoung Seo <chiyoung.seo@gmail.com>
    Reviewed-by: Chiyoung Seo <chiyoung.seo@gmail.com>
  3. @steveyen @chiyoung

    stats proxy reset for connect_wait

    steveyen authored chiyoung committed
    Change-Id: I61a0eec5512e46e463f875798a09868ba0a0ea73
    Reviewed-on: http://review.membase.org/3966
    Tested-by: Chiyoung Seo <chiyoung.seo@gmail.com>
    Reviewed-by: Chiyoung Seo <chiyoung.seo@gmail.com>
Commits on Dec 3, 2010
  1. @steveyen @chiyoung

    MB-3099 - revert code from f763c6a that stops cmd forwarding

    steveyen authored chiyoung committed
    Removed the extra check in cproxy_forward_or_error() that
    caused a regression in moxi behavior when you kill an entire
    cluster.
    
    Change-Id: Ib4befef8aebda79f4207df94b341c917cfa05b9e
    Reviewed-on: http://review.membase.org/3946
    Tested-by: Chiyoung Seo <chiyoung.seo@gmail.com>
    Reviewed-by: Chiyoung Seo <chiyoung.seo@gmail.com>
  2. @steveyen

    MB-3076 - broadcast commands have correct responses

    steveyen authored
    Due to the async connect() enhancement from zstored, moxi might
    receive a downstream connection error callback ("on close") at odd
    asynchronous times in the future.  So, the old synchronous connect()
    error handling code stopped working right.
    
    In this fix, if that asynchronous downstream conn "on_close" callback
    was due to a connect error, then don't run the usual response-or-error
    gathering codepaths because the downstream conn should have already
    been delinked from the request context.
    
    Change-Id: I689ce3201283ecd4226815ed3a2352eb1fa34b1d
    Reviewed-on: http://review.membase.org/3942
    Reviewed-by: Chiyoung Seo <chiyoung.seo@gmail.com>
    Tested-by: Steve Yen <steve.yen@gmail.com>
Commits on Dec 2, 2010
  1. @steveyen

    MB-3067 - suffix missing for broadcast commands on connect error

    steveyen authored
    During broadcast commands like "stats", if one of the downstream conns
    had a connect error, moxi wouldn't send back a response suffix (like
    "END\r\n").  This would block clients like memcachetest which use
    stats.  This originated due to the zstored conn pooling enhancement
    where the original response suffix code ended up now being too late in
    the codepath.
    
    Change-Id: Id08b12d2953843a73f3887d048cafdef594ea501
    Reviewed-on: http://review.membase.org/3929
    Reviewed-by: Chiyoung Seo <chiyoung.seo@gmail.com>
    Tested-by: Steve Yen <steve.yen@gmail.com>
Commits on Dec 1, 2010
  1. @steveyen

    MBT-21 - stats proxy crash after deleting default bucket

    steveyen authored
    In testlink case MBT-21, we delete the default bucket.  Both "stats
    proxy" and "stats proxy config" were crashing the gateway moxi before
    this fix.  This fix checks for non-null config.
    
    Change-Id: Ia25ec39a8a89e400bdf500b116a4069d54cf194a
    Reviewed-on: http://review.membase.org/3911
    Reviewed-by: Chiyoung Seo <chiyoung.seo@gmail.com>
    Tested-by: Steve Yen <steve.yen@gmail.com>
Commits on Nov 30, 2010
  1. @steveyen

    MB-2980 - front cache helper functions to avoid over-deleting

    steveyen authored
    New helper functions cproxy_front_cache_key() and
    cproxy_front_cache_delete(), originally via code patches
    from Paul Gale.
    
    These will help reduce unnecessary calls to mcache_delete()
    which will help keep better front cache statistics.
    
    Change-Id: If53ff0dbc3953ec74bb5d6bee8e6dfb4872f398e
    Reviewed-on: http://review.membase.org/3906
    Reviewed-by: Chiyoung Seo <chiyoung.seo@gmail.com>
    Tested-by: Steve Yen <steve.yen@gmail.com>
Commits on Nov 29, 2010
  1. @steveyen @seanlynch

    MB-3023 - moxi hangs in select() on linux

    steveyen authored seanlynch committed
    The theory with this fix is to handle a linux API difference in the
    select() API, where the inconclusive proof of this is that I haven't
    been able to reproduce it on OSX.
    
    From the linux select man page...
    
     On  Linux,  select() modifies timeout to reflect the amount of time not
     slept; most other implementations do not do this.   (POSIX.1-2001  per-
     mits  either  behaviour.)   This  causes  problems both when Linux code
     which reads timeout is ported to other operating systems, and when code
     is  ported to Linux that reuses a struct timeval for multiple select()s
     in a loop without reinitializing it.  Consider timeout to be  undefined
     after select() returns.
    
    So, the thinking is that the timeout struct was reused in moxi and
    eventually decreased to 0 by repeated calls to select(), which caused
    select() on linux to block.
    
    Change-Id: Ie349305be47b404cbba96aedd7f7a2dc2b614ff6
    Reviewed-on: http://review.membase.org/3888
    Tested-by: Sean Lynch <seanl@literati.org>
    Reviewed-by: Sean Lynch <seanl@literati.org>
Commits on Nov 24, 2010
  1. @steveyen

    MB-2972 - return SERVER_ERROR for membase bucket GET's

    steveyen authored Matt Ingenthron committed
    But, still return END's for memcached bucket GET's.
    
    Change-Id: Ie6c658b006eb870609e78b2b4988e12636fe08b2
    Reviewed-on: http://review.membase.org/3839
    Tested-by: Matt Ingenthron <matt@northscale.com>
    Reviewed-by: Matt Ingenthron <matt@northscale.com>
  2. @steveyen

    MB-2959 - never yield a downstream conn

    steveyen authored Matt Ingenthron committed
    Change-Id: I3f6ffe3f0b7de6207794d39120ac0c82fa297a3b
    Reviewed-on: http://review.membase.org/3826
    Tested-by: Matt Ingenthron <matt@northscale.com>
    Reviewed-by: Matt Ingenthron <matt@northscale.com>
Commits on Nov 23, 2010
  1. @steveyen @seanlynch

    MB-2962 - use errfds with select()

    steveyen authored seanlynch committed
    Change-Id: I42840bdc59a5b36a29b267feb69fc4c72def834a
    Reviewed-on: http://review.membase.org/3825
    Tested-by: Sean Lynch <seanl@literati.org>
    Reviewed-by: Sean Lynch <seanl@literati.org>
  2. @steveyen @chiyoung

    MB-2968 - logging around front cache

    steveyen authored chiyoung committed
    Change-Id: I2190f729a0e70e6e3309015b65553c8e3f34a124
    Reviewed-on: http://review.membase.org/3808
    Tested-by: Chiyoung Seo <chiyoung.seo@gmail.com>
    Reviewed-by: Chiyoung Seo <chiyoung.seo@gmail.com>
Commits on Nov 22, 2010
  1. @steveyen

    auth/read() should block less with 1 byte reads

    steveyen authored
    Change-Id: I8e3f74bf6532a4ef0bed07c0cdf402f087311a60
    Reviewed-on: http://review.membase.org/3795
    Reviewed-by: Sean Lynch <seanl@literati.org>
    Tested-by: Steve Yen <steve.yen@gmail.com>
  2. @steveyen @chiyoung

    MB-2892 - leading spaces in ascii cmd

    steveyen authored chiyoung committed
    Change-Id: Ibe72c13860170cdd93e97345534b683e9c8bfb7a
    Reviewed-on: http://review.membase.org/3763
    Reviewed-by: Dustin Sallings <dustin@spy.net>
    Tested-by: Chiyoung Seo <chiyoung.seo@gmail.com>
    Reviewed-by: Chiyoung Seo <chiyoung.seo@gmail.com>
  3. @steveyen @chiyoung

    MB-2811 - main thread reconfig is async

    steveyen authored chiyoung committed
    When libconflate gets a reconfig, it's now fully fire & forget
    rather than waiting for the main thread to complete.  The
    main thread also does not wait for the worker threads
    to complete.
    
    Change-Id: If2e3769bbefa0dcce7fd4292903b16bb45663b7f
    Reviewed-on: http://review.membase.org/3762
    Reviewed-by: Chiyoung Seo <chiyoung.seo@gmail.com>
    Tested-by: Chiyoung Seo <chiyoung.seo@gmail.com>
  4. @steveyen @chiyoung

    error codes for work msg queue functions

    steveyen authored chiyoung committed
    Change-Id: I9e9b2e964248fd55c7d40e7f266499aa58b5816b
    Reviewed-on: http://review.membase.org/3761
    Tested-by: Chiyoung Seo <chiyoung.seo@gmail.com>
    Reviewed-by: Chiyoung Seo <chiyoung.seo@gmail.com>
Commits on Nov 20, 2010
  1. @steveyen @chiyoung

    log vbucket_get_error() on bad config

    steveyen authored chiyoung committed
    Change-Id: I14ad783d64c1831985b2dd7e591feb801b1fb050
    Reviewed-on: http://review.membase.org/3757
    Tested-by: Steve Yen <steve.yen@gmail.com>
    Tested-by: Chiyoung Seo <chiyoung.seo@gmail.com>
    Reviewed-by: Chiyoung Seo <chiyoung.seo@gmail.com>
Commits on Nov 19, 2010
  1. @steveyen @chiyoung

    MB-2899 - parsing config using safe_strtoul functions

    steveyen authored chiyoung committed
    Change-Id: I32acf0c94a4a8f0b2b9cc0c6e0518739fb71c09b
    Reviewed-on: http://review.membase.org/3741
    Tested-by: Chiyoung Seo <chiyoung.seo@gmail.com>
    Reviewed-by: Chiyoung Seo <chiyoung.seo@gmail.com>
  2. @steveyen @chiyoung

    Only put paused conns back into downstream conn pool

    steveyen authored chiyoung committed
    Otherwise, if moxi releases a downstream conn that's not paused,
    close that conn.
    
    Change-Id: I8801114c174023e2dfbf2f6fa7bfe3eb0ca06b22
    Reviewed-on: http://review.membase.org/3739
    Tested-by: Chiyoung Seo <chiyoung.seo@gmail.com>
    Reviewed-by: Chiyoung Seo <chiyoung.seo@gmail.com>
Commits on Nov 18, 2010
  1. @mtaneja @steveyen

    Use msec_current_time to generate ts for logging

    mtaneja authored steveyen committed
    Fix for bug MB 2403
    
    Change-Id: Icde54a11fb2b24ec12cf1ce0956d2e19a821cf41
    Reviewed-on: http://review.membase.org/3727
    Reviewed-by: Steve Yen <steve.yen@gmail.com>
    Tested-by: Steve Yen <steve.yen@gmail.com>
  2. @steveyen @chiyoung

    inflight downstream conns count assert() fixed

    steveyen authored chiyoung committed
    Change-Id: I6b4a8e91e33bf2fa290731ac6316a32c7b09117e
    Reviewed-on: http://review.membase.org/3719
    Tested-by: Chiyoung Seo <chiyoung.seo@gmail.com>
    Reviewed-by: Chiyoung Seo <chiyoung.seo@gmail.com>
Something went wrong with that request. Please try again.