m6w6/libmemcached
14 years agoMerge from Mikki
Brian Aker [Fri, 27 Nov 2009 22:05:12 +0000 (14:05 -0800)] 
Merge from Mikki

14 years agoCoding style changes. Moved the srandom to memcached_behavior_set instead of doing...
Mikko Koppanen [Fri, 27 Nov 2009 19:46:16 +0000 (19:46 +0000)] 
Coding style changes. Moved the srandom to memcached_behavior_set instead of doing it on every call. Added documentation

14 years agoAdded test for randomized reads
Mikko Koppanen [Fri, 27 Nov 2009 17:05:51 +0000 (17:05 +0000)] 
Added test for randomized reads

14 years agoAdded randomized read behavior
Mikko Koppanen [Fri, 27 Nov 2009 10:40:32 +0000 (10:40 +0000)] 
Added randomized read behavior

14 years agoAdding behaviors interface to C++ interface
Brian Aker [Fri, 27 Nov 2009 02:03:55 +0000 (18:03 -0800)] 
Adding behaviors interface to C++ interface

14 years agoUpdated tests to use new macro (less assert()).
Brian Aker [Wed, 25 Nov 2009 08:21:57 +0000 (00:21 -0800)] 
Updated tests to use new macro (less assert()).

14 years agoAdded get/set behavior functions to the C++ interface. Added a test to exercise the...
mike tsai [Thu, 19 Nov 2009 22:46:49 +0000 (14:46 -0800)] 
Added get/set behavior functions to the C++ interface. Added a test to exercise the new change

14 years agoRemove historical bootstrap script
Brian Aker [Tue, 17 Nov 2009 20:16:49 +0000 (12:16 -0800)] 
Remove historical bootstrap script

14 years agoRemove symbolic link (caused bzr branch to fail on Windows)
Trond Norbye [Mon, 16 Nov 2009 20:17:41 +0000 (21:17 +0100)] 
Remove symbolic link (caused bzr branch to fail on Windows)

14 years agoFix make dist issue 0.35
Brian Aker [Tue, 10 Nov 2009 03:57:08 +0000 (19:57 -0800)] 
Fix make dist issue

14 years agoUpdating for 0.35 release.
Brian Aker [Mon, 9 Nov 2009 19:19:38 +0000 (11:19 -0800)] 
Updating for 0.35 release.

15 years agoMerging support for by_key operations.
Brian Aker [Sat, 7 Nov 2009 02:36:32 +0000 (18:36 -0800)] 
Merging support for by_key operations.

15 years ago* Rename: s/by_key_with_initial/with_initial_by_key
Adam Thomason [Sat, 7 Nov 2009 01:50:53 +0000 (17:50 -0800)] 
* Rename: s/by_key_with_initial/with_initial_by_key
* Include separate test for each function
* Change type of offset to uint64_t for increment_by_key and decrement_by_key
* Change type of offset to uint64_t for memcached_auto; also use PRIu64 format in it for sprintf

15 years agoAdd master-key versions of incr and decr commands
Adam Thomason [Sat, 7 Nov 2009 01:07:34 +0000 (17:07 -0800)] 
Add master-key versions of incr and decr commands

15 years agoUpdate for support of mget in memslap.
Brian Aker [Fri, 6 Nov 2009 11:26:01 +0000 (03:26 -0800)] 
Update for support of mget in memslap.

15 years agoAdd mget as a test to memslap
Trond Norbye [Fri, 6 Nov 2009 10:04:53 +0000 (11:04 +0100)] 
Add mget as a test to memslap

15 years agoProtocol interface should be an enum and not a uint64_t for type safety
Trond Norbye [Fri, 6 Nov 2009 08:38:54 +0000 (09:38 +0100)] 
Protocol interface should be an enum and not a uint64_t for type safety

15 years agoMerge bug fix by Trond.
Brian Aker [Thu, 5 Nov 2009 17:09:15 +0000 (09:09 -0800)] 
Merge bug fix by Trond.

