- 27 Jul, 2018 10 commits
-
-
Marc Gravell authored
-
Marc Gravell authored
-
Marc Gravell authored
-
Marc Gravell authored
-
Marc Gravell authored
-
Marc Gravell authored
-
Marc Gravell authored
-
Marc Gravell authored
rework everything to use CommandBytes rather than having tons of byte[] all over the place; move Execute command checking earlier, adding ArgCount concept to allow full check
-
Marc Gravell authored
-
Marc Gravell authored
-
- 25 Jul, 2018 12 commits
-
-
Marc Gravell authored
-
Marc Gravell authored
-
Marc Gravell authored
-
Marc Gravell authored
-
Marc Gravell authored
-
Marc Gravell authored
-
Marc Gravell authored
-
Marc Gravell authored
-
Marc Gravell authored
-
Marc Gravell authored
-
Marc Gravell authored
-
Marc Gravell authored
be evil, and make use of the innards of RedisValue to store array data (ref and count) when TypedRedisValue is multi-bulk
-
- 24 Jul, 2018 6 commits
-
-
Marc Gravell authored
-
Marc Gravell authored
# Conflicts: # StackExchange.Redis.Server/RedisServer.cs # StackExchange.Redis.Server/RespServer.cs
-
Marc Gravell authored
-
Marc Gravell authored
-
Marc Gravell authored
-
Nick Craver authored
-
- 23 Jul, 2018 11 commits
-
-
Marc Gravell authored
-
Marc Gravell authored
-
Marc Gravell authored
-
Marc Gravell authored
-
Marc Gravell authored
-
Marc Gravell authored
-
Marc Gravell authored
* v0.0 of test server * server very much doesn't work, but: pieces are in place * it's alive! * implement MemoryCache server * be a little pickier about which faults we actually report * implement **very badly** pre-RESP protocol for server; this is just to test PING_INLINE etc, and it *finds a catastrophic case* * make shutdown much more graceful; Databases should be immutable; enable ConnectionExecute vs ServerExecute concept; add awaitable server shutdown task * make MemoryCache usage standalone, and enable flush; implement cusstom box/unbox operations on RedisValue * implement basic "info" * limit scope of GetCurrentProcess * set slaveof in config to make clients happier * rename server types; implement MEMORY PURGE and TIME; make types explicit throughout in RedisServer * implement KEYS; prefer NotSupportedException to NotImplementedException, but recognize both * implement UNLINK; better handling of nil requests * implement basic set ops * implement STRLEN; handle WRONGTYPE * convention / reflection based command registration * overhaul how arity works so we can implement COMMAND; support null arrays * make sure we can parse null arras is RedisResult * set server socket options * fix error handling incomplete lines in the "inline" protocol * move ParseInlineProtocol out, but: still not implemented * implement CLIENT REPLY and add the "inline" protocol * need to support either quote tokenizer * add readme to the server code * accessibility on sample code * implement the last of the commands needed for redis-benchmark * fix naming
-
Nick Craver authored
* Initial IPv6 connection support TL;DR: We previously did IP:Port parsing based on splitting at the semicolon...that's pretty hostile for IPv6 and breaks everything. This adopts better parsing from Microsoft.AspNetCore since it doesn't exist in the BCL. The BCL/API conversation is started here: https://github.com/dotnet/corefx/issues/23463 A quick way to test this across all tests is via TestConfig, for example: { "MasterServer": "[::1]", "SlaveServer": "[::1]", "SecureServer": "[::1]" } Note: there's still an Unspecified == AddressFamily.InterNetwork in SocketManager which may be affecting DNS endpoints that are v6...need to look at that next. This change allows actually connecting to an IPv6 endpoint via IP though, that's step 1. * Move BasicStringGetPerf to non-parallel * Fix IPv4 assumptions The socket world has changed - unspecified and dual mode sockets now handle IPv6 correctly. We can just straight up remove the assumption of IPv4 anywhere in code now.
-
Nick Craver authored
Since this is a race/thread pool thing, we should wait and see if the messges come through rather than assuming any specific time period. This gives more lead time (still capped) while completing the test as fast as possible.
-
Nick Craver authored
-
Nick Craver authored
-
- 21 Jul, 2018 1 commit
-
-
Nick Craver authored
-