Julien Letessier
2b9ea1030a
Guard error log underflow in parser
2026-01-15 12:28:10 +01:00
Julien Letessier
7a949b6e7f
Guard bulk boundary reads in parser
2026-01-15 12:26:50 +01:00
Julien Letessier
4cbeaeda1b
Fix thread-safety and parser edge cases
2026-01-15 11:18:51 +01:00
Julien Letessier
9c974494a7
Update tests for Redis parity
2026-01-15 10:07:24 +01:00
Julien Letessier
8dd200a35e
Clean up pubsub response handling
...
Remove stray statements introduced during staging and normalize test runner order.
2026-01-15 09:15:59 +01:00
Julien Letessier
2c56d033b3
Validate script keys are on one shard
...
Reject EVAL/EVALSHA when keys map to different hash groups.
Adds eval_cross_shard test and runs it in the harness.
2026-01-15 09:15:03 +01:00
Julien Letessier
542749b0d3
Reject cross-shard MSETNX
...
Prevent MSETNX from being split across shards to preserve atomicity.
Adds msetnx_atomicity test and runs it in the harness.
2026-01-15 09:14:41 +01:00
Julien Letessier
781b4a68e9
Preserve MGET error responses
...
Avoid coercing MGET errors into nil when aggregating responses.
Adds mget_wrong_type test and runs it in the harness.
2026-01-15 09:14:08 +01:00
Julien Letessier
11d8c26c19
Keep connections open on transaction forbid
...
Return the error for forbidden commands in transactions without closing the client.
Adds transaction_forbid test and runs it in the harness.
2026-01-15 09:13:37 +01:00
Julien Letessier
c73d4056e2
Parse subscribe counts for long channel names
...
Extract subscription counts from the response tail to avoid truncation.
Adds pubsub_long_name test and runs it in the harness.
2026-01-15 09:13:09 +01:00
Julien Letessier
220772824c
Guard against null server responses
...
Convert unexpected null responses into DeliverRequestFail instead of crashing.
Adds null_response_handling test and runs it in the harness.
2026-01-15 09:12:43 +01:00
Julien Letessier
7485ebbb5a
Reset pubsub parser per message
...
Handle pubsub message replies immediately and reset the parser to avoid response reuse.
Adds pubsub_parser_reset test and runs it in the harness.
2026-01-15 09:12:00 +01:00
Julien Letessier
0243aa0fa6
Ensure pubsub confirmations precede messages
...
Pause message queuing while subscriptions are pending to preserve confirmation ordering.
Adds pubsub_subscription_order test and includes it in the test runner.
2026-01-15 09:11:12 +01:00
Julien Letessier
4b127b8eed
Fix pubsub SubMsg responses
...
Attach parsed pubsub responses to SubMsg requests so message data is delivered.
Adds pubsub_message_response test and runs it in test harness.
2026-01-15 09:10:29 +01:00
Julien Letessier
dca6079f59
Fix pubsub test assertions
2026-01-14 22:34:51 +01:00
Julien Letessier
b2a96d6979
Add test harness and basic tests
2026-01-14 21:30:55 +01:00