15 years agoCompatible Spymemcached support in ketama
Brian Aker [Tue, 3 Nov 2009 20:18:09 +0000 (12:18 -0800)] 
Compatible Spymemcached support in ketama

15 years agoAdded MEMCACHED_BEHAVIOR_KETAMA_COMPAT_MODE
Trond Norbye [Tue, 3 Nov 2009 13:09:13 +0000 (14:09 +0100)] 
Added MEMCACHED_BEHAVIOR_KETAMA_COMPAT_MODE

15 years agoMerge from Mike Tsai
Trond Norbye [Tue, 3 Nov 2009 09:21:32 +0000 (10:21 +0100)] 
Merge from Mike Tsai

15 years agoBug 463297: Deferred deletes doesn't work on a 1.4.x server
Trond Norbye [Thu, 29 Oct 2009 15:36:27 +0000 (16:36 +0100)] 
Bug 463297: Deferred deletes doesn't work on a 1.4.x server

15 years agoNULL commit
Brian Aker [Sun, 25 Oct 2009 02:46:28 +0000 (19:46 -0700)] 
NULL commit

15 years agoTrond's fix for Mark's build issue
Brian Aker [Sun, 25 Oct 2009 02:46:10 +0000 (19:46 -0700)] 
Trond's fix for Mark's build issue

15 years agoMerge Trond
Brian Aker [Sun, 25 Oct 2009 02:31:14 +0000 (19:31 -0700)] 
Merge Trond

15 years agoBug 458834: Fixed unintended fallthrough from OPT_ADD
Trond Norbye [Fri, 23 Oct 2009 07:18:54 +0000 (09:18 +0200)] 
Bug 458834: Fixed unintended fallthrough from OPT_ADD

15 years agoMerging changes from trunk
mike tsai [Thu, 22 Oct 2009 23:05:00 +0000 (16:05 -0700)] 
Merging changes from trunk

15 years agoAdded a new test called output_ketama_weighted_keys. It prints the hashing result
mike tsai [Thu, 22 Oct 2009 22:53:58 +0000 (15:53 -0700)] 
Added a new test called output_ketama_weighted_keys. It prints the hashing result
for hashing keys 0-9999 and outputs a file called ketama_keys.test.

We can then use this file to test ketama hashing in other libraries like spymemcached.
With a new class I just checked in called KetamaKeysTest (must download source from github).

javac -cp target/classes src/test/manual/net/spy/memcached/test/KetamaKeysTest.java
java -cp target/test/classes:target/classes:src/test/manual net.spy.memcached.test.KetamaKeysTest > ketama_keys.txt

To test the ketama hashing is working the same for both libraries, I ran this command:

$ cmp ketama_keys.txt /sandbox/b-server-3-4/srcroot/svr/import/common/java/java-memcached-client/ketama_keys.txt

15 years agoUpdate from Padraig, one additional valgrind warning I found cleaned up
Brian Aker [Wed, 21 Oct 2009 00:01:00 +0000 (17:01 -0700)] 
Update from Padraig, one additional valgrind warning I found cleaned up

15 years agoUpdated the C++ interface example to print out statistics that are retrieved
Padraig O'Sullivan [Tue, 20 Oct 2009 18:16:41 +0000 (14:16 -0400)] 
Updated the C++ interface example to print out statistics that are retrieved
using the getStats() method.

15 years agoAdded some doxygen comments for the getStats() method.
Padraig O'Sullivan [Tue, 20 Oct 2009 18:08:40 +0000 (14:08 -0400)] 
Added some doxygen comments for the getStats() method.

15 years agoAdded an initial version of getStats() to the C++ interface.
Padraig O'Sullivan [Tue, 20 Oct 2009 18:07:07 +0000 (14:07 -0400)] 
Added an initial version of getStats() to the C++ interface.

15 years agoFreed memory after a call to memcached_fetch
Padraig O'Sullivan [Tue, 20 Oct 2009 17:41:00 +0000 (13:41 -0400)] 
Freed memory after a call to memcached_fetch

