IndexOutOfRangeException during fail over with .NET SDK 2.0

I’m experiencing a similar issue as well. I have prepared a test code to find out for which document size ranges it fails, as through experimenting with it, I came to the conclusion that it appears to be size related.
So, I’ve run the below code to test it:

public void TestProblematicSizes()
{
const int start = 0;
const int end = 50000;
var errorSb = new StringBuilder();
var sb = new StringBuilder();
for (var x = 0; x < start; ++x)
sb.Append(“+”);
var str = sb.ToString();

for (var i = start; i < end; ++i)
{
    str += "+";
    var testClass = new TestClass {Id = Guid.NewGuid().ToString(), Message = str};
    try
    {
        _testClassRepository.Add(testClass.Id, testClass);
    }
    catch (Exception)
    {
        var len = JsonConvert.SerializeObject(testClass).Length;
        errorSb.AppendLine(len.ToString());
    }
}
Debug.WriteLine(errorSb.ToString());

}

Also, below is from the repository object:

public virtual bool Add(T item)
{
var result = Add(item.Id, item);
return result;
}

public virtual bool Add(string key, T item)
{
using (var bucket = CouchbaseManager.Instance.OpenBucket(Bucket))
{
var result = bucket.Insert(new Document { Id = key, Content = item });
if (!result.Success)
throw new Exception(result.Message, result.Exception);

    return result.Success;
}

}

The output is the numbers between 16317 - 16339, 32701 - 32723, 49085 - 49107. Three ranges, of same size, near 16k, 32k and 48k (exact same distances respectively).
The exception we got is from the same place brettman said above.
I hope the code above helps identify issue. Please let me know if you need more information on my end.