RediStack
RediStack copied to clipboard
Non-blocking, event-driven Swift client for Redis.
Today's afternoon, I tried to integrate the Redis to vapor 4 (my swift version is 5.4) according to this doc , I copied the url ( .package(url: "https://gitlab.com/mordil/RediStack.git", .branch("master"))) to...
Two of the graduation paths for the [SSWG Incubation process](https://github.com/swift-server/sswg/blob/master/process/incubation.md#graduation-criteria) out of sandbox are: > - Document that it is being used successfully in production by at least three independent...
The Redis retry configuration is potentially confusing, and downright problematic for Vapor. [`RedisConnectionPool.Configuration.init()`](https://github.com/swift-server/RediStack/blob/c8f217fb811bc0e9d01ca7423a39d817ba54fba0/Sources/RediStack/ConnectionPool/RedisConnectionPool%2BConfiguration.swift#L120) is implemented like this. Note that it specifies a default timeout in the signature of 60 seconds,...
Fix for #104. Makes the connection retry timeout consistent regardless of whether no value is specified, or `nil` is specified. Test failures seem to be due to the specific test...
Hi there, When connected to our Redis Cluster, we're getting a lot of errors of the form: ``` MOVED 12858 :6379 ``` From looking at the post here: https://forums.swift.org/t/redistack-future-plans/65703 and...
``` ================= ProtocolBenchmark ================= RESP Array Parsing ╒════════════════════════════╤═════════╤═════════╤═════════╤═════════╤═════════╤═════════╤═════════╤═════════╕ │ Metric │ p0 │ p25 │ p50 │ p75 │ p90 │ p99 │ p100 │ Samples │ ╞════════════════════════════╪═════════╪═════════╪═════════╪═════════╪═════════╪═════════╪═════════╪═════════╡ │ Malloc...
In the future we want to use Deque in RediStack. For this we need to add `swift-collections`. Since NIO already depends on DequeModule we don't really add an additional dependency...
We should add an index to the `RESP3ParsingError`, so that we can track where in the buffer parsing failed. This can be immensely helpful when trying to debug RESP3 values...
RediStack 1.4.0 triggers multiple Thread Sanitizer failures due to lack of thread-safety in metrics when multiple connections are in use simultaneously, as in the unit tests for [Vapor's RediStack integration...