15 years agoMade sure memory was freed after call to memcached_get_by_key.
Padraig O'Sullivan [Tue, 20 Oct 2009 17:39:42 +0000 (13:39 -0400)] 
Made sure memory was freed after call to memcached_get_by_key.

15 years agoMade sure memory was freed after calling memcached_get.
Padraig O'Sullivan [Tue, 20 Oct 2009 17:38:53 +0000 (13:38 -0400)] 
Made sure memory was freed after calling memcached_get.

15 years agoMerge from trunk.
Padraig O'Sullivan [Tue, 20 Oct 2009 17:23:50 +0000 (13:23 -0400)] 
Merge from trunk.

15 years agoKetama hashing is now compatable with spymemcached. The server key was not in the...
mike tsai [Mon, 19 Oct 2009 23:37:48 +0000 (16:37 -0700)] 
Ketama hashing is now compatable with spymemcached. The server key was not in the right format. Now changed to hostname/ip:port-index.

15 years agoFix typo
Brian Aker [Fri, 16 Oct 2009 15:01:26 +0000 (08:01 -0700)] 
Fix typo

15 years agoMerging Trond
Brian Aker [Wed, 14 Oct 2009 23:47:10 +0000 (16:47 -0700)] 
Merging Trond

15 years agoRefactor: memcached_mget_execute -> memcached_mget_execute_by_key
Trond Norbye [Wed, 14 Oct 2009 18:50:03 +0000 (20:50 +0200)] 
Refactor: memcached_mget_execute -> memcached_mget_execute_by_key

15 years agomget with replication didn't work if you had a cache miss
Trond Norbye [Wed, 14 Oct 2009 15:39:55 +0000 (17:39 +0200)] 
mget with replication didn't work if you had a cache miss

15 years agoFix problems with multigets and replication
Trond Norbye [Wed, 14 Oct 2009 13:18:07 +0000 (15:18 +0200)] 
Fix problems with multigets and replication

The current code could go out of sync and send multiple "NOOP" to the same
server depending on the replica number to get, and the fetch-code isn't
capable of handling that. The memcached_mget_execute code also complcates this
because it could process some of the messages while receiving them so we
cannot reset the get sequence if we are able to send out the commands but
not the NOOP... To create a sane patch for this I disabled the buffered mode.
It will increase the number of packets sent to the server, but at least we
have a well defined behavior.

15 years agoFix compile warnings generated by gcc 4.4.1
Trond Norbye [Wed, 14 Oct 2009 11:40:42 +0000 (13:40 +0200)] 
Fix compile warnings generated by gcc 4.4.1

15 years agoBug #447237: const-correctness in interface
Trond Norbye [Wed, 14 Oct 2009 10:31:33 +0000 (12:31 +0200)] 
Bug #447237: const-correctness in interface

15 years agoUpdating for date. 0.34
Brian Aker [Tue, 13 Oct 2009 15:40:04 +0000 (08:40 -0700)] 
Updating for date.

15 years agoUpdated spec file.
Brian Aker [Tue, 13 Oct 2009 15:39:24 +0000 (08:39 -0700)] 
Updated spec file.

15 years agoAdded documentation for memcached_mget_execute
Trond Norbye [Tue, 13 Oct 2009 15:31:38 +0000 (17:31 +0200)] 
Added documentation for memcached_mget_execute

15 years agoUpdated for release
Brian Aker [Tue, 13 Oct 2009 15:24:14 +0000 (08:24 -0700)] 
Updated for release

15 years agoInitial implementation of memcached_mget_execute
Trond Norbye [Tue, 13 Oct 2009 10:05:51 +0000 (12:05 +0200)] 
Initial implementation of memcached_mget_execute

15 years agoMerging bug fix for wrong retry counter.
Brian Aker [Mon, 12 Oct 2009 22:22:40 +0000 (15:22 -0700)] 
Merging bug fix for wrong retry counter.

