Katherine
b2dd315177
Set TCP timeout on Redis clients
2025-09-08 12:37:03 -04:00
Jon Chambers
bc20aee7c9
Rename CircuitBreakerUtil to ResilienceUtil
2025-08-27 14:45:29 -04:00
Jon Chambers
807e03ca2b
Remove legacy circuit breaker/retry metrics
2025-08-27 14:45:29 -04:00
Jon Chambers
f616612104
Use central registries for Retry and CircuitBreaker instances
2025-08-27 11:33:42 -04:00
Jon Chambers
a8c6fa93e0
Remove default/integral retries from Redis clients
2025-08-27 11:20:11 -04:00
Jon Chambers
2e32ab3282
Extend the Redis command timeout in FaultTolerantRedisClusterClientTest
2025-08-11 18:23:51 -04:00
Chris Eager
5f77d7f582
Migrate from embedded DynamoDBLocal to Testcontainers
2025-07-23 13:13:23 -05:00
Jon Chambers
876bf15a11
Extend timeouts for Redis client tests
2025-07-23 10:24:07 -04:00
Jon Chambers
73365369df
Fix a silly typo when generating Redis URIs for tests
2025-07-17 13:16:14 -04:00
Jon Chambers
609b86acb9
Inline the cluster compose file
2025-07-17 11:17:40 -04:00
Jon Chambers
1ea84483da
Copy Redis cluster compose file to a temporary file
2025-07-17 11:17:40 -04:00
Jon Chambers
73748a6341
Create new Redis client resources for each test
2025-07-17 10:00:48 -04:00
Jon Chambers
85a13a9dc0
Extend lifecycle of Redis cluster clients
2025-07-17 10:00:48 -04:00
Jon Chambers
803e73bd1e
Use a Redis testcontainer instead of embedded-redis in RedisClusterExtension
2025-07-17 10:00:48 -04:00
Jon Chambers
a3356d0188
Use a Redis testcontainer instead of embedded-redis in RedisServerExtension
2025-07-17 10:00:48 -04:00
Jon Chambers
0745cabc87
Explicitly use synchronous flush mode when clearing Redis databases between tests
2025-07-09 09:15:15 -05:00
Jon Chambers
3e80669f4e
Reuse/extend lifetime of Redis singleton resources
2025-07-09 09:15:15 -05:00
Jon Chambers
b81cd9ec61
Reuse Redis clusters for the duration of a test run
2025-07-09 09:15:15 -05:00
Jon Chambers
da6ed94443
Reuse client resources for lifetime of Redis cluster
2025-07-09 09:15:15 -05:00
Chris Eager
9121032114
FaultTolerantRedisClusterClientTest: increase blpop timeouts to make tests more reliable
2024-12-27 12:23:49 -08:00
Jon Chambers
7ca7fe7c13
Handle batches of commands in sharded circuit breakers
2024-11-06 09:36:08 -05:00
Jon Chambers
8c984cbf42
Introduce and evaluate a client presence manager based on sharded pub/sub
2024-11-05 15:51:29 -05:00
Jon Chambers
60cdcf5f0c
Only respond to cluster toplogy events from the same cluster to which we're subscribed
2024-11-05 11:42:51 -05:00
Jon Chambers
00d0dba62c
Don't retry pub/sub commands
2024-11-04 10:35:50 -05:00
Chris Eager
b5db8eba06
Remove unnecessary socket.setReuseAddress() in test extensions
2024-10-21 13:16:57 -05:00
Chris Eager
c6843c1eae
Update to embedded-redis 0.9.1
2024-10-21 13:16:45 -05:00
Jon Chambers
a9117010f9
Introduce FaultTolerantRedisClient
2024-10-09 09:22:10 -04:00
Chris Eager
11601fd091
Multi-recipient message views
...
This adds support for storing multi-recipient message payloads and recipient views in Redis, and only fanning out on delivery or persistence. Phase 1: confirm storage and retrieval correctness.
2024-09-04 13:58:20 -05:00
Chris Eager
08faa0c009
Only register metrics for connections to upstream nodes
2024-05-22 11:17:52 -05:00
Chris Eager
0e4be0c85a
Add tests for WhisperServerService#run
...
Additionally, `LocalWhisperServerService` may be used for integration testing.
2024-04-29 11:05:35 -05:00
Chris Eager
b734d58ab7
Coalesce all Redis clusters to per-shard circuit breakers
2024-04-16 12:04:18 -05:00
Chris Eager
9cad2c6b7d
Improve test Redis cluster setup and teardown
2024-04-15 15:58:23 -05:00
Chris Eager
fc1f471369
Use per-shard circuit breakers for additional Redis clusters
2024-04-15 13:45:24 -05:00
Chris Eager
2dc707d86e
Add per-shard Redis circuit breakers
2024-04-12 11:22:41 -05:00
Jon Chambers
f0ab52eb5d
Rename "master device" to "primary device"
2023-10-20 10:52:13 -04:00
Chris Eager
b44599cd59
Remove unused jedis library
2023-07-24 10:54:34 -04:00
Sergey Skrobotov
352e1b2249
test classes moved to same packages with components they test
2023-07-17 13:34:58 -07:00
Chris Eager
457ecf145f
Add test for Redis timeouts
2023-06-30 12:55:37 -05:00
Jon Chambers
11829d1f9f
Refactor provisioning plumbing to use Lettuce
2023-04-18 12:04:54 -04:00
Chris Eager
3ccfeb490b
Add retry after exceptions during a cluster topology change event callback
2023-03-29 11:41:19 -05:00
Sergey Skrobotov
ebf8aa7b15
fixing embedded redis based tests
2023-03-15 13:56:40 -07:00
Chris Eager
c10fda8363
Use reactive streams for WebSocket message queue
...
Initially, uses `ExperimentEnrollmentManager` to do a safe rollout.
2022-10-31 10:35:37 -05:00
Chris Eager
c05692e417
Update deprecated CircuitBreakerConfig usage
2022-09-07 11:47:15 -05:00
Ehren Kret
5df24edebf
Remove all unused imports remaining in project
2022-05-25 17:15:20 -05:00
Chris Eager
a1e84f5a88
Migrate service tests to JUnit 5
2022-01-03 15:10:02 -08:00
Chris Eager
b758737907
Migrate remaining JUnit 4 Redis cluster tests to RedisClusterExtension
...
* Increase redis cluster initialization wait to 10 seconds
* Move to JUnit 5 `Assumptions`
2022-01-03 14:59:39 -08:00
Chris Eager
13e346d4eb
Distinguish local vs remote in ClientPresenceManager#disconnectPresence
2021-12-02 14:32:42 -08:00
Jon Chambers
aa4bd92fee
Lazy-load scripts; fall back to eval if evalsha returns NOSCRIPT
2021-09-29 16:08:17 -04:00
Jon Chambers
2383aaaa3d
Update ClusterLuaScript formatting
2021-09-29 16:08:17 -04:00
Jon Chambers
98e41f9a37
Improve Redis exception handling
2021-09-22 10:31:39 -04:00