Brian Aker [Tue, 13 Nov 2007 03:58:46 +0000 (19:58 -0800)]
Removing memory issue/cleanup for threads in src/memslap.c
Brian Aker [Mon, 12 Nov 2007 21:20:56 +0000 (13:20 -0800)]
Updated tests (including one possible failing test from Brian Moon)
Brian Aker [Mon, 12 Nov 2007 08:44:43 +0000 (00:44 -0800)]
Fixed bug where zero length key was provided.
Brian Aker [Mon, 12 Nov 2007 07:07:28 +0000 (23:07 -0800)]
Fixing increment and decrement to take a 64bit unsigned value.
Brian Aker [Fri, 9 Nov 2007 22:18:25 +0000 (14:18 -0800)]
Updating server_st to keep client buffers per server.
This is ground work to allow more async efforts around protocol.
Brian Aker [Fri, 9 Nov 2007 21:21:40 +0000 (13:21 -0800)]
Adding friendly note about how to contribute to project.
Brian Aker [Fri, 9 Nov 2007 18:11:09 +0000 (10:11 -0800)]
Fixed bug reported by Stuart Midgley about what happens when there are no
servers and you try to set/get values.
Brian Aker [Fri, 9 Nov 2007 08:57:23 +0000 (00:57 -0800)]
Merged in new generate tests.
Brian Aker [Fri, 9 Nov 2007 08:51:53 +0000 (00:51 -0800)]
Updating test cases to return true/false
<brian@gir.tangent.org> [Fri, 9 Nov 2007 04:10:42 +0000 (20:10 -0800)]
More tests.
<brian@gir.local> [Tue, 6 Nov 2007 16:48:14 +0000 (08:48 -0800)]
Clean up warning for 32bit
Brian Aker [Mon, 5 Nov 2007 23:44:48 +0000 (15:44 -0800)]
Build the spec file (aka I stop hand editing it).
Brian Aker [Mon, 5 Nov 2007 19:36:58 +0000 (11:36 -0800)]
Added tag 0.8 for changeset
0e18bfea2fef
Brian Aker [Mon, 5 Nov 2007 19:36:50 +0000 (11:36 -0800)]
Fixup for release
Brian Aker [Sun, 4 Nov 2007 06:51:05 +0000 (23:51 -0700)]
Refactored out actual test code from test.c
Brian Aker [Sun, 4 Nov 2007 01:53:21 +0000 (18:53 -0700)]
fetch_result() implemented for memcached_result_st.
Brian Aker [Sat, 3 Nov 2007 23:28:42 +0000 (16:28 -0700)]
Restructuring for new memcached_result_st.
Found a bug where string might get allocated incorrectly.
Brian Aker [Sat, 3 Nov 2007 19:37:55 +0000 (12:37 -0700)]
Fixed 64bit issue in hash.
Extended string structure for eventual static strings.
Added result structure.
Brian Aker [Thu, 1 Nov 2007 09:57:39 +0000 (02:57 -0700)]
pkgconfig support done (need to write example)
wrote wrapper for freeing memcached_stat_st structures
moved my_errno to be chached_errno (aka removed conflict with MySQL)
Brian Aker [Wed, 31 Oct 2007 17:28:23 +0000 (10:28 -0700)]
Updated to A Cruz note (he worked on helping me get the CRC hash to match
other adaptors).
Brian Aker [Wed, 31 Oct 2007 17:20:28 +0000 (10:20 -0700)]
More Hashing methods
Brian Aker [Wed, 31 Oct 2007 07:44:20 +0000 (00:44 -0700)]
Update to interface (modified to better support lots of hashing functions).
Yes.... I apologize now for making non-backwards compatible change. Few were
probably using MD5 though since it was slow, I don't think this will be an
issue.
Brian Aker [Wed, 31 Oct 2007 00:43:50 +0000 (17:43 -0700)]
Updated test output.
More tests.
Brian Aker [Wed, 31 Oct 2007 00:36:40 +0000 (17:36 -0700)]
Added support for UNIX sockets.
Brian Aker [Tue, 30 Oct 2007 18:31:25 +0000 (11:31 -0700)]
Adding support for CRC Hashing
Brian Aker [Tue, 30 Oct 2007 17:38:47 +0000 (10:38 -0700)]
Added tag 0_7 for changeset
3a8499f79e65
Brian Aker [Tue, 30 Oct 2007 17:04:32 +0000 (10:04 -0700)]
Modified test to allow it to run on slow machines (aka it ran too long)
Brian Aker [Tue, 30 Oct 2007 16:26:14 +0000 (09:26 -0700)]
Cleanup for release
<brian@gir> [Sun, 28 Oct 2007 00:47:43 +0000 (17:47 -0700)]
Adding new memcached_clone() function
<brian@gir> [Sat, 27 Oct 2007 22:42:10 +0000 (15:42 -0700)]
Randomm dead code cleanup/spelling errors/made a variable static.
<brian@gir.tangent.org> [Sat, 27 Oct 2007 02:08:04 +0000 (19:08 -0700)]
Fixed return length issues.
Moved to using read() to see if I can trap problems reported for dead
memcached servers.
<brian@gir.local> [Fri, 26 Oct 2007 08:07:00 +0000 (01:07 -0700)]
Enabled all tests (they now all pass)
<brian@gir.local> [Fri, 26 Oct 2007 08:05:48 +0000 (01:05 -0700)]
This fixes the overflow size_t possible problem in the string functions (yes,
not likely to ever happen).
<brian@gir.local> [Fri, 26 Oct 2007 07:28:28 +0000 (00:28 -0700)]
Branch merge
<brian@gir.local> [Fri, 26 Oct 2007 07:26:36 +0000 (00:26 -0700)]
Rewrote test loop to remove copy/paste code.
WATCHPOINT now uses stderr.
Brian Aker [Thu, 25 Oct 2007 18:24:45 +0000 (11:24 -0700)]
Fix warning.
<brian@dhcpvisitor216236.slac.stanford.edu> [Thu, 25 Oct 2007 18:16:21 +0000 (11:16 -0700)]
Updating changelog
<brian@dhcpvisitor216236.slac.stanford.edu> [Thu, 25 Oct 2007 18:15:51 +0000 (11:15 -0700)]
Cleaning out asserts;
<brian@dhcpvisitor216236.slac.stanford.edu> [Thu, 25 Oct 2007 18:00:50 +0000 (11:00 -0700)]
Adding debug rules
<brian@dhcpvisitor216236.slac.stanford.edu> [Thu, 25 Oct 2007 18:00:04 +0000 (11:00 -0700)]
Updated to build on OSX (will now require updated autoconf)
New --enable-debug option for configure
WATCHPOINT are now compiled out (so safe to leave in code).
Cleaned up case in connect where wrong answer might be sent.
Cleaned up warnings in code around variable which might not have been
initialized.
Fixed usert test 3 (aka it was not using memory correctly)
Brian Aker [Wed, 24 Oct 2007 07:52:08 +0000 (00:52 -0700)]
Updated Changelog (may do a release this week).
Certainly is enough fixes :)
Brian Aker [Wed, 24 Oct 2007 07:49:10 +0000 (00:49 -0700)]
Improvement in multi-get. It no longer builds strings and sends them. It now
sends them as it builds them.
Brian Aker [Wed, 24 Oct 2007 07:34:49 +0000 (00:34 -0700)]
Removed the dead select code.
Fixed testapp so that we can test just selections of tests.
Fixed issue in IO, where in non-blocking mode it was possible not to write
out a response (aka, we didn't properly flush buffers before exiting).
Brian Aker [Tue, 23 Oct 2007 23:42:45 +0000 (16:42 -0700)]
Enabled user test
Brian Aker [Tue, 23 Oct 2007 23:41:49 +0000 (16:41 -0700)]
Allocation fixes in string library (now we can run bigger tests!)
Still a bug somewhere in get I suspect... mainly because of lazy execution.
Brian Aker [Sun, 21 Oct 2007 17:19:16 +0000 (10:19 -0700)]
Obvious mistake in test case launch
Brian Aker [Fri, 19 Oct 2007 22:18:10 +0000 (15:18 -0700)]
Big change, we use poll() now instead of select()
1) It is faster.
2) I think this means bye bye to the random write failure.
Difference?
select():
Testing user_supplied_bug1 3.512 [ ok ]
Testing user_supplied_bug2 3.461 [ ok ]
poll():
Testing user_supplied_bug1 1.324 [ ok ]
Testing user_supplied_bug2 1.303 [ ok ]
This commit also update variables for next release.
Brian Aker [Thu, 18 Oct 2007 05:42:05 +0000 (22:42 -0700)]
Finally tracked down the oddball valgrind warning that I could never figure
out :)
The check for one particular safety check was wrong (though something in the
server would have to go wrong to trigger this error).
Brian Aker [Thu, 18 Oct 2007 04:44:36 +0000 (21:44 -0700)]
Fixed malloc() issues in test.
Refactored memcached_get() (looks to be around 15% faster)
Brian Aker [Thu, 18 Oct 2007 04:01:10 +0000 (21:01 -0700)]
Test from Cal (get to go along with his set)
Brian Aker [Wed, 17 Oct 2007 23:05:24 +0000 (16:05 -0700)]
Fix for OSX
Brian Aker [Wed, 17 Oct 2007 16:00:41 +0000 (09:00 -0700)]
Updates for RPM
Brian Aker [Wed, 17 Oct 2007 15:43:10 +0000 (08:43 -0700)]
Updating changelon (put date on it)
Brian Aker [Wed, 17 Oct 2007 15:40:09 +0000 (08:40 -0700)]
Null merge
Brian Aker [Wed, 17 Oct 2007 15:39:38 +0000 (08:39 -0700)]
We keep having problems with it being this large so for release I am
lowering it.
Mark Atwood [Tue, 16 Oct 2007 21:03:36 +0000 (14:03 -0700)]
command line error reporting, use my_errno
Brian Aker [Tue, 16 Oct 2007 16:26:01 +0000 (09:26 -0700)]
New "fast help" for new hg/web/bleeding edge users.
Brian Aker [Tue, 16 Oct 2007 10:46:14 +0000 (03:46 -0700)]
Updating for release
Brian Aker [Tue, 16 Oct 2007 10:14:51 +0000 (03:14 -0700)]
Set recv/send sockket sizes.
Clarrified the memcached_behavior_set will reconnect sockets.
All test cases pass.
Brian Aker [Tue, 16 Oct 2007 09:29:30 +0000 (02:29 -0700)]
Made string class private
Brian Aker [Tue, 16 Oct 2007 09:27:57 +0000 (02:27 -0700)]
Cleaning up #include headers so that we don't export much
Mark Atwood [Mon, 15 Oct 2007 17:59:10 +0000 (10:59 -0700)]
remove autotools generated INSTALL from reposatory
Mark Atwood [Sun, 14 Oct 2007 21:00:13 +0000 (14:00 -0700)]
make rules for man pages now set proper headers and footers
Mark Atwood [Sun, 14 Oct 2007 20:29:23 +0000 (13:29 -0700)]
merge in brian's change to "Update for async delete"
Mark Atwood [Sun, 14 Oct 2007 20:28:09 +0000 (13:28 -0700)]
Many fixes to the POD documentation
Brian Aker [Sun, 14 Oct 2007 01:46:45 +0000 (18:46 -0700)]
Update for async delete.
<brian@gir> [Sat, 13 Oct 2007 23:16:12 +0000 (16:16 -0700)]
Updating makefile to ship pod
<brian@gir> [Sat, 13 Oct 2007 23:04:08 +0000 (16:04 -0700)]
Hard to believe I documented the entire thing... this is a first.
We should thank Remedy Tea in Capital Hill who let me drink three pots of
their green tea (which is the only reason I got through all of this).
Brian Aker [Sat, 13 Oct 2007 17:26:52 +0000 (10:26 -0700)]
Created a bigger buffer for write/read.
set are now more pipelined then perform (roughly 4X faster according to done
in users).
Brian Aker [Sat, 13 Oct 2007 17:13:30 +0000 (10:13 -0700)]
Refactor test system to give me times on calling tests (frankly I still need
to refactor the test system a bit more...)
Brian Aker [Sat, 13 Oct 2007 07:47:57 +0000 (00:47 -0700)]
Removed explicit flush from memcached_storage()
Brian Aker [Sat, 13 Oct 2007 00:25:26 +0000 (17:25 -0700)]
Extended test system to pin point specific test groups
Brian Aker [Sat, 13 Oct 2007 00:13:33 +0000 (17:13 -0700)]
Updates to clean server structure.
Addition for wildcard tests.
Fix for multi, aka three, hosts for key reads.
Brian Aker [Fri, 12 Oct 2007 08:46:27 +0000 (01:46 -0700)]
This is a rewrite of some of the IO code to handle larger loads of set data
on concurrent insert with non-blocking IO.
A bug was also uncovered where the read bufffers for multiple hosts were not
being read (all code has been refactored for that now).
One user contributed test case has been added.
Brian Aker [Thu, 11 Oct 2007 21:56:24 +0000 (14:56 -0700)]
Updating version numbers
Brian Aker [Thu, 11 Oct 2007 21:55:37 +0000 (14:55 -0700)]
Fixed strings returned by get to be null terminated (request by Cal
Heldenbrand)
Brian Aker [Thu, 11 Oct 2007 21:49:30 +0000 (14:49 -0700)]
Fixed for bad call in memcached_behavior.c
Brian Aker [Tue, 9 Oct 2007 07:24:59 +0000 (00:24 -0700)]
Added tag 0.5 for changeset
76a1ddcb86f3
Brian Aker [Tue, 9 Oct 2007 07:24:54 +0000 (00:24 -0700)]
Final data on version 0.5
Brian Aker [Mon, 8 Oct 2007 20:45:19 +0000 (13:45 -0700)]
Putting in revision number for new rpm
Brian Aker [Mon, 8 Oct 2007 20:44:31 +0000 (13:44 -0700)]
Fix for bug in behavior.
Added tests for most of the command line apps (not much of a test... but it
is a start)
Brian Aker [Mon, 8 Oct 2007 19:57:07 +0000 (12:57 -0700)]
Updated for help commands (and a little bit on ketama)
Brian Aker [Sun, 7 Oct 2007 23:47:09 +0000 (16:47 -0700)]
Cleanup of behavior (refactored...)
I am still using two enum... why? Trying to keep people fromm touching the
main interface. I don't have to do this though....
Brian Aker [Sun, 7 Oct 2007 23:12:56 +0000 (16:12 -0700)]
Updating TODO list
Brian Aker [Sun, 7 Oct 2007 23:09:57 +0000 (16:09 -0700)]
Rewrote internal connect function to do by demand (aka only open up
connections as we need them).
Found a bug in stats where we were hardcoding the serer key (which
ended up a a hang when requesting stats).
Brian Aker [Sun, 7 Oct 2007 21:39:58 +0000 (14:39 -0700)]
Updated return code from memcached_response to send proper return to
memcached_stats().
Fixed memcached_stat to report accurate values.
Brian Aker [Sun, 7 Oct 2007 20:43:31 +0000 (13:43 -0700)]
Finished up memcached_behavior_set/get() method. Tests and examples found in
test.c under behavior test.
Brian Aker [Fri, 5 Oct 2007 04:37:44 +0000 (21:37 -0700)]
Added MD5 hashing scheme. Refactored code to allow for more hashing types.
Brian Aker [Fri, 5 Oct 2007 04:04:17 +0000 (21:04 -0700)]
Fixed test case output
Remove unwanted WATCHPOINT
Started work for md5 hash'ing
Move around a couple of defines to keep people from using them
Brian Aker [Fri, 5 Oct 2007 03:47:50 +0000 (20:47 -0700)]
Null
Brian Aker [Fri, 5 Oct 2007 03:47:17 +0000 (20:47 -0700)]
Found bug in multi get where key size was not being calculated.
All mem commands can now used environmental variable MEMCACHED_SERVERS to
get a list of servers they should be commincating with.
server parse string method was removed from utilities and added to main
library. Its a little to handy not to have it in the library :)
Dustin Sallings [Thu, 4 Oct 2007 21:24:58 +0000 (14:24 -0700)]
Added an .hgignore file
Brian Aker [Thu, 4 Oct 2007 19:20:16 +0000 (12:20 -0700)]
Files are generated with each run, no reason to save them.
Brian Aker [Thu, 4 Oct 2007 19:19:35 +0000 (12:19 -0700)]
New bootstrap script thanks to Jan's lighttd project
Brian Aker [Thu, 4 Oct 2007 15:15:24 +0000 (08:15 -0700)]
See changes in changelog, but...
1) memslap --flush option
2) support for no_tcpdelay (though I don't find this to be faster)
3) More tests
Brian Aker [Wed, 3 Oct 2007 17:32:46 +0000 (10:32 -0700)]
Added tag 0.4 for changeset
45bd6abd7821
Brian Aker [Wed, 3 Oct 2007 17:32:40 +0000 (10:32 -0700)]
Readying for a release
Brian Aker [Wed, 3 Oct 2007 17:27:58 +0000 (10:27 -0700)]
Fix error causing crash in memslap
Brian Aker [Wed, 3 Oct 2007 17:03:48 +0000 (10:03 -0700)]
Non-blocking IO :)
Quit has also been modified to do an actual quit in cases where we need to
flush out any remaining write buffers.
Test system was refactored to make it a bit friendlier...
[brian@zim src]$ ./memslap --concurrency=5 --execute-number=5000 --initial-load=1 --non-blocking --servers=localhost --test=set
Threads connecting to servers 5
Took 10.252 seconds to load data
[brian@zim src]$ ./memslap --concurrency=5 --execute-number=5000 --initial-load=1 --servers=localhost --test=set
Threads connecting to servers 5
Took 200.373 seconds to load data
Brian Aker [Tue, 2 Oct 2007 23:52:14 +0000 (16:52 -0700)]
Getting everything ready for non-blocking IO.
Everything in library now goes through memcached_response()
New memcached_behavior_set() was written so that you can
adjust how the library works.