Følgende passer fint, og rapporterer 10ms lokalt. Jeg ville være meget interesseret, hvis du kunne udfylde de tomme felter lidt, så jeg kan lave en repræsentativ test, der gengiver problemstillingen. Bemærk, at qu=0, qs=3
fortæller mig, at på det tidspunkt, hvor det timeout, venter vi på, at redis-serveren svarer. Det er klart, at lokal båndbredde og latenstid ville være af interesse, men fundamentalt set burde det fungere . Jeg vil også være interesseret i, hvad din synkroniseringstimeout er indstillet til.
using System.Diagnostics;
using System.Linq;
using NUnit.Framework;
namespace StackExchange.Redis.Tests.Issues
{
[TestFixture]
public class SO22786599 : TestBase
{
[Test]
public void Execute()
{
string CurrentIdsSetDbKey = Me() + ".x";
string CurrentDetailsSetDbKey = Me() + ".y";
RedisValue[] stringIds = Enumerable.Range(1, 750).Select(i => (RedisValue)(i + " id")).ToArray();
RedisValue[] stringDetails = Enumerable.Range(1, 750).Select(i => (RedisValue)(i + " detail")).ToArray();
using (var conn = Create())
{
var db = conn.GetDatabase();
var tran = db.CreateTransaction();
tran.SetAddAsync(CurrentIdsSetDbKey, stringIds);
tran.SetAddAsync(CurrentDetailsSetDbKey, stringDetails);
var watch = Stopwatch.StartNew();
var isOperationSuccessful = tran.Execute();
watch.Stop();
System.Console.WriteLine("{0}ms", watch.ElapsedMilliseconds);
Assert.IsTrue(isOperationSuccessful);
}
}
}
}