15 years agoSimplify wrong_failure_counter_test to only test the changed code
Trond Norbye [Mon, 12 Oct 2009 21:31:25 +0000 (23:31 +0200)] 
Simplify wrong_failure_counter_test to only test the changed code

The original version of wrong_failure_counter_test didn't work on gaz because
the server_failure_counter was already set when entering the test case. The
purpose of the test was to ensure that memcached_quit didn't increment the
server_failure_counter, and to do so it tried to set different behavior flags.
Some of these would cause a really low retry timeout, which in turn could
cause "problems" on a slow server.

There was another problem in memcached_quit_server on some platforms caused
by the draining of the input pipe from from the server. This function could
get a read error, resulting in memcached_quit_server being called
recursively but this time signaling an IO error causing the counter to be
increased. We should ignore these errors, because they are triggered
while we are draining the stream from the server.

15 years agoFix compile warning from gcc (assert may not terminate the program if NDEBUG is set)
Trond Norbye [Mon, 12 Oct 2009 20:56:29 +0000 (22:56 +0200)] 
Fix compile warning from gcc (assert may not terminate the program if NDEBUG is set)

15 years agoMerged Jean-Charles Redoutey
Trond Norbye [Mon, 12 Oct 2009 20:01:44 +0000 (22:01 +0200)] 
Merged Jean-Charles Redoutey

15 years agoUpdating AUTHORS file.
Brian Aker [Mon, 12 Oct 2009 16:51:55 +0000 (09:51 -0700)] 
Updating AUTHORS file.

15 years agoMerge from Trond
Brian Aker [Mon, 12 Oct 2009 16:10:17 +0000 (09:10 -0700)] 
Merge from Trond

15 years agoMerge from Jean-Charles
Brian Aker [Mon, 12 Oct 2009 15:54:00 +0000 (08:54 -0700)] 
Merge from Jean-Charles

15 years agoMerge Jean-Charles
Brian Aker [Mon, 12 Oct 2009 15:30:16 +0000 (08:30 -0700)] 
Merge Jean-Charles

15 years agoReduce the number of items in the mget for regression_bug_434843 to 1024
Trond Norbye [Mon, 12 Oct 2009 13:53:19 +0000 (15:53 +0200)] 
Reduce the number of items in the mget for regression_bug_434843 to 1024

A higher number caused deadlock on MacOSX and Solaris 10. For a higher number
of items you should use the upcomming mget_execute interface.

15 years agoFixed compile failure due to wrong return value from function to detect if a testcase...
Trond Norbye [Mon, 12 Oct 2009 10:28:56 +0000 (12:28 +0200)] 
Fixed compile failure due to wrong return value from function to detect if a testcase should be skipped or not

15 years agoAlso keep track of last disconnected server at blacklisting time
Jean-Charles Redoutey [Sat, 10 Oct 2009 20:25:40 +0000 (22:25 +0200)] 
Also keep track of last disconnected server at blacklisting time

15 years agoFixed code to blacklist server as from very first failure, if specified so
Jean-Charles Redoutey [Sat, 10 Oct 2009 13:12:01 +0000 (15:12 +0200)] 
Fixed code to blacklist server as from very first failure, if specified so

15 years agoAdded reviewed version of memcached_server_get_last_disconnect
Jean-Charles Redoutey [Sat, 10 Oct 2009 11:57:03 +0000 (13:57 +0200)] 
Added reviewed version of memcached_server_get_last_disconnect

15 years agoFixed retry counter wrongly incremented in case of certain behavior change
Jean-Charles Redoutey [Sat, 10 Oct 2009 10:17:04 +0000 (12:17 +0200)] 
Fixed retry counter wrongly incremented in case of certain behavior change

15 years agoUpdated test harness, merged Trond's fix for OSX hang.
Brian Aker [Fri, 9 Oct 2009 17:41:13 +0000 (10:41 -0700)] 
Updated test harness, merged Trond's fix for OSX hang.

