I added a lengthy response/solution to SO, but in a nutshell you can make this work by tuning the connection pool so that the operation does not error out:
using (var cluster = new Cluster(new ClientConfiguration
{
PoolConfiguration = new PoolConfiguration
{
MaxSize = 10,
MinSize = 5
}
}))
{
var s = new Stopwatch();
s.Start();
using (var bucket = cluster.OpenBucket())
{
var result = Parallel.For(0, 10000, ctr =>
{
var id = Guid.NewGuid().ToString();
bucket.Insert(id, id, ReplicateTo.Zero, PersistTo.One);
});
}
s.Stop();
}
Your basically trying to do too much with the default configuration. By increasing the PoolConfiguration.MaxSize or PoolConfiguration.MaxAcquireIterationCount you can get this to work even with the bug in NCBC-730.
-Jeff