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.
Brian Aker [Tue, 2 Oct 2007 15:00:46 +0000 (08:00 -0700)]
Removed bind() call (and I have no idea how that got in there...)
Brian Aker [Tue, 2 Oct 2007 04:13:20 +0000 (21:13 -0700)]
Updating for larger cache.
Brian Aker [Tue, 2 Oct 2007 01:49:12 +0000 (18:49 -0700)]
Optimization for read(), we now optimize on buffer size.
Brian Aker [Tue, 2 Oct 2007 01:44:18 +0000 (18:44 -0700)]
Switching to pointer for read (mainly getting ready to do optimization)
Brian Aker [Tue, 2 Oct 2007 01:38:36 +0000 (18:38 -0700)]
Adding buffered IO to reads
Brian Aker [Tue, 2 Oct 2007 00:04:49 +0000 (17:04 -0700)]
Added buffered IO to write calls
Brian Aker [Mon, 1 Oct 2007 19:56:49 +0000 (12:56 -0700)]
Fixing broken memstat application
Brian Aker [Mon, 1 Oct 2007 13:45:33 +0000 (06:45 -0700)]
Added tag 0.3 for changeset
51d5149b2db0
Brian Aker [Mon, 1 Oct 2007 13:45:27 +0000 (06:45 -0700)]
Updates for release
Brian Aker [Mon, 1 Oct 2007 13:26:35 +0000 (06:26 -0700)]
Addinng missing files (getting old quickly...)
Brian Aker [Mon, 1 Oct 2007 13:25:02 +0000 (06:25 -0700)]
Missing hosts file.
free'ing memory from execute cycle
Brian Aker [Mon, 1 Oct 2007 13:22:03 +0000 (06:22 -0700)]
All *_init() have been changed to _create()
and _deinit() have been changed to _free()
Brian Aker [Mon, 1 Oct 2007 13:15:52 +0000 (06:15 -0700)]
Updates to tools for help and version.
memslap can now do useful things :)
An example:
./memslap --server=localhost --initial-load=50 --execute-number=100 --concurrency=30
Threads connecting to servers 30
Took 1.340 seconds to load data
Took 1.340 seconds to read data
Brian Aker [Sun, 30 Sep 2007 18:05:22 +0000 (11:05 -0700)]
memcap works, though it does nothing useful at the moment :)
Brian Aker [Sun, 30 Sep 2007 17:18:42 +0000 (10:18 -0700)]
Added/restructured all additional hostname information
Brian Aker [Sat, 29 Sep 2007 18:08:12 +0000 (11:08 -0700)]
Reworked the generator code into its own files.
Brian Aker [Sat, 29 Sep 2007 16:32:32 +0000 (09:32 -0700)]
Added basic print output.
Brian Aker [Sat, 29 Sep 2007 16:06:29 +0000 (09:06 -0700)]
Removing wrongly commited ifdef.
Grrrrr.... if I call quit, then mecurial should abort commits.
Brian Aker [Sat, 29 Sep 2007 16:05:28 +0000 (09:05 -0700)]
More udpates to memslap.
Fixed protocol error in single get call.
Brian Aker [Sat, 29 Sep 2007 10:17:32 +0000 (03:17 -0700)]
Added parameter to memslap so that key generation can be controlled through
parameters.
Brian Aker [Sat, 29 Sep 2007 10:05:40 +0000 (03:05 -0700)]
Fixed memory issues found by new tool memslap.
Added tool memslap.
Brian Aker [Sat, 29 Sep 2007 00:16:04 +0000 (17:16 -0700)]
Fix failing issue in memstat
Brian Aker [Fri, 28 Sep 2007 23:48:13 +0000 (16:48 -0700)]
Missing new common.h files (I should really check missing files before committing)
Brian Aker [Fri, 28 Sep 2007 23:46:08 +0000 (16:46 -0700)]
Adding miissing file
Brian Aker [Fri, 28 Sep 2007 23:41:07 +0000 (16:41 -0700)]
DTrace support
Refactored to use config built for application
Fixed test case push
Brian Aker [Fri, 28 Sep 2007 20:52:44 +0000 (13:52 -0700)]
Bunch of fixes related to portability.
Also reworked code to use send/recv over write/read.
More logic in get_test3test case
Brian Aker [Fri, 28 Sep 2007 16:35:52 +0000 (09:35 -0700)]
Finished RPM support. You can now type "make rpm" to build an rpm.
<brian@gir.tangent.org> [Fri, 28 Sep 2007 15:49:07 +0000 (08:49 -0700)]
Adding in spec file, this has not been tested... committing from my Mac :)
<brian@gir.tangent.org> [Thu, 27 Sep 2007 22:28:41 +0000 (15:28 -0700)]
Adding support for spaces in configure options.
Fixed issue with wrong pointer leading to connecting to wrong server!
Brian Aker [Thu, 27 Sep 2007 11:08:31 +0000 (04:08 -0700)]
Added tag 0.2 for changeset
72b98d8bc30e
Brian Aker [Thu, 27 Sep 2007 11:08:26 +0000 (04:08 -0700)]
Final fixes for 0.2 release
Brian Aker [Thu, 27 Sep 2007 10:52:31 +0000 (03:52 -0700)]
Fixing make dist
Brian Aker [Thu, 27 Sep 2007 10:51:49 +0000 (03:51 -0700)]
Updating for release
Brian Aker [Thu, 27 Sep 2007 10:45:48 +0000 (03:45 -0700)]
Readjusted a number function names.
Added the memstat utility (well... not it does something)
Some, though not enough, testing for multiple servers.
Brian Aker [Thu, 27 Sep 2007 06:56:53 +0000 (23:56 -0700)]
Removed all valgrind warning. Thought this error persists and I can not see
how it true:
==7225== Conditional jump or move depends on uninitialised value(s)
==7225== at 0x4C0AB6C: memcached_value_fetch (memcached_get.c:64)
==7225== by 0x4C0B0CB: memcached_get (memcached_get.c:138)
==7225== by 0x40144B: get_test2 (test.c:160)
==7225== by 0x4018B4: main (test.c:383)
<brian@gir.tangent.org> [Wed, 26 Sep 2007 09:34:23 +0000 (02:34 -0700)]
NEw string type.
Better multi get keysupport.
<brian@gir.local> [Tue, 25 Sep 2007 06:13:26 +0000 (08:13 +0200)]
Started to abstract out the stats calls.
<brian@gir.local> [Mon, 24 Sep 2007 21:29:39 +0000 (23:29 +0200)]
Merge Mark's test code.
<brian@gir.local> [Mon, 24 Sep 2007 21:21:48 +0000 (23:21 +0200)]
Fixed merge
Mark Atwood [Mon, 24 Sep 2007 20:33:50 +0000 (13:33 -0700)]
add test for longer data, 8K
Mark Atwood [Mon, 24 Sep 2007 20:32:42 +0000 (13:32 -0700)]
fix bug in calling parse_opt_servers
Mark Atwood [Mon, 24 Sep 2007 20:30:55 +0000 (13:30 -0700)]
fix bug, trying to walk off the end of the argv array
<brian@gir.local> [Mon, 24 Sep 2007 16:15:15 +0000 (18:15 +0200)]
Rewrote return read() to now read exactly character by character.
First version of multi key get has been added. It is...lame... but it works. I
will rewrite it to not call malloc each time, but instead clean up on its own.
Mark Atwood [Sat, 22 Sep 2007 22:46:56 +0000 (15:46 -0700)]
emit messages to stderr when write fails