15 years agoBug #446766: OSX hangs on user_supplied_bug21
Trond Norbye [Fri, 9 Oct 2009 06:52:56 +0000 (08:52 +0200)] 
Bug #446766: OSX hangs on user_supplied_bug21

15 years agoMerge bug fix
Brian Aker [Thu, 8 Oct 2009 22:30:34 +0000 (15:30 -0700)] 
Merge bug fix

15 years agoBug #446607: Syscall param write(buf) points to uninitialised byte(s)
Trond Norbye [Thu, 8 Oct 2009 21:09:00 +0000 (23:09 +0200)] 
Bug #446607: Syscall param write(buf) points to uninitialised byte(s)

15 years agoFix return type.
Brian Aker [Thu, 8 Oct 2009 20:25:24 +0000 (13:25 -0700)] 
Fix return type.

15 years agoMerge in Adam's bug case.
Brian Aker [Thu, 8 Oct 2009 19:06:49 +0000 (12:06 -0700)] 
Merge in Adam's bug case.

15 years agoMerge of Trond's work.
Brian Aker [Thu, 8 Oct 2009 17:30:07 +0000 (10:30 -0700)] 
Merge of Trond's work.

15 years agoEric's fix for UDP delete
Brian Aker [Thu, 8 Oct 2009 17:17:46 +0000 (10:17 -0700)] 
Eric's fix for UDP delete

15 years agoBug #442914: 'delete noreply' may hang the client
Trond Norbye [Thu, 8 Oct 2009 14:09:49 +0000 (16:09 +0200)] 
Bug #442914: 'delete noreply' may hang the client

15 years agoMerge Eric
Trond Norbye [Thu, 8 Oct 2009 06:40:18 +0000 (08:40 +0200)] 
Merge Eric

15 years agofixed casting issue that was causing udp buffered delete tests to fail
Eric Lambert [Wed, 7 Oct 2009 23:41:10 +0000 (16:41 -0700)] 
fixed casting issue that was causing udp buffered delete tests to fail

15 years agoFlush does not reset the bytes stat, so we have no idea of the value
Trond Norbye [Wed, 7 Oct 2009 18:31:52 +0000 (20:31 +0200)] 
Flush does not reset the bytes stat, so we have no idea of the value

15 years agoMerge of additional C++ pieces from Padraig
Brian Aker [Wed, 7 Oct 2009 17:42:25 +0000 (10:42 -0700)] 
Merge of additional C++ pieces from Padraig

15 years agoInitial support for the ASCII protocol in memcapable
Trond Norbye [Wed, 7 Oct 2009 13:23:38 +0000 (15:23 +0200)] 
Initial support for the ASCII protocol in memcapable

15 years agoMerge from trunk.
Padraig O'Sullivan [Wed, 7 Oct 2009 01:18:36 +0000 (21:18 -0400)] 
Merge from trunk.

15 years agoAdded a method for removing servers and updated the add server method.
Padraig O'Sullivan [Wed, 7 Oct 2009 01:18:17 +0000 (21:18 -0400)] 
Added a method for removing servers and updated the add server method.

15 years agoFix compilation warnings reported by gcc
Trond Norbye [Tue, 6 Oct 2009 21:58:31 +0000 (23:58 +0200)] 
Fix compilation warnings reported by gcc

15 years agoMerge in bug fix for for MTaylor
Brian Aker [Tue, 6 Oct 2009 15:48:53 +0000 (08:48 -0700)] 
Merge in bug fix for for MTaylor

15 years agoMerge Trond.
Brian Aker [Tue, 6 Oct 2009 15:26:28 +0000 (08:26 -0700)] 
Merge Trond.

15 years agoBug 421108: memstat reports same value for bytes, bytes_read and bytes_written
Trond Norbye [Tue, 6 Oct 2009 13:59:34 +0000 (15:59 +0200)] 
Bug 421108: memstat reports same value for bytes, bytes_read and bytes_written

