-
Notifications
You must be signed in to change notification settings - Fork 1.5k
Closed
Labels
Description
I have updated a project from Redis 1.2.6 to Redis 2.0.495 under target framework net462. Since the update, some tasks that are part of a transaction are not completed after executing the transaction. I suspect it is a 2.x bug since it was working consistently before, and I haven't seen a related release note (do tell if I missed it).
Here is a simplified code sample:
ConditionResult keyNotExists = transaction.AddCondition(Condition.KeyNotExists(someKey));
Task hashSetTask = transaction.HashSetAsync(someKey, someValues);
Task<bool> expireTask = transaction.KeyExpireAsync(someKey, ttl);
bool committed = await transaction.ExecuteAsync();
Debug.Assert(hashSetTask.IsCompleted, "This fails sometimes");
Debug.Assert(expireTask.IsCompleted, "This also fails sometimes");
Both Debug.Asserts fail very frequently (as I run tests), but they don't fail all of the time. In addition, the asserts also fail when I put them inside an "if(commited)" conditional. Thank you.
[Edit] I forgot to mention I'm using Redis 3.2.100 (00000000/0) 64 bit