Commit Graph
4052 Commits
Author SHA1 Message Date
jonathan pickett d623ca7e56 code review changes for commit 3ee3c4bdaf 2014-06-01 18:12:34 -07:00
jonathan pickett 228bf0350e resolving merge conflict from another local branch 2014-06-01 14:32:32 -07:00
jonathan pickett 803462c2c9 Merge branch '2.8' of https://github.com/MSOpenTech/Redis into 2.8 2014-06-01 14:31:33 -07:00
jonathan pickett 21fafdc620 issue 111: ANSI escape sequences not rendering on Windows terminal 2014-06-01 14:30:13 -07:00
jonathan pickett d4051d4c38 issue 105: 32-bit version not running on server 2003. Adjusted project settings and selected APIs in use via runtime version checks and windows version macro. 2014-05-29 22:33:19 -07:00
jonathan pickett 88606c1277 Merge branch '2.8' of https://github.com/MSOpenTech/redis into 2.8 2014-05-27 18:14:17 -07:00
jonathan pickett 4f0e17fb35 issue #93: cleaning up memory mapped files left over in cases where FILE_FLAG_DELETE_ON_CLOSE will not clean up file 2014-05-27 17:37:10 -07:00
jonathan pickett a4dd5cba88 issue #108: removing post build script from 32-bit release target. Script is 64-bit only. 2014-05-23 12:54:15 -07:00
jonathan pickett e97604ce63 issue #112: Adding permission for NETWORK_SERVICE on the folder redis-server.exe is in during --service-install. This allows for RDB files to be written and for .conf files to open in RW mode. Fixed a documentation typo. 2014-05-22 14:36:35 -07:00
jonathan pickett 1c3b70c971 Finishing merge of branch '2.8.4_msopen' of https://github.com/MSOpenTech/redis into 2.8.4_msopen
Conflicts:
	bin/release/redis-2.8.4.zip
	src/Win32_Interop/Win32_QFork.cpp
	src/sds.c
2014-05-16 12:49:22 -07:00
jonathan pickett 3ee3c4bdaf Merge branch 'antirez_2.8' into 2.8.4_msopen. Bumps version from 2.8.4 to 2.8.9
Conflicts:
	00-RELEASENOTES
	deps/linenoise/linenoise.c
	src/anet.c
	src/debug.c
	src/redis-cli.c
	src/redis.c
	src/sentinel.c
	src/t_zset.c