15 years agoBug #434843: Large multigets with binary protocol may hang client
Trond Norbye [Tue, 6 Oct 2009 10:48:57 +0000 (12:48 +0200)] 
Bug #434843: Large multigets with binary protocol may hang client

15 years agoCreate workaround for warnings generated by a broken C99 compiler
Trond Norbye [Mon, 5 Oct 2009 22:32:26 +0000 (00:32 +0200)] 
Create workaround for warnings generated by a broken C99 compiler

Some of the flags to turn on extra analysis and warnings in gcc contains
various bugs related to struct initializations (see section 6.7.8 in C99)
causing bogus warnings to be generated. Due to the fact that we compile
with warning == error, this is a showstopper for us. We cannot expect all
users to be running the latest compilers, so we have to create the workaround
in our code.

15 years agoFix return type from test functions (should be TEST_SUCCESS and not 0)
Trond Norbye [Mon, 5 Oct 2009 21:04:26 +0000 (23:04 +0200)] 
Fix return type from test functions (should be TEST_SUCCESS and not 0)

15 years agoStrip trailing whitespaces
Trond Norbye [Mon, 5 Oct 2009 21:03:23 +0000 (23:03 +0200)] 
Strip trailing whitespaces

15 years agoUpdate protocol due to review comments:
Trond Norbye [Mon, 5 Oct 2009 21:00:48 +0000 (23:00 +0200)] 
Update protocol due to review comments:

* Typedef the structs in the public interface
* Removed the EVENT enum, and replaced it with a bitmask of it's own type
* Added support for PAUSE events in the _binary_ protocol. ASCII is on the
  todo list :-)

15 years agoMove libmemcachedutil to libmemcached/util where it belongs
Trond Norbye [Mon, 5 Oct 2009 18:37:05 +0000 (20:37 +0200)] 
Move libmemcachedutil to libmemcached/util where it belongs

15 years agoFix compilation failure on 32 bit systems caused by macro redefinition
Trond Norbye [Mon, 5 Oct 2009 17:53:47 +0000 (19:53 +0200)] 
Fix compilation failure on 32 bit systems caused by macro redefinition

15 years agoWe missed the symbol versioning file. Oops.
Monty Taylor [Sun, 4 Oct 2009 18:22:43 +0000 (11:22 -0700)] 
We missed the symbol versioning file. Oops.

15 years agoMerge from trunk.
Padraig O'Sullivan [Fri, 2 Oct 2009 23:08:54 +0000 (19:08 -0400)] 
Merge from trunk.

15 years agoMerge Monty.
Brian Aker [Fri, 2 Oct 2009 00:11:12 +0000 (17:11 -0700)] 
Merge Monty.

15 years agoMerge Trond's protocol work.
Brian Aker [Fri, 2 Oct 2009 00:01:34 +0000 (17:01 -0700)] 
Merge Trond's protocol work.

15 years agopandora-build v0.62
Monty Taylor [Thu, 1 Oct 2009 23:48:09 +0000 (16:48 -0700)] 
pandora-build v0.62

15 years agoRefactor and add support for the ASCII protocol by wrapping the binary protocol
Trond Norbye [Thu, 1 Oct 2009 13:45:12 +0000 (15:45 +0200)] 
Refactor and add support for the ASCII protocol by wrapping the binary protocol

15 years agoPulled fix from Trond
Brian Aker [Wed, 30 Sep 2009 16:02:21 +0000 (09:02 -0700)] 
Pulled fix from Trond

15 years agoFix length mismatch
Brian Aker [Wed, 30 Sep 2009 03:51:54 +0000 (20:51 -0700)] 
Fix length mismatch

15 years agoBug fix for Toru's bug.
Brian Aker [Tue, 29 Sep 2009 16:37:03 +0000 (09:37 -0700)] 
Bug fix for Toru's bug.

15 years agoBug 438157: memcapable failure on OS X
Trond Norbye [Mon, 28 Sep 2009 22:25:10 +0000 (00:25 +0200)] 
Bug 438157: memcapable failure on OS X