• Jul 1, 2014

    2.11.4

    Release 2.11.4
    The 2.11.4 release is the fourth bugfix release of the 2.11
    series.
    
    Most important fixes:
    
    	- Memory used for binary GET has been reduced significantly
    	- Redistribution logic enhanced to avoid deadlocks
    
    Fore more information, see the release notes published at
    http://couchbase.github.io/spymemcached/changelog.html.
    
    Summary of changes by contributor:
    
    Michael Nitschinger (2):
          SPY-174: Make sure MultiOperationCallback is threadsafe
          SPY-176: Enhance redistribution logic and avoid possible deadlocks.
    
    dominictootell (1):
          SPY-175: Reduce memory use in binary GET
  • Jun 5, 2014

    2.11.3

    Release 2.11.3
    The 2.11.3 release is the third bugfix release of the 2.11
    series.
    
    Most important fixes:
      - a concurrency issue has been fixed in StringUtils.isJSONObject()
      - shutdown handling is now more fail safe.
      - The selector is woken up on a regular basis, giving extension
        implementations a chance to perform work. This does not impact
        performance.
    
    Fore more information, see the release notes published at
    http://couchbase.github.io/spymemcached/changelog.html.
    
    Summary of changes by contributor:
    
    Michael Nitschinger (6):
          SPY-134: Make sure lastReadTimestamp is concurrency safe.
          SPY-170: Fix concurrency issue in StringUtils.isJSONObject()
          Move superfluous log message from info to debug.
          SPY-171: More robust shutdown handling characteristics.
          SPY-172: Wakeup the selector if idle.
          SPY-172: Addition - test case fix.
  • May 8, 2014

    2.11.2

    Release 2.11.2
    The 2.11.2 release is the second bugfix release of the 2.11
    series. Users of the 2.11.* series are urged to upgrade.
    
    Most important fixes:
      - when getBulk is supplied with an empty list of keys, the code now does
        not wait infinitely for the latch anymore, leading to deadlocks.
      - when using listeners, deadlock situations are now avoided by changing
        the scope of the locks.
      - better handling of error situations in terms of redistribution and
        cloning.
    
    Fore more information, see the release notes published at
    http://couchbase.github.io/spymemcached/changelog.html.
    
    Summary of changes by contributor:
    
    Michael Nitschinger (7):
          SPY-163: Count down bulk get latch even when empty key list is provided.
          SPY-164: Clone gets correctly.
          SPY-168: isJSONObject should handle null or empty input values.
          SPY-167: Avoid deadlock on notify listeners.
          SPY-166: Only readd a WRITE_QUEUED operation, not clone it in addition.
          SPY-165: Do not cache the selectedKeys.
          SPY-169: Also clone observe calls on redistribute.
  • Apr 15, 2014

    2.11.1

    Release 2.11.1
    The 2.11.1 release is the first bugfix release of the 2.11
    series.
    
    It addresses a bug where a custom nagle setting is not respected
    after a disconnect/reconnect of the node. It also adds better logging
    for failing auth threads.
    
    Fore more information, see the release notes published at
    http://couchbase.github.io/spymemcached/changelog.html.
    
    Summary of changes by contributor:
    
    Michael Nitschinger (2):
          Enhanced auth logging on sasl failure.
          SPY-162: Also respect nagle setting on reconnect.
    
    With others which can be listed here:
    http://code.google.com/p/spymemcached/issues/list
    
    Note that Couchbase also tracks issues here:
    http://www.couchbase.org/issues/browse/SPY
  • Apr 4, 2014

    2.11.0

    Release 2.11.0
    The 2.11.0 release is the first release of the new 2.11
    series. It includes backwards-compatible public API
    changes for new functionality, most notably:
    
     - The OperationStatus now has a typesafe code flag, so there no more need
       for string matching on errors
     - A pom.xml has been added to get started quicker for development
     - Redistributing of non-authed ops has been added
     - More async mutate (incr decr) methods have been exposed
     - Better logging for auth has been added
     - The max reconnect delay now correctly uses the builder value
     - Retry scheduling also works for bulk-gets
     - Better performance for StringUtils
    
    Fore more information, see the release notes published at
    http://couchbase.github.io/spymemcached/changelog.html.
    
    Summary of changes by contributor:
    
    Michael Nitschinger (13):
          SPY-153: Adding a typesafe StatusCode for OperationStatus instances.
          SPY-127: Optimize StringUtils performance.
          SPY-154: Also RETRY on binary NMVB response with bulk gets.
          SPY-158: Use Milliseconds instead of Seconds for "max reconnect" delay.
          SPY-159: Make the auth latch timeout configurable.
          SPY-157: Add Auth logging.
          SPY-160: Redistribute ops when waiting for authentication to complete.
          SPY-156: Expose more async mutate methods.
          SPY-157: Fix auth logging times.
          SPY-160: Queue retry op instead of redistributing it immediately.
          Add development pom.xml
          SPY-160: Avoid ConcurrentModificationException with the retry queue
          SPY-161: Cascade op cancellations.
    
    With others which can be listed here:
    http://code.google.com/p/spymemcached/issues/list
    
    Note that Couchbase also tracks issues here:
    http://www.couchbase.org/issues/browse/SPY
  • Feb 25, 2014

    2.10.6

    Release 2.10.6
    The 2.10.6 release is the sixth bugfix release of the 2.10
    series. It fixes a synchronization issue for listeners and
    adds new functionality for a typesafe status code
    on the OperationStatus instances.
    
    Fore more information, see the release notes published at
    http://couchbase.github.io/spymemcached/changelog.html.
    
    Summary of changes by contributor:
    
    Michael Nitschinger (3):
          SPY-155: Synchronize when future listeners are notified.
          Add support for replica get with CAS (ReplicaGets).
          SPY-153: Adding a typesafe StatusCode for OperationStatus instances.
    
    Deepti Dawar (1):
          Changes for the New feature test for credential encryption CRAM-MD5 or PLAIN
    
    With others which can be listed here:
    http://code.google.com/p/spymemcached/issues/list
    
    Note that Couchbase also tracks issues here:
    http://www.couchbase.org/issues/browse/SPY
  • Feb 17, 2014
  • Feb 6, 2014

    2.10.5

    Release 2.10.5
    The 2.10.5 release is the fifth bugfix release of the 2.10
    series. It fixes auth threads hanging during shutdown and
    it does not rename custom listener threads anymore.
    
    Fore more information, see the release notes published at
    http://couchbase.github.io/spymemcached/changelog.html.
    
    Summary of changes by contributor:
    
    vgnanasekaran (2):
          SPY-151: Interrupt pending AuthThreads during shutdown.
          SPY-150: Check connection status before waiting on the latch.
    
    Michael Nitschinger (2):
          CCCP: Implement NOT_MY_VBUCKET handling customization.
          SPY-148: Do not rename the worker thread for listeners.
    
    With others which can be listed here:
    http://code.google.com/p/spymemcached/issues/list
    
    Note that Couchbase also tracks issues here:
    http://www.couchbase.org/issues/browse/SPY
  • Jan 8, 2014

    2.10.4

    Release 2.10.4
    The 2.10.4 release is the fourth bugfix release of the 2.10
    series. It brings a bugfix that make sure listeners are not
    called until the callback is really complete.
    
    Fore more information, see the release notes published at
    http://couchbase.github.io/spymemcached/changelog.html.
    
    Summary of changes by contributor:
    
    Michael Nitschinger (4):
          Syncing MemcachedClientIF with MemcachedClient.
          Cleanup of MemcachedClient.
          SPY-149: Notify Listeners after Complete.
          Add missing import.
    
    With others which can be listed here:
    http://code.google.com/p/spymemcached/issues/list
    
    Note that Couchbase also tracks issues here:
    http://www.couchbase.org/issues/browse/SPY
  • Dec 2, 2013

    2.10.3

    Release 2.10.3
    The 2.10.3 release is the third bugfix release of the 2.10
    series. It brings minor bugfixes and enhancements.
    
    	- GetAndTouch can now be cloned.
    	- SASL list mechanism doesn't time out prematurely.
    	- On clones, the callstack for callbacks can't grow
    	  out of bounds anymore.
    	- Minor optimization for JIT inlining.
    
    Fore more information, see the release notes published at
    http://couchbase.github.io/spymemcached/changelog.html.
    
    Summary of changes by contributor:
    
    Michael Nitschinger (6):
          SPY-106: Allow GetAndTouchOperation to be cloned.
          SPY-136: Do not timeout when waiting on the sasl mechs.
          SPY-144: Avoid growing callstack on get* clones.
          Allow OperationImpl to be used elswhere.
          This changeset refactors the MemcachedConnection class.
          SPY-145: Make OperationImpl inline properly.
    
    With others which can be listed here:
    http://code.google.com/p/spymemcached/issues/list
    
    Note that Couchbase also tracks issues here:
    http://www.couchbase.org/issues/browse/SPY