2014-05-15 19:18:26 -07:00
jonathan pickett f441b8d0f2 Issue 108: Added 32-bit support back in. QFork code requires a contiguous memory allocation for heap. Due to this requirement and 32-bit memory model limitations, maxheap is limited to about 512MB in 32-bit executable. 32-bit version appears to be about 30% slower than 64-bit version on 64-bit OS. 2014-05-15 18:24:59 -07:00
jonathan pickett ed1e8ac956 directory rename 2014-05-08 20:56:17 -07:00
jonathan pickett 991653211b directory rename 2014-05-08 20:55:08 -07:00
jonathan pickett 1fd9047397 issue 99: adding sample to demonstrate config of master + 3 slaves + 3 sentinels on one box. Discovered along the way that maxheap would not propagate through .conf include statements. It does now. 2014-05-08 20:07:39 -07:00
jonathan pickett 01eaf183b3 fix for issue #106: K32QueryWorkingSetEx not in kernel32.dll on Vista/Server 2008 2014-05-07 16:44:06 -07:00
jonathan pickett 176d1cd04b added comment for code changed in commit feb6c2884a 2014-05-07 16:41:49 -07:00
jonathan pickett feb6c2884a fix for issue #97: Added a modified sample to demonstrate large async GET operation. Also discovered that reply reading in async.c would stop if the reply data exceeded the buffer allocated for the read. redisAeAddRead() would not reschedule a read if already in read mode. To fix this is added redisAeForceAddRead(). 2014-05-01 15:19:18 -07:00
jonathan pickett 9f871c4ec5 Issue #95: Adding ability to specify custom service name/have multiple Redis service instances running.(Forgive the whitespace changes in Win32_Service.cpp. My editor was set to keep tabs when I wrote the code originally. Tabs are gone now.) 2014-04-30 14:34:01 -07:00
jonathan pickett de0a37aa76 Forgot to add custom build step for EventLog.mc to release target. Fixes issue 101. 2014-04-24 19:05:00 -07:00
jonathan pickett a2ef6a4fdc Added support for SIO_LOOPBACK_FAST_PATH (http://msdn.microsoft.com/en-us/library/windows/desktop/jj841212%28v=vs.85%29.aspx) . This speeds up localhost performance on Win8/Server2012+ significantly. In order to take advantage of this clients will have to enable socket fast loopback before connect(). 2014-04-23 11:53:13 -07:00
antirez 26375709c5 Redis 2.8.9. 2.8.9 2014-04-22 10:14:57 +02:00
jonathan pickett cbd76db6a3 fixes for issue #94: service install will now self elevate 2014-04-18 18:55:19 -07:00
antirez c5ee48a9d9 Fuzzy test for ZREMRANGEBYLEX added. 2014-04-18 16:16:20 +02:00
antirez be145453c6 ZREMRANGEBYLEX memory leak removed calling zslFreeLexRange(). 2014-04-18 16:16:20 +02:00
antirez 115782b1d7 PFCOUNT multi-key test added. 2014-04-18 16:16:20 +02:00
antirez 2cd20d3c4c Speedup hllRawSum() processing 8 bytes per iteration.
The internal HLL raw encoding used by PFCOUNT when merging multiple keys
is aligned to 8 bits (1 byte per register) so we can exploit this to
improve performances by processing multiple bytes per iteration.

In benchmarks the new code was several times faster with HLLs with many
registers set to zero, while no slowdown was observed with populated
HLLs.
2014-04-18 16:16:20 +02:00
antirez 3f5cd0c660 Speedup SUM(2^-reg[m]) in HyperLogLog computation.
When the register is set to zero, we need to add 2^-0 to E, which is 1,
but it is faster to just add 'ez' at the end, which is the number of
registers set to zero, a value we need to compute anyway.
2014-04-18 16:16:20 +02:00
antirez f0eca148ff PFCOUNT support for multi-key union. 2014-04-18 16:16:20 +02:00
antirez d25fd8be64 HyperLogLog low level merge extracted from PFMERGE. 2014-04-18 16:16:20 +02:00
antirez 4a26648a22 ZREMRANGEBYLEX implemented. 2014-04-18 16:16:20 +02:00
antirez 3fc22561e7 Always pass sorted set range objects by reference. 2014-04-18 16:16:04 +02:00
antirez ea0af9ace3 ZREMRANGE* commands refactored into a single generic function. 2014-04-18 16:14:38 +02:00
antirez 019e6f1889 Sorted set lex ranges stress tester. 2014-04-18 16:14:38 +02:00
jonathan pickett e674609fcb adding working hiredis async example to solution based off of example-ae.c source. For issues 18 + 86 2014-04-16 17:16:27 -07:00
jonathan pickett ff367b50e5 fdapi not properly mapping fstat in config.c, so we ended up invoking CRT version without the rfd->fd translation resulting in the CRT calling exit(). Fixes issue 43. 2014-04-16 15:25:21 -07:00
antirez 9c9aef24a2 Basic ZRANGEBYLEX / ZLEXCOUNT tests. 2014-04-17 00:08:38 +02:00
antirez 11f89497b4 Pass by pointer and release of lex ranges.
Given that the code was written with a 2 years pause... something
strange happened in the middle. So there was no function to free a
lex range min/max objects, and in some places the range was passed by
value.
2014-04-17 00:08:37 +02:00
antirez d975bb587f ZLEXCOUNT implemented.
Like ZCOUNT for lexicographical ranges.
2014-04-16 15:26:28 +02:00
antirez 71dfb87f76 More HyperLogLog tests. 2014-04-16 15:26:28 +02:00
antirez f2e59eae44 HyperLogLog invalid representation error code set to INVALIDOBJ. 2014-04-16 15:26:28 +02:00
antirez 469b7c5168 PFDEBUG TODENSE added.
Converts HyperLogLogs from sparse to dense. Used for testing.
2014-04-16 15:26:28 +02:00
antirez 614fcd491e User-defined switch point between sparse-dense HLL encodings. 2014-04-16 15:26:28 +02:00
antirez 08da2b79fc PFSELFTEST improved with sparse encoding checks. 2014-04-16 15:26:27 +02:00
antirez 5a0bab2a8f PFDEBUG ENCODING added. 2014-04-16 15:26:27 +02:00
antirez 05563310f4 Set HLL_SPARSE_MAX to 3000.
After running a few benchmarks, 3000 looks like a reasonable value to
keep HLLs with a few thousand elements small while the CPU cost is
still not huge.

This covers all the cases where the dense representation would use N
orders of magnitude more space, like in the case of many HLLs with
carinality of a few tens or hundreds.

It is not impossible that in the future this gets user configurable,
however it is easy to pick an unreasoable value just looking at savings
in the space dimension without checking what happens in the time
dimension.
2014-04-16 15:26:27 +02:00
antirez e77a3e40f2 Error message for invalid HLL objects unified. 2014-04-16 15:26:27 +02:00
antirez c4b2a7a7f4 PFMERGE fixed to work with sparse encoding. 2014-04-16 15:26:27 +02:00
antirez ee682c4c48 Mark PFDEBUG as write command in the commands table.
It is safer since it is able to have side effects.
2014-04-16 15:26:27 +02:00
antirez 9ef8ef410b Correctly replicate PFDEBUG GETREG.
Even if it is a debugging command, make sure that when it forces a
change in encoding, the command is propagated.
2014-04-16 15:26:27 +02:00