[NCBC-727] Make CTOR that takes CouchbaseClientSection public Created: 26/Nov/14  Updated: 26/Nov/14  Resolved: 26/Nov/14

Status: Resolved
Project: Couchbase .NET client library
Component/s: library
Affects Version/s: 2.0 Beta 2
Fix Version/s: 2.0.0

Type: Improvement Priority: Major
Reporter: Jeff Morris Assignee: Jeff Morris
Resolution: Fixed Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Relates to

 Comments   
Comment by Jeff Morris [ 26/Nov/14 ]
http://review.couchbase.org/#/c/43654/




[NCBC-726] Ensure ViewDataMapper uses configured serializer settings Created: 25/Nov/14  Updated: 25/Nov/14  Resolved: 25/Nov/14

Status: Resolved
Project: Couchbase .NET client library
Component/s: library
Affects Version/s: 2.0 Beta 2
Fix Version/s: 2.0.0

Type: Improvement Priority: Major
Reporter: Jeff Morris Assignee: Jeff Morris
Resolution: Fixed Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Comments   
Comment by Jeff Morris [ 25/Nov/14 ]
http://review.couchbase.org/#/c/43585/




[NCBC-725] ICouchbaseCluster Interface Internal - Can't Mock Root Object Created: 21/Nov/14  Updated: 25/Nov/14  Resolved: 25/Nov/14

Status: Resolved
Project: Couchbase .NET client library
Component/s: library
Affects Version/s: 2.0 Beta, 2.0 Beta 2
Fix Version/s: None

Type: Improvement Priority: Blocker
Reporter: cameronpearce Assignee: Jeff Morris
Resolution: Fixed Votes: 0
Labels: system-test
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   
The ICouchbaseCluster interface has been made internal, and the Class which inherits this interface (Cluster) is a sealed class, thus I cannot inherit from it.

Because of this, we cannot mock the root object.

I would suggest making the interface public instead of internal, if you do not want to expose code from the Cluster class.

Thanks and I hope to see this in the next release.

 Comments   
Comment by Jeff Morris [ 25/Nov/14 ]
http://review.couchbase.org/#/c/43587/




[NCBC-724] Version numbers and configuration logging Created: 20/Nov/14  Updated: 20/Nov/14  Resolved: 20/Nov/14

Status: Resolved
Project: Couchbase .NET client library
Component/s: library
Affects Version/s: 2.0 Beta 2
Fix Version/s: 2.0.0

Type: Task Priority: Major
Reporter: Jeff Morris Assignee: Jeff Morris
Resolution: Fixed Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   
This feature appends the version number of the assembly plus the current client configuration (not the cluster map info) to the log file when the Cluster object is initialized.

 Comments   
Comment by Jeff Morris [ 20/Nov/14 ]
http://review.couchbase.org/#/c/43457/




[NCBC-723] Timings - public interface level, server level, IO level Created: 19/Nov/14  Updated: 21/Nov/14  Resolved: 21/Nov/14

Status: Resolved
Project: Couchbase .NET client library
Component/s: library
Affects Version/s: 2.0 Beta 2
Fix Version/s: 2.0.0

Type: Task Priority: Major
Reporter: Jeff Morris Assignee: Jeff Morris
Resolution: Fixed Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   
For performance testing/tuning. Default implementation uses StopWatch and Common.Log, but can be extended.

 Comments   
Comment by Jeff Morris [ 21/Nov/14 ]
Might need some refactoring after feedback:
http://review.couchbase.org/#/c/43419/




[NCBC-722] Provide means of mapping to POCO's without using a ViewResultRow<T> Created: 19/Nov/14  Updated: 25/Nov/14  Resolved: 25/Nov/14

Status: Resolved
Project: Couchbase .NET client library
Component/s: library
Affects Version/s: 2.0 Beta 2
Fix Version/s: 2.0.0

Type: Task Priority: Major
Reporter: Jeff Morris Assignee: Jeff Morris
Resolution: Fixed Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   
Each row returned by a view request is wrapped in a "view result row". This ticket provides a means of escaping the row wrapper so that a use can map results direct to a List<T> instead of a List<ViewResultRow<T>> collection. For example:

{"total_rows":7303,"rows":[
{"id":"21st_amendment_brewery_cafe","key":["21st_amendment_brewery_cafe"],"value":null},
{"id":"21st_amendment_brewery_cafe-21a_ipa","key":["21st_amendment_brewery_cafe","21st_amendment_brewery_cafe-21a_ipa"],"value":null},
...
{"id":"zea_rotisserie_and_brewery-z_p_a_india_pale_ale","key":["zea_rotisserie_and_brewery","zea_rotisserie_and_brewery-z_p_a_india_pale_ale"],"value":null}
]
}

See post: https://forums.couchbase.com/t/2-0-dp3-question-on-views-jsondatamapper-cs-deserialization/1951

 Comments   
Comment by Jeff Morris [ 25/Nov/14 ]
http://review.couchbase.org/#/c/43583/




[NCBC-721] With .NET 2.0 client increment doesnt work as it should Created: 12/Nov/14  Updated: 15/Nov/14  Resolved: 15/Nov/14

Status: Resolved
Project: Couchbase .NET client library
Component/s: library
Affects Version/s: 2.0 Beta 2
Fix Version/s: 2.0.0

Type: Bug Priority: Major
Reporter: Lennartos Assignee: Jeff Morris
Resolution: Fixed Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment: .NET client library 2.0 on 2.5.1 and 3.0.1 servers


 Description   
With .NET 2.0 client, the incdrement counter works til ~120 billion IIRC - and then comes a error: "Specified argument was out of the range of valid values."
The 1.3 client does not have this limit and continues till full int64 area, and then ROLLS OVER ( as it should - dont just break without warning)
So please let the 2.0 client roll over to 0 once we reach some value that is close to the limit ( so it will never break ), and it would also be good to let it continue its full course instead of stopping before getting 10% of the value range.

 Comments   
Comment by Jeff Morris [ 15/Nov/14 ]
http://review.couchbase.org/#/c/43281/




[NCBC-720] Increment can return doubles or fail on execution if threaded Created: 10/Nov/14  Updated: 14/Nov/14  Resolved: 14/Nov/14

Status: Resolved
Project: Couchbase .NET client library
Component/s: None
Affects Version/s: None
Fix Version/s: None

Type: Bug Priority: Major
Reporter: Lennartos Assignee: Jeff Morris
Resolution: Duplicate Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment: 2 * Windows Server 2012 + Couchbase 3.0.1
.NET 2.0 beta 2 client software

Attachments: File CouchbaseIncrementTest.rar     File Debug.rar     GZip Archive Incement.pcapng.gz     GZip Archive IncrementTest.pcap.gz     PNG File my-cpu.PNG     PNG File ncbc-720-run-results.png    
Issue Links:
Duplicate
is duplicated by MB-12647 requests to store() with cas may inco... Resolved
Relates to
relates to MB-12647 requests to store() with cas may inco... Resolved

 Description   
Added the project - jira didnt let me add any dll files so you will have to manage the nuget packages yourself.

 Comments   
Comment by Jeff Morris [ 10/Nov/14 ]
I tried several times to replicate, but the result was always "done". I tried bumping up the parallel loop to 10k and it worked as expected.

The only modification to the source code that I did was changing the cluster IP's in the CBClient to point to my own cluster:

Before...

  Cconfig.Servers = new List<Uri>()
            {
                new Uri("http://46.4.79.226:8091/pools/"),
                new Uri("http://213.239.213.197:8091/pools/")
            };

After...

  Cconfig.Servers = new List<Uri>()
            {
                new Uri("http://192.168.62.102:8091/pools/"),
                new Uri("http://192.168.62.103:8091/pools/")
            };

If you can provide any additional information to replicate, that would be helpful.

-Jeff
Comment by Jeff Morris [ 10/Nov/14 ]
Hi Lennartos -

Would it be possible to include a Wire shark packet capture, so that we can see what's going across the wire on your side?

Thanks!

Jeff
Comment by Lennartos [ 10/Nov/14 ]
Here they are
Comment by Lennartos [ 10/Nov/14 ]
Also i assume that you have confirmed it with the servers i have set up?
Comment by Jeff Morris [ 10/Nov/14 ]
I actually didn't try with those IP's because I assumed they were behind a firewall. I have since run it again with the following IP's (from your config):

http://46.4.79.226:8091/pools/
http://213.239.213.197:8091/pools/

I still can't replicate the issue. Unique.Count and Results.Count are equal.

-Jeff
Comment by Lennartos [ 10/Nov/14 ]
So you never get the "Non-numeric server-side value for incr or decr" error at all?

All i can think off is that you are not running a quad core or better and there is a minimum thread count before the race condition( or whatever this is) is triggered.
In all my test i have at least 2 doubles, up to 30.

Also tried to execute ON the server - same story.
Comment by Lennartos [ 10/Nov/14 ]
tried that theory, and yep - with MaxDegreeOfParallelism=4 i succed 2 out of 3 times.
try replacing the core body with this:

                        if (res.Success)
                        {
                            Results.Add(res.Value);
                            return;
                        }
                        else
                        {
                            //check error message here!
                            Console.WriteLine(i +" "+ res.Message);
                        }

And lets see if you get the errors on my servers.
Comment by Jeff Morris [ 10/Nov/14 ]
Lennartos -

Finally I get the "Non-numeric server-side value for incr or decr" error! Still, only against your servers; on my cluster I cannot replicate even trying a variety different ParallelOptions settings.

I'll spend some time debugging and see what's going on.

Thanks!

-Jeff
Comment by Jeff Morris [ 10/Nov/14 ]
I have confirmed this happens on 1.3.10 (latest 1.3.X version) as well using the IP's you provided. It might be a problem with your specific cluster.

Comment by Lennartos [ 11/Nov/14 ]
ok i have failed over each server one at a time ( so im only running on one server ) and compared results
The error with "Non-numeric server-side value for incr or decr" only happens on the 213.239 server running Windows server 2012 standard R2
The 46.4.79.226 server still creates doubles - but does not give an error: windows server 2012 Standard ( no R2)

Im not sure how i can any further than this - please advise on next steps
Comment by Lennartos [ 11/Nov/14 ]
Just tried to remove everything and reinstall 3.0.1 community edition as a fresh install on 213.239.213.197 -
no changes, no cluster at all.. just single server: the increment error is now gone - but still doubles.

It worries me that you/others didnt get doubles before, so i tried to play with default setup - and lo and behold.. it works.
As long you you limit the PoolConfiguration to max 2, i dont get any doubles.. even if i have multiple connections. ( application instances )
Buf of course that is a severe limitaion when i have essentially 8 cores to use.
Comment by Lennartos [ 11/Nov/14 ]
Using the 1.3.1 .Net driver on this totally fresh install gives same result.. ~5 doubles / 1K
Comment by Jeff Morris [ 11/Nov/14 ]
Lennartos -

Thanks for your patience trying to resolve this issue! So, this is where we are at (correct me if am wrong):

- "Non-numeric server-side value for incr or decr" issue has been resolved by reinstalling CB on the misbehaving node.
- You are still getting "doubles": ~5 per 1k messages.
- If you drop down to a minimum sized connection pool (1min, 2max) the double issue is resolved, but it's not an ideal config obviously
- The same "double" problem exists with 1.3.10

Note that I am running a 4 core processor with cp max of 10, and I still cannot replicate the "double" issue (using a 4 node cluster of CB 3.0.1) using the code you provided.

Curious, have you tried to see if you still get the "double" behavior on Couchbase Server 2.5.1?

-Jeff
Comment by Lennartos [ 11/Nov/14 ]
That would be the next step, yes.
Im will start that now - was stalling to wait and see if you needed more input from current config.
I dont know though if adding more nodes would solve the issue - as we saw in the wireshark log the requests are divided between nodes - could that mean that a 4 instance node queried by 4 cores equals 1 thread on 1 node? ( which would put it back into the OK area? )
Comment by Lennartos [ 11/Nov/14 ]
Ok this is important - 2.5.1 does NOT have the doubles!
Comment by Jeff Morris [ 11/Nov/14 ]
Interesting...note that I was never able to replicate the "double" issue even using your cluster from my machine. Every time (and I tried up to 10k increments) it succeeded with no doubles.
Comment by Lennartos [ 11/Nov/14 ]
In that case lets rule out software - i have provided a binary for you to execute in case your nugets or compiler where different then mine for some reason.

I made it 10K so its a bit slow - but i usually get around 100 doubles each time.

I dreally dont get how you get different results
Do you have a hyper threaded CPU? (how many threads?)

Ok tested with these binaries on all 3 machines - what i saw was that the lower the ping - the more doubles.
If i start it directly on the machine i got ~40%+ doubles.
So another explanation could be ping time?
(whats your ping towards 46.4.79.226?)
Comment by Jeff Morris [ 11/Nov/14 ]
Here is my ping time (ran twice because of the 25%?! on the first try):

ping 46.4.79.226

Pinging 46.4.79.226 with 32 bytes of data:
Request timed out.
Reply from 46.4.79.226: bytes=32 time=205ms TTL=115
Reply from 46.4.79.226: bytes=32 time=201ms TTL=115
Reply from 46.4.79.226: bytes=32 time=168ms TTL=115

Ping statistics for 46.4.79.226:
    Packets: Sent = 4, Received = 3, Lost = 1 (25% loss),
Approximate round trip times in milli-seconds:
    Minimum = 168ms, Maximum = 205ms, Average = 191ms

ping 46.4.79.226

Pinging 46.4.79.226 with 32 bytes of data:
Reply from 46.4.79.226: bytes=32 time=167ms TTL=115
Reply from 46.4.79.226: bytes=32 time=174ms TTL=115
Reply from 46.4.79.226: bytes=32 time=169ms TTL=115
Reply from 46.4.79.226: bytes=32 time=206ms TTL=115

Ping statistics for 46.4.79.226:
    Packets: Sent = 4, Received = 4, Lost = 0 (0% loss),
Approximate round trip times in milli-seconds:
    Minimum = 167ms, Maximum = 206ms, Average = 179ms


Attached are my CPU stats, 4 cores + 8 logical
Comment by Lennartos [ 11/Nov/14 ]
Ok definetly related to ping times - got a PC from UK to test with 60-100 ping... only 3 doubles each time
You have a horrible ping of 160-210 - so odds for double are minimal.

Comment by Lennartos [ 11/Nov/14 ]
So to recreate - get a single 3.x server up and running and start the code you already have, and target it at that one - either from the same machine.. or at least one that is in close proximity.
You need to create a higher load than what you do now to trigger the issue.
Comment by Jeff Morris [ 11/Nov/14 ]
lennartos -

I was finally able to replicate:

ERROR: DOUBLES!!!=9948 GOT=10000
WhichAreDoubles: 51
Done

Thanks!

-Jeff
Comment by Lennartos [ 12/Nov/14 ]
While you are at it - we should also look at rolling over on .NET client 2.0
With .NET 2.0 client, the inbdrement counter works til ~120 billion IIRC - and then comes a error: "Specified argument was out of the range of valid values."
The 1.3 client does not have this limit and continues till full int64 area, and then ROLLS OVER ( as it should - dont just break without warning)
So please let the 2.0 client roll over to 0 once we reach some value that is close to the limit ( so it will never break ), and it would also be good to let it continue its full course instead of stopping before getting 10% of the range.
Comment by Lennartos [ 12/Nov/14 ]
created issue NCBC-721 for .NET client( i was testing while writing it and from beeing a 3.0 issue i found out its actually .NET client issue - so not something that belongs to this issue)
Comment by Jeff Morris [ 14/Nov/14 ]
http://www.couchbase.com/issues/browse/MB-12647




[NCBC-719] Ensure operations use FMap if available Created: 07/Nov/14  Updated: 25/Nov/14  Resolved: 25/Nov/14

Status: Resolved
Project: Couchbase .NET client library
Component/s: library
Affects Version/s: 2.0 Beta 2
Fix Version/s: 2.0.0

Type: Task Priority: Major
Reporter: Jeff Morris Assignee: Jeff Morris
Resolution: Fixed Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Comments   
Comment by Jeff Morris [ 25/Nov/14 ]
http://review.couchbase.org/#/c/43589/




[NCBC-718] Impossible to download .Net Client 1.3.x ZIPs via website Created: 07/Nov/14  Updated: 07/Nov/14  Resolved: 07/Nov/14

Status: Resolved
Project: Couchbase .NET client library
Component/s: docs
Affects Version/s: 1.3.10
Fix Version/s: None

Type: Bug Priority: Major
Reporter: Chris Malarky Assignee: Jeff Morris
Resolution: Fixed Votes: 0
Labels: downloads
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   
Trying to download the zip file for .Net Client 1.3.10.

Follow the navigation to Developer Portal / .Net SDK:

http://docs.couchbase.com/developer/dotnet-2.0/dotnet-intro.html

Go to "Download and API Reference" -> "Archive Downloads" and select 1.3:

http://docs.couchbase.com/couchbase-sdk-net-1.3/#downloading-the-software

Follow "Download the zip file from...":

http://www.couchbase.com/communities/net/getting-started

This no longer exists and redirects to:

http://www.couchbase.com/open-source

Scroll down to ".NET SDK, Official Download and Documentation":

http://docs.couchbase.com/developer/dotnet-2.0/dotnet-intro.html

And we're back at the beginning again!

The equivalent for 1.2.x has a direct link to the ZIP file.

 Comments   
Comment by Jeff Morris [ 07/Nov/14 ]
PR here: https://github.com/couchbaselabs/docs-ng/pull/169




[NCBC-717] Provide TimeSpan overloads for IBucket methods that take timeouts Created: 05/Nov/14  Updated: 26/Nov/14

Status: Open
Project: Couchbase .NET client library
Component/s: library
Affects Version/s: 2.0 Beta 2
Fix Version/s: 2.0.1

Type: Improvement Priority: Major
Reporter: Jeff Morris Assignee: Jeff Morris
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified





[NCBC-716] IBucket.Replace overload has wrong type for CAS Created: 05/Nov/14  Updated: 05/Nov/14  Resolved: 05/Nov/14

Status: Resolved
Project: Couchbase .NET client library
Component/s: library
Affects Version/s: 2.0 Beta 2
Fix Version/s: 2.0.0

Type: Bug Priority: Major
Reporter: Jeff Morris Assignee: Jeff Morris
Resolution: Fixed Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Comments   
Comment by Jeff Morris [ 05/Nov/14 ]
http://review.couchbase.org/#/c/42856/1




[NCBC-715] Hdd.UsedByData overflows when input is greater than int.maxsize Created: 04/Nov/14  Updated: 04/Nov/14  Resolved: 04/Nov/14

Status: Resolved
Project: Couchbase .NET client library
Component/s: library
Affects Version/s: 2.0 Beta 2
Fix Version/s: 2.0.0

Type: Bug Priority: Major
Reporter: Jeff Morris Assignee: Jeff Morris
Resolution: Fixed Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Comments   
Comment by Jeff Morris [ 04/Nov/14 ]
http://review.couchbase.org/#/c/42814/1




[NCBC-714] JSON and URI encode view input parameters Created: 04/Nov/14  Updated: 06/Nov/14  Resolved: 06/Nov/14

Status: Resolved
Project: Couchbase .NET client library
Component/s: library
Affects Version/s: 2.0 Beta 2
Fix Version/s: 2.0.0

Type: Improvement Priority: Major
Reporter: Jeff Morris Assignee: Jeff Morris
Resolution: Fixed Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   
See forums: https://forums.couchbase.com/t/2-0-dp3-iviewquery-passing-values-using-key-keys-starkey/1953




[NCBC-713] Ensure that multiple buckets can be added to a configuration Created: 04/Nov/14  Updated: 05/Nov/14  Resolved: 05/Nov/14

Status: Resolved
Project: Couchbase .NET client library
Component/s: library
Affects Version/s: 2.0 Beta 2
Fix Version/s: 2.0.0

Type: Bug Priority: Major
Reporter: Jeff Morris Assignee: Jeff Morris
Resolution: Fixed Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   
https://forums.couchbase.com/t/2-0-dp3-you-cant-specify-more-than-one-bucket-on-xml-configuration-section/1949

 Comments   
Comment by Jeff Morris [ 05/Nov/14 ]
http://review.couchbase.org/#/c/42858/




[NCBC-712] ArgumentOutOfRangeException in VBucket class during rebalance Created: 03/Nov/14  Updated: 26/Nov/14

Status: Open
Project: Couchbase .NET client library
Component/s: library
Affects Version/s: 2.0 Beta
Fix Version/s: 2.0.1

Type: Task Priority: Major
Reporter: Jeff Morris Assignee: Jeff Morris
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   
Creating this as a ticket even though it was detected in WIP code because it could happen with what's on github:

Rb2Out-HYBRID
#1 win 2008
[800.06 INFO] (SDKD log:137) [39m at System.ThrowHelper.ThrowArgumentOutOfRangeException() http://sdkbuilds.couchbase.com/job/.net-sdkdclient-ng2-andrei/164/consoleFull
   at System.Collections.Generic.List`1.get_Item(Int32 index)
   at Couchbase.Core.VBucket.LocatePrimary() in c:\jenkins\workspace\.net-sdkdclient-ng2-andrei\couchbase-net-client\Src\Couchbase\Core\VBucket.cs:line 29
   at Couchbase.CouchbaseBucket.GetServer(String key, IVBucket& vBucket) in c:\jenkins\workspace\.net-sdkdclient-ng2-andrei\couchbase-net-client\Src\Couchbase\CouchbaseBucket.cs:line 92
   at Couchbase.CouchbaseBucket.SendWithRetry[T](IOperation`1 operation) in c:\jenkins\workspace\.net-sdkdclient-ng2-andrei\couchbase-net-client\Src\Couchbase\CouchbaseBucket.cs:line 102
   at Couchbase.CouchbaseBucket.Get[T](String key) in c:\jenkins\workspace\.net-sdkdclient-ng2-andrei\couchbase-net-client\Src\Couchbase\CouchbaseBucket.cs:line 990
   at Sdkd.Commands.GetCommand.ExecuteSingle(String key, String value) in c:\jenkins\workspace\.net-sdkdclient-ng2-andrei\sdkd-net\src\Sdkd\Commands\GetCommand.cs:line 17
   at Sdkd.Commands.KVCommand.Run() in c:\jenkins\workspace\.net-sdkdclient-ng2-andrei\sdkd-net\src\Sdkd\Commands\KVCommand.cs:line 24
   at SdkdConsole.Daemon.Handle.DispatchCommand(Request req, CouchbaseBucket cli) in c:\jenkins\workspace\.net-sdkdclient-ng2-andrei\sdkd-net\src\SdkdConsole\Daemon\Handle.cs:line 266
   at SdkdConsole.Daemon.Handle.Run() in c:\jenkins\workspace\.net-sdkdclient-ng2-andrei\sdkd-net\src\SdkdConsole\Daemon\Handle.cs:line 146
   at System.Threading.ThreadHelper.ThreadStart_Context(Object state)
   at System.Threading.ExecutionContext.RunInternal(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean preserveSyncCtx)
   at System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean preserveSyncCtx)
   at System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state)
   at System.Threading.ThreadHelper.ThreadStart()[0;39m





[NCBC-711] Add GetWithLock to IBucket and provide implementions for Memcached and Couchbase buckets. Created: 31/Oct/14  Updated: 06/Nov/14  Resolved: 06/Nov/14

Status: Resolved
Project: Couchbase .NET client library
Component/s: library
Affects Version/s: 2.0 Beta
Fix Version/s: 2.0.1

Type: Task Priority: Major
Reporter: Jeff Morris Assignee: Jeff Morris
Resolution: Fixed Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified





[NCBC-710] CouchbaseViewBase.GetEnumerator throws NotImplementedException Created: 31/Oct/14  Updated: 31/Oct/14

Status: Open
Project: Couchbase .NET client library
Component/s: library
Affects Version/s: 1.3.9
Fix Version/s: backlog-1.0

Type: Task Priority: Minor
Reporter: Jeff Morris Assignee: Jeff Morris
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   
From github:

internal abstract class CouchbaseViewBase : IView

needs to have line 211 be:
IEnumerator IEnumerable.GetEnumerator()
{
return GetEnumerator();
}

When Newtonsoft.Json tries to serialize the view it throws this exception:

System.NotImplementedException was unhandled by user code
HResult=-2147467263
Message=The method or operation is not implemented.
Source=Couchbase
StackTrace:
at Couchbase.CouchbaseViewBase1.System.Collections.IEnumerable.GetEnumerator() at Newtonsoft.Json.Serialization.JsonSerializerInternalWriter.SerializeList(JsonWriter writer, IEnumerable values, JsonArrayContract contract, JsonProperty member, JsonContainerContract collectionContract, JsonProperty containerProperty) at Newtonsoft.Json.Serialization.JsonSerializerInternalWriter.Serialize(JsonWriter jsonWriter, Object value, Type objectType) at Newtonsoft.Json.JsonSerializer.SerializeInternal(JsonWriter jsonWriter, Object value, Type objectType) at Newtonsoft.Json.JsonConvert.SerializeObjectInternal(Object value, Type type, JsonSerializer jsonSerializer) at BadgePrintingUnitClientService.Controllers.RegistrantController.Get(String email) in c:\projectsSLC\Applications\BadgePrintingUnit\BadgePrintingUnitClientService\Controllers\RegistrantController.cs:line 37 at lambda_method(Closure , Object , Object[] ) at System.Web.Http.Controllers.ReflectedHttpActionDescriptor.ActionExecutor.<>c__DisplayClass10.<GetExecutor>b__9(Object instance, Object[] methodParameters) at System.Web.Http.Controllers.ReflectedHttpActionDescriptor.ExecuteAsync(HttpControllerContext controllerContext, IDictionary2 arguments, CancellationToken cancellationToken)
InnerException:





[NCBC-709] Make sure all Task/Task<T> call ConfigureAwaiter(false) Created: 30/Oct/14  Updated: 04/Nov/14  Resolved: 30/Oct/14

Status: Resolved
Project: Couchbase .NET client library
Component/s: library
Affects Version/s: 2.0 Beta
Fix Version/s: None

Type: Task Priority: Major
Reporter: Jeff Morris Assignee: Jeff Morris
Resolution: Fixed Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   
This is a general best practice for library code to disable the awaiter so that a deadlock does not occur in certain host environments (ASP.NET, UI, etc): http://blog.stephencleary.com/2012/07/dont-block-on-async-code.html

 Comments   
Comment by Jeff Morris [ 30/Oct/14 ]
http://review.couchbase.org/#/c/42647/




[NCBC-708] Use attached config when a NMV is returned via CCCP Created: 30/Oct/14  Updated: 04/Nov/14  Resolved: 30/Oct/14

Status: Resolved
Project: Couchbase .NET client library
Component/s: library
Affects Version/s: 2.0 Beta
Fix Version/s: None

Type: Task Priority: Major
Reporter: Jeff Morris Assignee: Jeff Morris
Resolution: Won't Fix Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   
Currently, the client requests a new config when a NMV is encountered even though the payload of the operation may be a config. This changes the behavior so that the client will use the config returned as the operation's result.

 Comments   
Comment by Jeff Morris [ 30/Oct/14 ]
Apparently I changed this already, because in a NMV event, the client uses the config that comes with the failed operation:

https://github.com/couchbase/couchbase-net-client/blob/master/Src/Couchbase/CouchbaseBucket.cs#L245





[NCBC-707] Return timeout if NMV replies exceed threshold Created: 30/Oct/14  Updated: 04/Nov/14  Resolved: 30/Oct/14

Status: Resolved
Project: Couchbase .NET client library
Component/s: library
Affects Version/s: 2.0 Beta
Fix Version/s: None

Type: Task Priority: Major
Reporter: Jeff Morris Assignee: Jeff Morris
Resolution: Fixed Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Comments   
Comment by Jeff Morris [ 30/Oct/14 ]
http://review.couchbase.org/#/c/42641/
Comment by Matt Ingenthron [ 31/Oct/14 ]
Not directly related to this commit, but do we think the retry threshold is right since it came up in those tests?
Comment by Jeff Morris [ 31/Oct/14 ]
Not sure; maybe something we should monitor and then make a decision on once we have a better idea of what the threshold should be?
Comment by Matt Ingenthron [ 31/Oct/14 ]
I guess my thought is the threshold is too low if during our situational test rebalance we'll see timeouts. The problem is fast-retrying for more times isn't necessarily better but may be okay for the shortest term.




[NCBC-706] Client throws exception when first bootstrapping URI fails Created: 29/Oct/14  Updated: 04/Nov/14  Resolved: 29/Oct/14

Status: Resolved
Project: Couchbase .NET client library
Component/s: library
Affects Version/s: 2.0 Beta
Fix Version/s: None

Type: Bug Priority: Major
Reporter: Jeff Morris Assignee: Jeff Morris
Resolution: Fixed Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   
When the client attempts to bootstrap, if it chooses a URI that it cannot connect to, it throws an AggregateException with the errors it encountered, but does not continue onto the next URI in the list.

 Comments   
Comment by Jeff Morris [ 29/Oct/14 ]
http://review.couchbase.org/#/c/42594/1




[NCBC-705] When a view request 404's servers return message is overriden with exception message. Created: 29/Oct/14  Updated: 04/Nov/14  Resolved: 29/Oct/14

Status: Resolved
Project: Couchbase .NET client library
Component/s: library
Affects Version/s: 2.0 Beta
Fix Version/s: None

Type: Bug Priority: Major
Reporter: Jeff Morris Assignee: Jeff Morris
Resolution: Fixed Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   
When a view request errors out, the results that are being returned:

{"error":"not_found","reason":"Design document _design/beer-sample2 not found"}

Are overridden by the error handling logic, and return back a more generic .NET error: (404) Not Found.

 Comments   
Comment by Jeff Morris [ 29/Oct/14 ]
http://review.couchbase.org/#/c/42585/




[NCBC-704] Ensure opaque value is unique for all operation instances Created: 29/Oct/14  Updated: 04/Nov/14  Resolved: 29/Oct/14

Status: Resolved
Project: Couchbase .NET client library
Component/s: library
Affects Version/s: 2.0 Beta
Fix Version/s: None

Type: Bug Priority: Major
Reporter: Jeff Morris Assignee: Jeff Morris
Resolution: Fixed Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   
All operations are implementations of the base class OperationBase<T> which is generic. This class held a static variable to use as a counter base; which is flawed because for each type of T instantiated, a new static variable would be created because internally each type of T is compiled into it's own class. This moves the opaque generator into a new class, SequenceGenerator, so that the identifier is unique and incremented correctly.

 Comments   
Comment by Jeff Morris [ 29/Oct/14 ]
http://review.couchbase.org/#/c/42573/2




[NCBC-703] When an operation timesout ensure that an NRE is not thrown Created: 26/Oct/14  Updated: 04/Nov/14  Resolved: 28/Oct/14

Status: Resolved
Project: Couchbase .NET client library
Component/s: library
Affects Version/s: 2.0 Beta
Fix Version/s: None

Type: Bug Priority: Blocker
Reporter: Jeff Morris Assignee: Jeff Morris
Resolution: Fixed Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   
2014-10-26 09:59:52,548 [17] DEBUG Couchbase.CouchbaseBucket - Operation for key SimpleKeyREP7126REP7126REP7126REP7126REP7126 failed after 0 retries. Reason: Operation timed out: the timeout can be configured by changing the PoolConfiguration.OperationTimeout property. The default is 2500ms.

...

2014-10-26 09:59:53,842 [11] WARN Couchbase.IO.ConnectionBase - Opcode=Set | Key=SimpleKeyREP7126REP7126REP7126REP7126REP7126 | Host=10.3.121.136:11210
System.NullReferenceException: Object reference not set to an instance of an object.
   at Couchbase.IO.Converters.AutoByteConverter.ToByte(Byte[] buffer, Int32 offset) in c:\jenkins\workspace\.net-sdkdclient-ng2_win8_64_andrei\couchbase-net-client\Src\Couchbase\IO\Converters\AutoByteConverter.cs:line 36
   at Couchbase.IO.Operations.OperationBase`1.Read(Byte[] buffer, Int32 offset, Int32 length) in c:\jenkins\workspace\.net-sdkdclient-ng2_win8_64_andrei\couchbase-net-client\Src\Couchbase\IO\Operations\OperationBase'.cs:line 105
   at Couchbase.IO.Strategies.EapConnection.ReceiveCallback(IAsyncResult asyncResult) in c:\jenkins\workspace\.net-sdkdclient-ng2_win8_64_andrei\couchbase-net-client\Src\Couchbase\IO\Strategies\EapConnection.cs:line 80


 Comments   
Comment by Jeff Morris [ 26/Oct/14 ]
This is a much more serious issue than expected.
Comment by Jeff Morris [ 28/Oct/14 ]
http://review.couchbase.org/#/c/42555/
Comment by Andrei Baranouski [ 29/Oct/14 ]

perhaps it is the very best results

 with commits from gerrit:

$ git log
commit 28c44b06219811747ffb4382a05686ef99a02ffe
Author: jeffrymorris <jeffrymorris@gmail.com>
Date: Tue Oct 28 20:04:08 2014 -0700

    NCBC-703: When an operation timesout ensure that an NRE is not thrown

    Change-Id: Iba4be3d23a1d416b2c64a4d0c04d22b3ec0c9011

commit f886642d1b6e57138d424b317e1cfe87986a6628
Author: jeffrymorris <jeffrymorris@gmail.com>
Date: Sat Oct 25 19:07:23 2014 -0700

    NCBC-702: Make Release and AddRef un-callable in assemblies other than Couchbase

    and Couchbase.Tests. IRefcountable is an internal interface whose method
    implmentations should not be called externally. This commit makes them
    (mostly) un-callable from assemblies that are not 'friend' assemblies of
    Couchbase.NetClient.

    Change-Id: Ie796909a747eaaf002fcf0984624d9ed0589c5d7

commit 00441eb8036257fa22962bb55ec12beedc309100
Author: jeffrymorris <jeffrymorris@gmail.com>
Date: Sat Oct 25 18:50:59 2014 -0700

    NCBC-585: Make Cluster object use Dispose correctly

    Change-Id: If98cb3499a634488f03bf93b914f616067552ef3

commit 3f12994ec37263d6e8dfd0bbd9bdf5dc5a3f7e6c
Author: jeffrymorris <jeffrymorris@gmail.com>
Date: Sat Oct 25 18:37:42 2014 -0700

    Mark the server as dead when it is disposed

    When the server is disposed, mark as dead so that an in-progress operation
    or view request will not select it. This should eliminate some ODE's but
    not all. This commit also makes the _disposed and _isDead variables
    volatile.

    Change-Id: I88b2e12079582c66725d898a6eaeee154163ea99

commit b1dc863432c0dc0ae3231004b6bc94734f8d1953
Author: jeffrymorris <jeffrymorris@gmail.com>
Date: Sat Oct 25 13:21:49 2014 -0700

    Ensure that heartbeat configuration is completed before raising next event

    Change-Id: I0389212c2b35508ef7637e59c610fac1cdbaca45

commit 509098f2aead49c4262f98058e4f045741e2fad1
Author: jeffrymorris <jeffrymorris@gmail.com>
Date: Fri Oct 24 15:23:08 2014 -0700

    Use consistent error handling when IO fails

    Change-Id: Idfca664637d5e3db41770fe0137b11b2cab36952
    Reviewed-on: http://review.couchbase.org/42427
    Tested-by: Jeffry Morris <jeffrymorris@gmail.com>
    Reviewed-by: Brett Lawson <brett19@gmail.com>

commit 2769f360e3d129c5ebda996117361e00b9e6677f
Author: jeffrymorris <jeffrymorris@gmail.com>
Date: Fri Oct 24 15:20:45 2014 -0700

    Ensure that each server is tried during a config heartbeat

    Change-Id: I7547effadbc5a76fb5c801450c0f069d2b272d32
    Reviewed-on: http://review.couchbase.org/42426
    Tested-by: Jeffry Morris <jeffrymorris@gmail.com>
    Reviewed-by: Matt Ingenthron <matt@couchbase.com>

commit 37758dbdc9baf75101a7e6230a2a277c37948d38
Author: jeffrymorris <jeffrymorris@gmail.com>
Date: Thu Oct 23 19:56:49 2014 -0700

    Remove old markdown file. New one (README.md) will be updated soon

    Change-Id: I73abd2e85ba17d33d350fe0bc530bd2356c1d7cc



Run all tests on 3 different platforms:

win2008 http://sdkbuilds.couchbase.com/job/.net-sdkdclient-ng2-andrei/160/
win2012 http://sdkbuilds.couchbase.com/job/.net-sdkdclient-ng2_win2012_64_andrei/92/
win8 http://sdkbuilds.couchbase.com/job/.net-sdkdclient-ng2_win8_64_andrei/33

Rb2OutEpt-HYBRID
#1 win 2008
http://sdk-testresults.couchbase.com.s3.amazonaws.com/SDK-SDK/CB-3.0.1-1443/Rb2OutEpt-HYBRID/10-29-14/041893/11703c079c2f02626bbe335a9b718df5-MC.html
http://sdk-testresults.couchbase.com.s3.amazonaws.com/SDK-SDK/CB-3.0.1-1443/Rb2OutEpt-HYBRID/10-29-14/041893/11703c079c2f02626bbe335a9b718df5-CB.html
#2 win 2012
http://sdk-testresults.couchbase.com.s3.amazonaws.com/SDK-SDK/CB-3.0.1-1443/Rb2OutEpt-HYBRID/10-29-14/036485/d3aee6f752c82f33ea80ec199fbf9ef8-MC.html hight latency at the end(sdkd issue?)
http://sdk-testresults.couchbase.com.s3.amazonaws.com/SDK-SDK/CB-3.0.1-1443/Rb2OutEpt-HYBRID/10-29-14/036485/d3aee6f752c82f33ea80ec199fbf9ef8-CB.html
#3 win 8
http://sdk-testresults.couchbase.com.s3.amazonaws.com/SDK-SDK/CB-3.0.1-1443/Rb2OutEpt-HYBRID/10-29-14/031066/597255f7ae0fd0df2ebc684cc28d61da-MC.html
http://sdk-testresults.couchbase.com.s3.amazonaws.com/SDK-SDK/CB-3.0.1-1443/Rb2OutEpt-HYBRID/10-29-14/031066/597255f7ae0fd0df2ebc684cc28d61da-CB.html


Rb2Out-HYBRID
#1 win 2008
http://sdk-testresults.couchbase.com.s3.amazonaws.com/SDK-SDK/CB-3.0.1-1443/Rb2Out-HYBRID/10-29-14/042355/09ea1fa63ef3dfb2ca4a1d698c62efff-MC.html
http://sdk-testresults.couchbase.com.s3.amazonaws.com/SDK-SDK/CB-3.0.1-1443/Rb2Out-HYBRID/10-29-14/042355/09ea1fa63ef3dfb2ca4a1d698c62efff-CB.html
#2 win 2012
http://sdk-testresults.couchbase.com.s3.amazonaws.com/SDK-SDK/CB-3.0.1-1443/Rb2Out-HYBRID/10-29-14/037057/ea79d54c579a1a48e0ac7f01f04bc867-MC.html
http://sdk-testresults.couchbase.com.s3.amazonaws.com/SDK-SDK/CB-3.0.1-1443/Rb2Out-HYBRID/10-29-14/037057/ea79d54c579a1a48e0ac7f01f04bc867-CB.html
#3 win 8
http://sdk-testresults.couchbase.com.s3.amazonaws.com/SDK-SDK/CB-3.0.1-1443/Rb2Out-HYBRID/10-29-14/031811/f5a455baad9ffbf4c7a50276d16fb553-MC.html
http://sdk-testresults.couchbase.com.s3.amazonaws.com/SDK-SDK/CB-3.0.1-1443/Rb2Out-HYBRID/10-29-14/031811/f5a455baad9ffbf4c7a50276d16fb553-CB.html


passthrough-HYBRID
#1 win 2008
http://sdk-testresults.couchbase.com.s3.amazonaws.com/SDK-SDK/CB-3.0.1-1443/passthrough-HYBRID/10-29-14/042844/c0039c00c1e4339b4dda19ce6038f5ee-MC.html
http://sdk-testresults.couchbase.com.s3.amazonaws.com/SDK-SDK/CB-3.0.1-1443/passthrough-HYBRID/10-29-14/042844/c0039c00c1e4339b4dda19ce6038f5ee-CB.html
#2 win 2012
http://sdk-testresults.couchbase.com.s3.amazonaws.com/SDK-SDK/CB-3.0.1-1443/passthrough-HYBRID/10-29-14/037626/596375dbc5053db776d148d7ce3c3037-MC.html
http://sdk-testresults.couchbase.com.s3.amazonaws.com/SDK-SDK/CB-3.0.1-1443/passthrough-HYBRID/10-29-14/037626/596375dbc5053db776d148d7ce3c3037-CB.html
#3 win 8
http://sdk-testresults.couchbase.com.s3.amazonaws.com/SDK-SDK/CB-3.0.1-1443/passthrough-HYBRID/10-29-14/032415/0281d375303cb616af11a86f2ec47286-MC.html
http://sdk-testresults.couchbase.com.s3.amazonaws.com/SDK-SDK/CB-3.0.1-1443/passthrough-HYBRID/10-29-14/032415/0281d375303cb616af11a86f2ec47286-CB.html


ReAdd2-HYBRID
#1 win 2008
http://sdk-testresults.couchbase.com.s3.amazonaws.com/SDK-SDK/CB-3.0.1-1443/ReAdd2-HYBRID/10-29-14/042934/f6982afd2f191a9d4963d4ccfe64ab12-MC.html
http://sdk-testresults.couchbase.com.s3.amazonaws.com/SDK-SDK/CB-3.0.1-1443/ReAdd2-HYBRID/10-29-14/042934/f6982afd2f191a9d4963d4ccfe64ab12-CB.html
#2 win 2012
http://sdk-testresults.couchbase.com.s3.amazonaws.com/SDK-SDK/CB-3.0.1-1443/ReAdd2-HYBRID/10-29-14/037833/c536fc8c73d37708c542444f578f2bc2-MC.html
http://sdk-testresults.couchbase.com.s3.amazonaws.com/SDK-SDK/CB-3.0.1-1443/ReAdd2-HYBRID/10-29-14/037833/c536fc8c73d37708c542444f578f2bc2-CB.html
#3 win 8
http://sdk-testresults.couchbase.com.s3.amazonaws.com/SDK-SDK/CB-3.0.1-1443/ReAdd2-HYBRID/10-29-14/032628/b81a4faf3f7166858f26981c8b46a133-MC.html
http://sdk-testresults.couchbase.com.s3.amazonaws.com/SDK-SDK/CB-3.0.1-1443/ReAdd2-HYBRID/10-29-14/032628/b81a4faf3f7166858f26981c8b46a133-CB.html


Rb2In-HYBRID
#1 win 2008
http://sdk-testresults.couchbase.com.s3.amazonaws.com/SDK-SDK/CB-3.0.1-1443/Rb2In-HYBRID/10-29-14/043313/249005aa696cf8685fd43625a88dd650-MC.html
http://sdk-testresults.couchbase.com.s3.amazonaws.com/SDK-SDK/CB-3.0.1-1443/Rb2In-HYBRID/10-29-14/043313/249005aa696cf8685fd43625a88dd650-CB.html
#2 win 2012
http://sdk-testresults.couchbase.com.s3.amazonaws.com/SDK-SDK/CB-3.0.1-1443/Rb2In-HYBRID/10-29-14/038308/eebb9e612a56c87e5e34cd84c7f06157-MC.html
http://sdk-testresults.couchbase.com.s3.amazonaws.com/SDK-SDK/CB-3.0.1-1443/Rb2In-HYBRID/10-29-14/038308/eebb9e612a56c87e5e34cd84c7f06157-CB.html
#3 win 8
http://sdk-testresults.couchbase.com.s3.amazonaws.com/SDK-SDK/CB-3.0.1-1443/Rb2In-HYBRID/10-29-14/033162/907eb3081d7173890ecead73f1c608cc-MC.html
http://sdk-testresults.couchbase.com.s3.amazonaws.com/SDK-SDK/CB-3.0.1-1443/Rb2In-HYBRID/10-29-14/033162/907eb3081d7173890ecead73f1c608cc-CB.html


FoEptRb-HYBRID
#1 win 2008
crash in sdkd
#2 win 2012
http://sdk-testresults.couchbase.com.s3.amazonaws.com/SDK-SDK/CB-3.0.1-1443/FoEptRb-HYBRID/10-29-14/038886/080b15823ed51ae3d09db032bba64549-MC.html
http://sdk-testresults.couchbase.com.s3.amazonaws.com/SDK-SDK/CB-3.0.1-1443/FoEptRb-HYBRID/10-29-14/038886/080b15823ed51ae3d09db032bba64549-CB.html
#3 win 8
http://sdk-testresults.couchbase.com.s3.amazonaws.com/SDK-SDK/CB-3.0.1-1443/FoEptRb-HYBRID/10-29-14/033869/c599539be79d3784579fe41aa054c532-MC.html hight latency at the end(sdkd issue?)
http://sdk-testresults.couchbase.com.s3.amazonaws.com/SDK-SDK/CB-3.0.1-1443/FoEptRb-HYBRID/10-29-14/033869/c599539be79d3784579fe41aa054c532-CB.html


SvcRestart-HYBRID
#1 win 2008
http://sdk-testresults.couchbase.com.s3.amazonaws.com/SDK-SDK/CB-3.0.1-1443/SvcRestart-HYBRID/10-29-14/043931/f0c6e37094e045acad562f15f272412f-MC.html
http://sdk-testresults.couchbase.com.s3.amazonaws.com/SDK-SDK/CB-3.0.1-1443/SvcRestart-HYBRID/10-29-14/043931/f0c6e37094e045acad562f15f272412f-CB.html
#2 win 2012
http://sdk-testresults.couchbase.com.s3.amazonaws.com/SDK-SDK/CB-3.0.1-1443/SvcRestart-HYBRID/10-29-14/039260/de6ed80e8006c08ecc993b968adfdbc6-MC.html
http://sdk-testresults.couchbase.com.s3.amazonaws.com/SDK-SDK/CB-3.0.1-1443/SvcRestart-HYBRID/10-29-14/039260/de6ed80e8006c08ecc993b968adfdbc6-CB.html
#3 win 8
http://sdk-testresults.couchbase.com.s3.amazonaws.com/SDK-SDK/CB-3.0.1-1443/SvcRestart-HYBRID/10-29-14/034312/3e0bae101605ee61a2f5b6241519ebd9-MC.html
http://sdk-testresults.couchbase.com.s3.amazonaws.com/SDK-SDK/CB-3.0.1-1443/SvcRestart-HYBRID/10-29-14/034312/3e0bae101605ee61a2f5b6241519ebd9-CB.html

Rb1Swap-HYBRID
#1 win 2008
http://sdk-testresults.couchbase.com.s3.amazonaws.com/SDK-SDK/CB-3.0.1-1443/Rb1Swap-HYBRID/10-29-14/044171/f63b74d2ea2a4d5ccf3676349fd7fe96-MC.html
http://sdk-testresults.couchbase.com.s3.amazonaws.com/SDK-SDK/CB-3.0.1-1443/Rb1Swap-HYBRID/10-29-14/044171/f63b74d2ea2a4d5ccf3676349fd7fe96-CB.html
#2 win 2012
http://sdk-testresults.couchbase.com.s3.amazonaws.com/SDK-SDK/CB-3.0.1-1443/Rb1Swap-HYBRID/10-29-14/039588/f5287ccebd186e68c07aedba66ac7270-MC.html
http://sdk-testresults.couchbase.com.s3.amazonaws.com/SDK-SDK/CB-3.0.1-1443/Rb1Swap-HYBRID/10-29-14/039588/f5287ccebd186e68c07aedba66ac7270-CB.html
#3 win 8
http://sdk-testresults.couchbase.com.s3.amazonaws.com/SDK-SDK/CB-3.0.1-1443/Rb1Swap-HYBRID/10-29-14/034662/e6891f2c44fb46c4f165b63fb93b9fd1-MC.html
http://sdk-testresults.couchbase.com.s3.amazonaws.com/SDK-SDK/CB-3.0.1-1443/Rb1Swap-HYBRID/10-29-14/034662/e6891f2c44fb46c4f165b63fb93b9fd1-CB.html


FoEptEject-HYBRID
#1 win 2008
http://sdk-testresults.couchbase.com.s3.amazonaws.com/SDK-SDK/CB-3.0.1-1443/FoEptEject-HYBRID/10-29-14/044530/8367451661c4514c692186f5b91b7746-MC.html
http://sdk-testresults.couchbase.com.s3.amazonaws.com/SDK-SDK/CB-3.0.1-1443/FoEptEject-HYBRID/10-29-14/044530/8367451661c4514c692186f5b91b7746-CB.html
#2 win 2012
http://sdk-testresults.couchbase.com.s3.amazonaws.com/SDK-SDK/CB-3.0.1-1443/FoEptEject-HYBRID/10-29-14/040010/a490ee32d7754ac1949e5860a3145616-MC.html hight latency at the end(sdkd issue?)
http://sdk-testresults.couchbase.com.s3.amazonaws.com/SDK-SDK/CB-3.0.1-1443/FoEptEject-HYBRID/10-29-14/040010/a490ee32d7754ac1949e5860a3145616-CB.html
#3 win 8
http://sdk-testresults.couchbase.com.s3.amazonaws.com/SDK-SDK/CB-3.0.1-1443/FoEptEject-HYBRID/10-29-14/035142/cd5b688c7555a876bc92c6cbd8d7ff0f-MC.html
http://sdk-testresults.couchbase.com.s3.amazonaws.com/SDK-SDK/CB-3.0.1-1443/FoEptEject-HYBRID/10-29-14/035142/cd5b688c7555a876bc92c6cbd8d7ff0f-CB.html


 hope to do one more iteration with github version + ssl testing
Comment by Jeff Morris [ 29/Oct/14 ]
Andrei -

All open changesets have been merged with github.

-Jeff
Comment by Jeff Morris [ 29/Oct/14 ]
>>#2 win 2012
http://sdk-testresults.couchbase.com.s3.amazonaws.com/SDK-SDK/CB-3.0.1-1443/Rb2OutEpt-HYBRID/10-29-14/036485/d3aee6f752c82f33ea80ec199fbf9ef8-MC.html hight latency at the end(sdkd issue?)

Can you provide logs so I can see what's up?

Thanks,

Jeff
Comment by Andrei Baranouski [ 30/Oct/14 ]
https://s3.amazonaws.com/bugdb/jira/NCBC-703/c3330f3b/log.zip
http://sdkbuilds.couchbase.com/job/.net-sdkdclient-ng2_win2012_64_andrei/94/console
http://sdk-testresults.couchbase.com.s3.amazonaws.com/SDK-SDK/CB-3.0.1-1443/Rb2OutEpt-HYBRID/10-30-14/046051/6c039aaa37b69a5d1c20192fbffc8e56-MC.html




[NCBC-702] Make Release and AddRef un-callable in assemblies other than Couchbase and Couchbase.Tests Created: 25/Oct/14  Updated: 04/Nov/14  Resolved: 26/Oct/14

Status: Resolved
Project: Couchbase .NET client library
Component/s: library
Affects Version/s: 2.0 Beta
Fix Version/s: None

Type: Task Priority: Major
Reporter: Jeff Morris Assignee: Jeff Morris
Resolution: Fixed Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Comments   
Comment by Jeff Morris [ 26/Oct/14 ]
http://review.couchbase.org/#/c/42452/




[NCBC-701] sometimes ops/sec drop to ~1 ops/sec Created: 25/Oct/14  Updated: 31/Oct/14  Resolved: 31/Oct/14

Status: Closed
Project: Couchbase .NET client library
Component/s: library
Affects Version/s: 2.0 Beta
Fix Version/s: 2.0.1

Type: Bug Priority: Blocker
Reporter: Andrei Baranouski Assignee: Andrei Baranouski
Resolution: Fixed Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Attachments: PNG File 1_ops_sec2.png     PNG File 1_ops_sec3.png     PNG File 1_ops_sec.png     Zip Archive NCBC-701_new.zip    

 Description   
run with

$ git log -n 5
commit 509098f2aead49c4262f98058e4f045741e2fad1
Author: jeffrymorris <jeffrymorris@gmail.com>
Date: Fri Oct 24 15:23:08 2014 -0700

    Use consistent error handling when IO fails

    Change-Id: Idfca664637d5e3db41770fe0137b11b2cab36952
    Reviewed-on: http://review.couchbase.org/42427
    Tested-by: Jeffry Morris <jeffrymorris@gmail.com>
    Reviewed-by: Brett Lawson <brett19@gmail.com>

commit 2769f360e3d129c5ebda996117361e00b9e6677f
Author: jeffrymorris <jeffrymorris@gmail.com>
Date: Fri Oct 24 15:20:45 2014 -0700

    Ensure that each server is tried during a config heartbeat

    Change-Id: I7547effadbc5a76fb5c801450c0f069d2b272d32
    Reviewed-on: http://review.couchbase.org/42426
    Tested-by: Jeffry Morris <jeffrymorris@gmail.com>
    Reviewed-by: Matt Ingenthron <matt@couchbase.com>

commit 37758dbdc9baf75101a7e6230a2a277c37948d38
Author: jeffrymorris <jeffrymorris@gmail.com>
Date: Thu Oct 23 19:56:49 2014 -0700

    Remove old markdown file. New one (README.md) will be updated soon

    Change-Id: I73abd2e85ba17d33d350fe0bc530bd2356c1d7cc
    Reviewed-on: http://review.couchbase.org/42412
    Tested-by: Jeffry Morris <jeffrymorris@gmail.com>
    Reviewed-by: Simon Baslé <simon@couchbase.com>

commit 73df659c062aab8a1dd211ddbf93a78864458b09
Author: jeffrymorris <jeffrymorris@gmail.com>
Date: Thu Oct 23 19:53:42 2014 -0700

    Removing old script from the enyim days

    Change-Id: I9ed90500ae2c256c6389f072c593f686e3ed4d31
    Reviewed-on: http://review.couchbase.org/42411
    Tested-by: Jeffry Morris <jeffrymorris@gmail.com>
    Reviewed-by: Simon Baslé <simon@couchbase.com>

commit 28895f0acb807947e1e55471de3751a75e360de4
Author: jeffrymorris <jeffrymorris@gmail.com>
Date: Thu Oct 23 19:47:37 2014 -0700

    Remove 'tester' projects from min repo

    These will be refactored and moved to a seperate repo on labs.

    Change-Id: I1ef3d497a210d915f5c01f50a50baa9f17c704a8
    Reviewed-on: http://review.couchbase.org/42410
    Reviewed-by: Simon Baslé <simon@couchbase.com>
    Reviewed-by: Jeffry Morris <jeffrymorris@gmail.com>
    Tested-by: Jeffry Morris <jeffrymorris@gmail.com>

Administrator@WIN-26PC57KC7NB /c/jenkins/workspace/.net-sdkdclient-ng2_win2012_6
4_andrei/couchbase-net-client (master)




when I once again reproduced it( in command line now) I terminated sdkd execution and found that some threads has stack traces like:



  [External Code]
> Couchbase.NetClient.dll!Couchbase.IO.ConnectionPool<Couchbase.IO.Strategies.EapConnection>.Acquire() Line 136 C#
  Couchbase.NetClient.dll!Couchbase.IO.ConnectionPool<Couchbase.IO.Strategies.EapConnection>.Acquire() Line 148 C#
  Couchbase.NetClient.dll!Couchbase.IO.ConnectionPool<Couchbase.IO.Strategies.EapConnection>.Acquire() Line 148 C#
  Couchbase.NetClient.dll!Couchbase.IO.ConnectionPool<Couchbase.IO.Strategies.EapConnection>.Acquire() Line 148 C#
  Couchbase.NetClient.dll!Couchbase.IO.ConnectionPool<Couchbase.IO.Strategies.EapConnection>.Acquire() Line 148 C#
  Couchbase.NetClient.dll!Couchbase.IO.ConnectionPool<Couchbase.IO.Strategies.EapConnection>.Acquire() Line 148 C#
  Couchbase.NetClient.dll!Couchbase.IO.ConnectionPool<Couchbase.IO.Strategies.EapConnection>.Acquire() Line 148 C#
  Couchbase.NetClient.dll!Couchbase.IO.ConnectionPool<Couchbase.IO.Strategies.EapConnection>.Acquire() Line 148 C#
  Couchbase.NetClient.dll!Couchbase.IO.ConnectionPool<Couchbase.IO.Strategies.EapConnection>.Acquire() Line 148 C#
  Couchbase.NetClient.dll!Couchbase.IO.ConnectionPool<Couchbase.IO.Strategies.EapConnection>.Acquire() Line 148 C#
  Couchbase.NetClient.dll!Couchbase.IO.ConnectionPool<Couchbase.IO.Strategies.EapConnection>.Acquire() Line 148 C#
  Couchbase.NetClient.dll!Couchbase.IO.ConnectionPool<Couchbase.IO.Strategies.EapConnection>.Acquire() Line 148 C#
  Couchbase.NetClient.dll!Couchbase.IO.ConnectionPool<Couchbase.IO.Strategies.EapConnection>.Acquire() Line 148 C#
  Couchbase.NetClient.dll!Couchbase.IO.ConnectionPool<Couchbase.IO.Strategies.EapConnection>.Acquire() Line 148 C#
  Couchbase.NetClient.dll!Couchbase.IO.ConnectionPool<Couchbase.IO.Strategies.EapConnection>.Acquire() Line 148 C#
  Couchbase.NetClient.dll!Couchbase.IO.ConnectionPool<Couchbase.IO.Strategies.EapConnection>.Acquire() Line 148 C#
  Couchbase.NetClient.dll!Couchbase.IO.ConnectionPool<Couchbase.IO.Strategies.EapConnection>.Acquire() Line 148 C#
  Couchbase.NetClient.dll!Couchbase.IO.ConnectionPool<Couchbase.IO.Strategies.EapConnection>.Acquire() Line 148 C#
  Couchbase.NetClient.dll!Couchbase.IO.ConnectionPool<Couchbase.IO.Strategies.EapConnection>.Acquire() Line 148 C#
  Couchbase.NetClient.dll!Couchbase.IO.ConnectionPool<Couchbase.IO.Strategies.EapConnection>.Acquire() Line 148 C#
  Couchbase.NetClient.dll!Couchbase.IO.ConnectionPool<Couchbase.IO.Strategies.EapConnection>.Acquire() Line 148 C#
  Couchbase.NetClient.dll!Couchbase.IO.ConnectionPool<Couchbase.IO.Strategies.EapConnection>.Acquire() Line 148 C#
  Couchbase.NetClient.dll!Couchbase.IO.ConnectionPool<Couchbase.IO.Strategies.EapConnection>.Acquire() Line 148 C#
  Couchbase.NetClient.dll!Couchbase.IO.ConnectionPool<Couchbase.IO.Strategies.EapConnection>.Acquire() Line 148 C#
  Couchbase.NetClient.dll!Couchbase.IO.ConnectionPool<Couchbase.IO.Strategies.EapConnection>.Acquire() Line 148 C#
  Couchbase.NetClient.dll!Couchbase.IO.ConnectionPool<Couchbase.IO.Strategies.EapConnection>.Acquire() Line 148 C#
  Couchbase.NetClient.dll!Couchbase.IO.ConnectionPool<Couchbase.IO.Strategies.EapConnection>.Acquire() Line 148 C#
  Couchbase.NetClient.dll!Couchbase.IO.ConnectionPool<Couchbase.IO.Strategies.EapConnection>.Acquire() Line 148 C#
  Couchbase.NetClient.dll!Couchbase.IO.ConnectionPool<Couchbase.IO.Strategies.EapConnection>.Acquire() Line 148 C#
  Couchbase.NetClient.dll!Couchbase.IO.ConnectionPool<Couchbase.IO.Strategies.EapConnection>.Acquire() Line 148 C#
  Couchbase.NetClient.dll!Couchbase.IO.ConnectionPool<Couchbase.IO.Strategies.EapConnection>.Acquire() Line 148 C#
  Couchbase.NetClient.dll!Couchbase.IO.ConnectionPool<Couchbase.IO.Strategies.EapConnection>.Acquire() Line 148 C#
  Couchbase.NetClient.dll!Couchbase.IO.ConnectionPool<Couchbase.IO.Strategies.EapConnection>.Acquire() Line 148 C#
  Couchbase.NetClient.dll!Couchbase.IO.ConnectionPool<Couchbase.IO.Strategies.EapConnection>.Acquire() Line 148 C#
  Couchbase.NetClient.dll!Couchbase.IO.ConnectionPool<Couchbase.IO.Strategies.EapConnection>.Acquire() Line 148 C#
  Couchbase.NetClient.dll!Couchbase.IO.ConnectionPool<Couchbase.IO.Strategies.EapConnection>.Acquire() Line 148 C#
  Couchbase.NetClient.dll!Couchbase.IO.ConnectionPool<Couchbase.IO.Strategies.EapConnection>.Acquire() Line 148 C#
  Couchbase.NetClient.dll!Couchbase.IO.ConnectionPool<Couchbase.IO.Strategies.EapConnection>.Acquire() Line 148 C#
  Couchbase.NetClient.dll!Couchbase.IO.ConnectionPool<Couchbase.IO.Strategies.EapConnection>.Acquire() Line 148 C#
  Couchbase.NetClient.dll!Couchbase.IO.ConnectionPool<Couchbase.IO.Strategies.EapConnection>.Acquire() Line 148 C#
  Couchbase.NetClient.dll!Couchbase.IO.ConnectionPool<Couchbase.IO.Strategies.EapConnection>.Acquire() Line 148 C#
  Couchbase.NetClient.dll!Couchbase.IO.ConnectionPool<Couchbase.IO.Strategies.EapConnection>.Acquire() Line 148 C#
  Couchbase.NetClient.dll!Couchbase.IO.ConnectionPool<Couchbase.IO.Strategies.EapConnection>.Acquire() Line 148 C#
  Couchbase.NetClient.dll!Couchbase.IO.ConnectionPool<Couchbase.IO.Strategies.EapConnection>.Acquire() Line 148 C#
  Couchbase.NetClient.dll!Couchbase.IO.ConnectionPool<Couchbase.IO.Strategies.EapConnection>.Acquire() Line 148 C#
  Couchbase.NetClient.dll!Couchbase.IO.ConnectionPool<Couchbase.IO.Strategies.EapConnection>.Acquire() Line 148 C#
  Couchbase.NetClient.dll!Couchbase.IO.ConnectionPool<Couchbase.IO.Strategies.EapConnection>.Acquire() Line 148 C#
  Couchbase.NetClient.dll!Couchbase.IO.ConnectionPool<Couchbase.IO.Strategies.EapConnection>.Acquire() Line 148 C#
  Couchbase.NetClient.dll!Couchbase.IO.ConnectionPool<Couchbase.IO.Strategies.EapConnection>.Acquire() Line 148 C#
  Couchbase.NetClient.dll!Couchbase.IO.ConnectionPool<Couchbase.IO.Strategies.EapConnection>.Acquire() Line 148 C#
  Couchbase.NetClient.dll!Couchbase.IO.ConnectionPool<Couchbase.IO.Strategies.EapConnection>.Acquire() Line 148 C#
  Couchbase.NetClient.dll!Couchbase.IO.ConnectionPool<Couchbase.IO.Strategies.EapConnection>.Acquire() Line 148 C#
  Couchbase.NetClient.dll!Couchbase.IO.ConnectionPool<Couchbase.IO.Strategies.EapConnection>.Acquire() Line 148 C#
  Couchbase.NetClient.dll!Couchbase.IO.ConnectionPool<Couchbase.IO.Strategies.EapConnection>.Acquire() Line 148 C#
  Couchbase.NetClient.dll!Couchbase.IO.ConnectionPool<Couchbase.IO.Strategies.EapConnection>.Acquire() Line 148 C#
  Couchbase.NetClient.dll!Couchbase.IO.ConnectionPool<Couchbase.IO.Strategies.EapConnection>.Acquire() Line 148 C#
  Couchbase.NetClient.dll!Couchbase.IO.ConnectionPool<Couchbase.IO.Strategies.EapConnection>.Acquire() Line 148 C#
  Couchbase.NetClient.dll!Couchbase.IO.ConnectionPool<Couchbase.IO.Strategies.EapConnection>.Acquire() Line 148 C#
  Couchbase.NetClient.dll!Couchbase.IO.ConnectionPool<Couchbase.IO.Strategies.EapConnection>.Acquire() Line 148 C#
  Couchbase.NetClient.dll!Couchbase.IO.ConnectionPool<Couchbase.IO.Strategies.EapConnection>.Acquire() Line 148 C#
  Couchbase.NetClient.dll!Couchbase.IO.ConnectionPool<Couchbase.IO.Strategies.EapConnection>.Acquire() Line 148 C#
  Couchbase.NetClient.dll!Couchbase.IO.ConnectionPool<Couchbase.IO.Strategies.EapConnection>.Acquire() Line 148 C#
  Couchbase.NetClient.dll!Couchbase.IO.ConnectionPool<Couchbase.IO.Strategies.EapConnection>.Acquire() Line 148 C#
  Couchbase.NetClient.dll!Couchbase.IO.ConnectionPool<Couchbase.IO.Strategies.EapConnection>.Acquire() Line 148 C#
  Couchbase.NetClient.dll!Couchbase.IO.ConnectionPool<Couchbase.IO.Strategies.EapConnection>.Acquire() Line 148 C#
  Couchbase.NetClient.dll!Couchbase.IO.ConnectionPool<Couchbase.IO.Strategies.EapConnection>.Acquire() Line 148 C#
  Couchbase.NetClient.dll!Couchbase.IO.ConnectionPool<Couchbase.IO.Strategies.EapConnection>.Acquire() Line 148 C#
  Couchbase.NetClient.dll!Couchbase.IO.ConnectionPool<Couchbase.IO.Strategies.EapConnection>.Acquire() Line 148 C#
  Couchbase.NetClient.dll!Couchbase.IO.ConnectionPool<Couchbase.IO.Strategies.EapConnection>.Acquire() Line 148 C#
  Couchbase.NetClient.dll!Couchbase.IO.ConnectionPool<Couchbase.IO.Strategies.EapConnection>.Acquire() Line 148 C#
  Couchbase.NetClient.dll!Couchbase.IO.ConnectionPool<Couchbase.IO.Strategies.EapConnection>.Acquire() Line 148 C#
  Couchbase.NetClient.dll!Couchbase.IO.ConnectionPool<Couchbase.IO.Strategies.EapConnection>.Acquire() Line 148 C#
  Couchbase.NetClient.dll!Couchbase.IO.ConnectionPool<Couchbase.IO.Strategies.EapConnection>.Acquire() Line 148 C#
  Couchbase.NetClient.dll!Couchbase.IO.ConnectionPool<Couchbase.IO.Strategies.EapConnection>.Acquire() Line 148 C#
  Couchbase.NetClient.dll!Couchbase.IO.ConnectionPool<Couchbase.IO.Strategies.EapConnection>.Acquire() Line 148 C#
  Couchbase.NetClient.dll!Couchbase.IO.ConnectionPool<Couchbase.IO.Strategies.EapConnection>.Acquire() Line 148 C#
  Couchbase.NetClient.dll!Couchbase.IO.ConnectionPool<Couchbase.IO.Strategies.EapConnection>.Acquire() Line 148 C#
  Couchbase.NetClient.dll!Couchbase.IO.ConnectionPool<Couchbase.IO.Strategies.EapConnection>.Acquire() Line 148 C#
  Couchbase.NetClient.dll!Couchbase.IO.ConnectionPool<Couchbase.IO.Strategies.EapConnection>.Acquire() Line 148 C#
  Couchbase.NetClient.dll!Couchbase.IO.ConnectionPool<Couchbase.IO.Strategies.EapConnection>.Acquire() Line 148 C#
  Couchbase.NetClient.dll!Couchbase.IO.ConnectionPool<Couchbase.IO.Strategies.EapConnection>.Acquire() Line 148 C#
  Couchbase.NetClient.dll!Couchbase.IO.ConnectionPool<Couchbase.IO.Strategies.EapConnection>.Acquire() Line 148 C#
  Couchbase.NetClient.dll!Couchbase.IO.ConnectionPool<Couchbase.IO.Strategies.EapConnection>.Acquire() Line 148 C#
  Couchbase.NetClient.dll!Couchbase.IO.ConnectionPool<Couchbase.IO.Strategies.EapConnection>.Acquire() Line 148 C#
  Couchbase.NetClient.dll!Couchbase.IO.ConnectionPool<Couchbase.IO.Strategies.EapConnection>.Acquire() Line 148 C#
  Couchbase.NetClient.dll!Couchbase.IO.ConnectionPool<Couchbase.IO.Strategies.EapConnection>.Acquire() Line 148 C#
  Couchbase.NetClient.dll!Couchbase.IO.ConnectionPool<Couchbase.IO.Strategies.EapConnection>.Acquire() Line 148 C#
  Couchbase.NetClient.dll!Couchbase.IO.ConnectionPool<Couchbase.IO.Strategies.EapConnection>.Acquire() Line 148 C#
  Couchbase.NetClient.dll!Couchbase.IO.ConnectionPool<Couchbase.IO.Strategies.EapConnection>.Acquire() Line 148 C#
  Couchbase.NetClient.dll!Couchbase.IO.ConnectionPool<Couchbase.IO.Strategies.EapConnection>.Acquire() Line 148 C#
  Couchbase.NetClient.dll!Couchbase.IO.ConnectionPool<Couchbase.IO.Strategies.EapConnection>.Acquire() Line 148 C#
  Couchbase.NetClient.dll!Couchbase.IO.ConnectionPool<Couchbase.IO.Strategies.EapConnection>.Acquire() Line 148 C#
  Couchbase.NetClient.dll!Couchbase.IO.ConnectionPool<Couchbase.IO.Strategies.EapConnection>.Acquire() Line 148 C#
  Couchbase.NetClient.dll!Couchbase.IO.ConnectionPool<Couchbase.IO.Strategies.EapConnection>.Acquire() Line 148 C#
  Couchbase.NetClient.dll!Couchbase.IO.ConnectionPool<Couchbase.IO.Strategies.EapConnection>.Acquire() Line 148 C#
  Couchbase.NetClient.dll!Couchbase.IO.ConnectionPool<Couchbase.IO.Strategies.EapConnection>.Acquire() Line 148 C#
  Couchbase.NetClient.dll!Couchbase.IO.ConnectionPool<Couchbase.IO.Strategies.EapConnection>.Acquire() Line 148 C#
  Couchbase.NetClient.dll!Couchbase.IO.ConnectionPool<Couchbase.IO.Strategies.EapConnection>.Acquire() Line 148 C#
  Couchbase.NetClient.dll!Couchbase.IO.ConnectionPool<Couchbase.IO.Strategies.EapConnection>.Acquire() Line 148 C#
  Couchbase.NetClient.dll!Couchbase.IO.ConnectionPool<Couchbase.IO.Strategies.EapConnection>.Acquire() Line 148 C#
  Couchbase.NetClient.dll!Couchbase.IO.ConnectionPool<Couchbase.IO.Strategies.EapConnection>.Acquire() Line 148 C#
  Couchbase.NetClient.dll!Couchbase.IO.ConnectionPool<Couchbase.IO.Strategies.EapConnection>.Acquire() Line 148 C#
  Couchbase.NetClient.dll!Couchbase.IO.ConnectionPool<Couchbase.IO.Strategies.EapConnection>.Acquire() Line 148 C#
  Couchbase.NetClient.dll!Couchbase.IO.ConnectionPool<Couchbase.IO.Strategies.EapConnection>.Acquire() Line 148 C#
  Couchbase.NetClient.dll!Couchbase.IO.ConnectionPool<Couchbase.IO.Strategies.EapConnection>.Acquire() Line 148 C#
  Couchbase.NetClient.dll!Couchbase.IO.ConnectionPool<Couchbase.IO.Strategies.EapConnection>.Couchbase.IO.IConnectionPool.Acquire() Line 200 C#
  Couchbase.NetClient.dll!Couchbase.IO.Strategies.DefaultIOStrategy.Execute<Couchbase.Configuration.Server.Serialization.BucketConfig>(Couchbase.IO.Operations.IOperation<Couchbase.Configuration.Server.Serialization.BucketConfig> operation) Line 40 C#
  Couchbase.NetClient.dll!Couchbase.Core.Server.Send<Couchbase.Configuration.Server.Serialization.BucketConfig>(Couchbase.IO.Operations.IOperation<Couchbase.Configuration.Server.Serialization.BucketConfig> operation) Line 88 C#
  Couchbase.NetClient.dll!Couchbase.Configuration.Server.Providers.CarrierPublication.CarrierPublicationProvider._heartBeat_Elapsed(object sender, System.Timers.ElapsedEventArgs args) Line 50 C#
  [External Code]


 Comments   
Comment by Andrei Baranouski [ 25/Oct/14 ]
https://s3.amazonaws.com/bugdb/jira/NCBC-701/74a96698/NCBC-701.zip
Comment by Jeff Morris [ 25/Oct/14 ]
Andrei-

Your logs provided in NCBC-701.zip have a time range from 2014-10-25 02:39:22,706 to 2014-10-25 02:59:28,677, so I can't correlate with the graphs 1_ops_sec_.png and 1_ops_sec3.png.

What I see in the NCBC-701.zip logs is that:

a) Threads are waiting for connections (normal in certain situ's)
b) This is caused when other threads are taking too long per operation, thus making the wait queue _way_ too long

What would cause an operation to take a long time? Probably when a request is made on a server that has either been removed from the cluster or has shutdown. The time delay is the TCP timeout's which are all default ATM. So, instead of a making a request and failing immediately, the client waits for a response which may take seconds (actually the it will timeout at 2.5s), which is time in which another thread is waiting to make a request.

However, I can postulate that the config heartbeat checks are exasperating this, since it will check every server until it either succeeds or runs out of servers to try and it runs every 10s by default. Design wise we might want to:

- Move the config heartbeat to a separate dedicated TCP connection AND/OR
- Move it to a dedicated worker thread AND/OR
- Add a dedicated HTTPStreaming config listener to the CarrierPublicationProvider (this would solve most problems, but has some minuses) AND/OR
- Stop the config heartbeat timer when it begins a cycle and start it when a cycle completes - this would keep it from backing up - this is a flaw imo

Additionally, some of this may be mitigated by tuning:

- Increasing the MaxPool size - defaults to 2
- Tuning the socket timeout values (they are all default ATM)

-Jeff

Comment by Jeff Morris [ 25/Oct/14 ]
Andrei -

I made a patch for: "Stop the config heartbeat timer when it begins a cycle and start it when a cycle complete"

http://review.couchbase.org/#/c/42449/

You can test it if you pull it on top of master or push it through CR and do it on master.

Thanks,

Jeff
Comment by Jeff Morris [ 25/Oct/14 ]
Looking deeper into the logs provided, it looks like SDKD is not properly maintaining references to the cluster object:

Line 14767: 2014-10-25 02:39:27,697 [2] DEBUG Couchbase.Cluster - Finalizing Cluster
Line 15996: 2014-10-25 02:39:43,900 [2] DEBUG Couchbase.Cluster - Finalizing Cluster
Line 15997: 2014-10-25 02:39:43,901 [2] DEBUG Couchbase.IO.Strategies.DefaultIOStrategy - Finalizing DefaultIOStrategy for 10.3.121.134:11210 - 65d70de1-7221-42e4-84fc-7ff2ed34d2d5
Line 145546: 2014-10-25 02:41:39,766 [2] DEBUG Couchbase.Cluster - Finalizing Cluster
Line 150673: 2014-10-25 02:41:40,382 [2] DEBUG Couchbase.IO.Strategies.DefaultIOStrategy - Finalizing DefaultIOStrategy for 10.3.121.135:11210 - b50fa7db-a7dc-42e9-a762-09a2769e216f
Line 170419: 2014-10-25 02:53:58,109 [2] DEBUG Couchbase.Cluster - Finalizing Cluster
Line 171445: 2014-10-25 02:53:59,075 [2] DEBUG Couchbase.Cluster - Finalizing Cluster

This could or could not be causing inconsistent test results.

Things getting interesting around line 253943:

2014-10-25 02:59:21,082 [17] INFO Couchbase.Configuration.Server.Providers.ConfigProviderBase - Unregistering observer default
2014-10-25 02:59:21,083 [17] DEBUG Couchbase.Configuration.ConfigContextBase - Disposing ConfigContext
2014-10-25 02:59:21,083 [17] DEBUG Couchbase.Core.Server - Disposing Server for 10.3.121.134:11210
2014-10-25 02:59:21,083 [17] DEBUG Couchbase.IO.Strategies.DefaultIOStrategy - Disposing DefaultIOStrategy for 10.3.121.134:11210 - 6d4d7c96-ef1f-4bbd-adbd-a08303fc821d
2014-10-25 02:59:21,084 [17] DEBUG Couchbase.IO.ConnectionPool`1 - Disposing ConnectionPool for 10.3.121.134:11210 - f191b6cd-6b0b-4311-bcd8-13f40bf44fb0
2014-10-25 02:59:21,091 [17] DEBUG Couchbase.IO.ConnectionBase - Disposing connection for 10.3.121.134:11210 - 6877f2f9-3f19-4f34-8903-a03ba7b64a5e
2014-10-25 02:59:21,093 [40] WARN Couchbase.IO.ConnectionBase - Opcode=GetClusterConfig | Key= | Host=10.3.121.134:11210
System.IO.IOException: Unable to read data from the transport connection: Cannot access a disposed object.
Object name: 'System.Net.Sockets.Socket'.. ---> System.ObjectDisposedException: Cannot access a disposed object.
Object name: 'System.Net.Sockets.Socket'.
   at System.Net.Sockets.Socket.EndReceive(IAsyncResult asyncResult, SocketError& errorCode)
   at System.Net.Sockets.Socket.EndReceive(IAsyncResult asyncResult)
   at System.Net.Sockets.NetworkStream.EndRead(IAsyncResult asyncResult)
   --- End of inner exception stack trace ---
   at System.Net.Sockets.NetworkStream.EndRead(IAsyncResult asyncResult)
   at Couchbase.IO.Strategies.EapConnection.ReceiveCallback(IAsyncResult asyncResult) in c:\jenkins\workspace\.net-sdkdclient-ng2_win2012_64_andrei\couchbase-net-client\Src\Couchbase\IO\Strategies\EapConnection.cs


The "default" bucket is disposed (closing the connections to 10.3.121.134:11210), but the client keeps trying to use those connections which then throw ODE's.

-Jeff
Comment by Andrei Baranouski [ 26/Oct/14 ]
Hi Jeff,

I run the tests with the patch http://review.couchbase.org/#/c/42449/

and it's still reproduced on win8 http://sdkbuilds.couchbase.com/job/.net-sdkdclient-ng2_win8_64_andrei/31/console

timestamp on my screenshot differs for -10 hours becuase I took screenshots on my local host


maybe the problem is the following exceptions becuse I see drops in ops/sec just after them

2014-10-26 09:59:51,197 [12] ERROR Couchbase.Views.ViewClient - System.Net.WebException: The operation has timed out
   at System.Net.HttpWebRequest.GetResponse()
   at Couchbase.Views.ViewClient.Execute[T](IViewQuery query) in c:\jenkins\workspace\.net-sdkdclient-ng2_win8_64_andrei\couchbase-net-client\Src\Couchbase\Views\ViewClient.cs:line 91
2014-10-26 09:59:51,209 [12] DEBUG Couchbase.CouchbaseBucket - trying again: 1
2014-10-26 09:59:51,225 [19] DEBUG Couchbase.Views.ViewQuery - http://10.3.121.136:8092/default/_design/test_design/_view/test_view?
2014-10-26 09:59:51,233 [14] DEBUG Couchbase.Views.ViewQuery - http://10.3.121.136:8092/default/_design/test_design/_view/test_view?
2014-10-26 09:59:51,285 [16] DEBUG Couchbase.Views.ViewQuery - http://10.3.3.206:8092/default/_design/test_design/_view/test_view?
2014-10-26 09:59:51,303 [16] DEBUG Couchbase.Views.ViewQuery - http://10.3.121.135:8092/default/_design/test_design/_view/test_view?
2014-10-26 09:59:51,463 [14] DEBUG Couchbase.Views.ViewQuery - http://10.3.121.135:8092/default/_design/test_design/_view/test_view?
2014-10-26 09:59:51,482 [14] DEBUG Couchbase.Views.ViewQuery - http://10.3.3.206:8092/default/_design/test_design/_view/test_view?
2014-10-26 09:59:51,495 [14] DEBUG Couchbase.Views.ViewQuery - http://10.3.121.134:8092/default/_design/test_design/_view/test_view?
2014-10-26 09:59:51,519 [14] DEBUG Couchbase.Views.ViewQuery - http://10.3.121.134:8092/default/_design/test_design/_view/test_view?
2014-10-26 09:59:51,620 [15] DEBUG Couchbase.Views.ViewQuery - http://10.3.121.136:8092/default/_design/test_design/_view/test_view?
2014-10-26 09:59:51,628 [16] DEBUG Couchbase.Views.ViewQuery - http://10.3.121.134:8092/default/_design/test_design/_view/test_view?
2014-10-26 09:59:51,648 [15] DEBUG Couchbase.Views.ViewQuery - http://10.3.121.134:8092/default/_design/test_design/_view/test_view?
2014-10-26 09:59:51,653 [16] DEBUG Couchbase.Views.ViewQuery - http://10.3.121.136:8092/default/_design/test_design/_view/test_view?
2014-10-26 09:59:52,110 [10] ERROR Couchbase.Views.ViewClient - System.Net.WebException: The operation has timed out
   at System.Net.HttpWebRequest.GetResponse()
   at Couchbase.Views.ViewClient.Execute[T](IViewQuery query) in c:\jenkins\workspace\.net-sdkdclient-ng2_win8_64_andrei\couchbase-net-client\Src\Couchbase\Views\ViewClient.cs:line 91
2014-10-26 09:59:52,111 [10] DEBUG Couchbase.CouchbaseBucket - trying again: 1
2014-10-26 09:59:52,114 [9] DEBUG Couchbase.Views.ViewQuery - http://10.3.121.135:8092/default/_design/test_design/_view/test_view?
2014-10-26 09:59:52,256 [14] DEBUG Couchbase.Views.ViewQuery - http://10.3.121.136:8092/default/_design/test_design/_view/test_view?
2014-10-26 09:59:52,548 [17] DEBUG Couchbase.IO.ConnectionPool`1 - Releasing: c214d753-0a7d-4091-8355-054e81e3884f on 10.3.121.136:11210 - a6dd7625-ee7c-4658-90aa-1d5ce487daf1
2014-10-26 09:59:52,548 [17] DEBUG Couchbase.CouchbaseBucket - Operation doesn't support retries for key SimpleKeyREP7126REP7126REP7126REP7126REP7126
2014-10-26 09:59:52,548 [17] DEBUG Couchbase.CouchbaseBucket - Operation for key SimpleKeyREP7126REP7126REP7126REP7126REP7126 failed after 0 retries. Reason: Operation timed out: the timeout can be configured by changing the PoolConfiguration.OperationTimeout property. The default is 2500ms.
2014-10-26 09:59:52,548 [17] INFO Couchbase.Configuration.ConfigContextBase - Getting KeyMapper for rev#4 on thread 17
2014-10-26 09:59:52,548 [17] INFO Couchbase.Core.Buckets.VBucketKeyMapper - Using index 175 for key SimpleKeyREP7127REP7127REP7127REP7127REP7127 - rev4
2014-10-26 09:59:52,548 [17] DEBUG Couchbase.Core.Server - Sending SimpleKeyREP7127REP7127REP7127REP7127REP7127 using server 10.3.121.134:11210
2014-10-26 09:59:52,548 [17] DEBUG Couchbase.IO.ConnectionPool`1 - Acquire existing: 84627e8b-4a27-4b78-a962-3c86ec6aab7e | 10.3.121.134:11210 | [0, 2] - 397c8ced-c9bc-4df6-8030-05ff10a10b61 - Disposed: False
2014-10-26 09:59:52,548 [17] INFO Couchbase.IO.ConnectionBase - Sending key SimpleKeyREP7127REP7127REP7127REP7127REP7127 using 175 on 10.3.121.134:11210
2014-10-26 09:59:52,557 [17] DEBUG Couchbase.IO.ConnectionPool`1 - Releasing: 84627e8b-4a27-4b78-a962-3c86ec6aab7e on 10.3.121.134:11210 - 397c8ced-c9bc-4df6-8030-05ff10a10b61
2014-10-26 09:59:52,557 [17] DEBUG Couchbase.CouchbaseBucket - Operation succeeded 0 for key SimpleKeyREP7127REP7127REP7127REP7127REP7127
2014-10-26 09:59:52,557 [17] INFO Couchbase.Configuration.ConfigContextBase - Getting KeyMapper for rev#4 on thread 17
2014-10-26 09:59:52,557 [17] INFO Couchbase.Core.Buckets.VBucketKeyMapper - Using index 408 for key SimpleKeyREP7128REP7128REP7128REP7128REP7128 - rev4
2014-10-26 09:59:52,557 [17] DEBUG Couchbase.Core.Server - Sending SimpleKeyREP7128REP7128REP7128REP7128REP7128 using server 10.3.121.135:11210
2014-10-26 09:59:52,557 [17] DEBUG Couchbase.IO.ConnectionPool`1 - Acquire existing: 1ea73feb-71b4-4621-868e-14d7f23a46c3 | 10.3.121.135:11210 | [0, 2] - 46af13e1-5ed8-4ca1-87ba-61071626c3db - Disposed: False
2014-10-26 09:59:52,557 [17] INFO Couchbase.IO.ConnectionBase - Sending key SimpleKeyREP7128REP7128REP7128REP7128REP7128 using 408 on 10.3.121.135:11210
2014-10-26 09:59:52,562 [10] DEBUG Couchbase.Views.ViewQuery - http://10.3.121.136:8092/default/_design/test_design/_view/test_view?
2014-10-26 09:59:52,580 [16] DEBUG Couchbase.Views.ViewQuery - http://10.3.121.134:8092/default/_design/test_design/_view/test_view?
2014-10-26 09:59:52,589 [14] DEBUG Couchbase.Views.ViewQuery - http://10.3.3.206:8092/default/_design/test_design/_view/test_view?
2014-10-26 09:59:52,641 [12] DEBUG Couchbase.Views.ViewQuery - http://10.3.121.135:8092/default/_design/test_design/_view/test_view?
2014-10-26 09:59:53,300 [14] DEBUG Couchbase.Views.ViewQuery - http://10.3.121.134:8092/default/_design/test_design/_view/test_view?
2014-10-26 09:59:53,817 [14] DEBUG Couchbase.Views.ViewQuery - http://10.3.121.135:8092/default/_design/test_design/_view/test_view?
2014-10-26 09:59:53,837 [14] DEBUG Couchbase.Views.ViewQuery - http://10.3.121.134:8092/default/_design/test_design/_view/test_view?
2014-10-26 09:59:53,842 [11] WARN Couchbase.IO.ConnectionBase - Opcode=Set | Key=SimpleKeyREP7126REP7126REP7126REP7126REP7126 | Host=10.3.121.136:11210
System.NullReferenceException: Object reference not set to an instance of an object.
   at Couchbase.IO.Converters.AutoByteConverter.ToByte(Byte[] buffer, Int32 offset) in c:\jenkins\workspace\.net-sdkdclient-ng2_win8_64_andrei\couchbase-net-client\Src\Couchbase\IO\Converters\AutoByteConverter.cs:line 36
   at Couchbase.IO.Operations.OperationBase`1.Read(Byte[] buffer, Int32 offset, Int32 length) in c:\jenkins\workspace\.net-sdkdclient-ng2_win8_64_andrei\couchbase-net-client\Src\Couchbase\IO\Operations\OperationBase'.cs:line 105
   at Couchbase.IO.Strategies.EapConnection.ReceiveCallback(IAsyncResult asyncResult) in c:\jenkins\workspace\.net-sdkdclient-ng2_win8_64_andrei\couchbase-net-client\Src\Couchbase\IO\Strategies\EapConnection.cs:line 80
2014-10-26 09:59:53,842 [7] WARN Couchbase.IO.ConnectionBase - Opcode=Set | Key=SimpleKeyREP7124REP7124REP7124REP7124REP7124 | Host=10.3.121.136:11210
System.NullReferenceException: Object reference not set to an instance of an object.
   at Couchbase.IO.Converters.AutoByteConverter.ToByte(Byte[] buffer, Int32 offset) in c:\jenkins\workspace\.net-sdkdclient-ng2_win8_64_andrei\couchbase-net-client\Src\Couchbase\IO\Converters\AutoByteConverter.cs:line 36
   at Couchbase.IO.Operations.OperationBase`1.Read(Byte[] buffer, Int32 offset, Int32 length) in c:\jenkins\workspace\.net-sdkdclient-ng2_win8_64_andrei\couchbase-net-client\Src\Couchbase\IO\Operations\OperationBase'.cs:line 105
   at Couchbase.IO.Strategies.EapConnection.ReceiveCallback(IAsyncResult asyncResult) in c:\jenkins\workspace\.net-sdkdclient-ng2_win8_64_andrei\couchbase-net-client\Src\Couchbase\IO\Strategies\EapConnection.cs:line 80

see logs from the patch run https://www.couchbase.com/issues/secure/attachment/22281/NCBC-701_new.zip


If we talk about the exceptions
Object name: 'System.Net.Sockets.Socket'.. ---> System.ObjectDisposedException: Cannot access a disposed object.
it happened much later we drop performance and presumably after I stop the sdkd application




Comment by Jeff Morris [ 26/Oct/14 ]
Andrei -

Thanks for clarifying, I'll look into these NRE's. I also have a few commits that need to push through CR that may also help and possibly a few more after those :)

The WebTimeoutExceptions will definitely cause latency and it's a known issue that's been identified in the Java and LBC sdks as well.

-Jeff
Comment by Andrei Baranouski [ 26/Oct/14 ]
but this should not occur permanently after a certain point, right?
Comment by Jeff Morris [ 26/Oct/14 ]
Yeah, they should recover at some point. Do you know what specific test? i.e. Rb2OutEpt, etc?
Comment by Andrei Baranouski [ 26/Oct/14 ]
it was Rb2OutEpt test but it does not matter, because it was presetup( the same for all tests).
Comment by Jeff Morris [ 27/Oct/14 ]
If it's pre-setup it indicates a possible issue with your cluster or network issues. These timeouts indicate that the client is waiting on the _server_ to reply...during a rebalance the request may have been mapped to a server that is no longer in the cluster, in which case the timeout is expected.

That being said, i was able to trace to the NRE's and created a ticket for them: http://www.couchbase.com/issues/browse/NCBC-703

-Jeff

Comment by Andrei Baranouski [ 27/Oct/14 ]
[8:03:16 PM] Andrei Baranouski: look what I have thought
it happens from time to time on env where client is from 172 network , cluster is from 10*
perhaps some time delay occurs between networks or termination

 yes, maybe it's a network problem, but it happens in presetup(there is no any rebalance or other operations with cluster on this phase)

[8:04:44 PM] Andrei Baranouski: but in any case we should to fix this bug
Comment by Jeff Morris [ 31/Oct/14 ]
I think we can close this?
Comment by Andrei Baranouski [ 31/Oct/14 ]
has been fixed in the latest commits




[NCBC-700] Add overload for byte array values on Prepend/Append methods Created: 24/Oct/14  Updated: 05/Nov/14  Resolved: 05/Nov/14

Status: Resolved
Project: Couchbase .NET client library
Component/s: library
Affects Version/s: 2.0 Beta
Fix Version/s: 2.0.0

Type: Task Priority: Major
Reporter: Jeff Morris Assignee: Jeff Morris
Resolution: Fixed Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Comments   
Comment by Jeff Morris [ 05/Nov/14 ]
http://review.couchbase.org/#/c/42882/1




[NCBC-699] Upsert should take IDictionary input param Created: 22/Oct/14  Updated: 04/Nov/14  Resolved: 22/Oct/14

Status: Resolved
Project: Couchbase .NET client library
Component/s: library
Affects Version/s: 2.0 Beta
Fix Version/s: None

Type: Improvement Priority: Major
Reporter: Jeff Morris Assignee: Jeff Morris
Resolution: Fixed Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   
"The whole IBucket interface has very clean definitions using interfaces
where appropriate. Upsert operation seems to stand out of the line there
with defining Dictionary input parameter instead of IDictionary. This
seemed as an oversight."

From PR: http://review.couchbase.org/#/c/42375/




[NCBC-698] Add BucketType property to IBucket Created: 22/Oct/14  Updated: 04/Nov/14  Resolved: 22/Oct/14

Status: Resolved
Project: Couchbase .NET client library
Component/s: library
Affects Version/s: 2.0 Beta
Fix Version/s: None

Type: Improvement Priority: Major
Reporter: Jeff Morris Assignee: Jeff Morris
Resolution: Fixed Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   
"User code should be able to distinguish Memcached and Couchbase buckets
without relying on SDK implementation details (calling `bucket.GetType()
== typeof(CouchbaseBucket)`)"

From pull request: http://review.couchbase.org/#/c/42374/




[NCBC-697] When EnableConfigHeartbeat is true a NRE is raised (and caught) Created: 22/Oct/14  Updated: 04/Nov/14  Resolved: 22/Oct/14

Status: Resolved
Project: Couchbase .NET client library
Component/s: library
Affects Version/s: 2.0 Beta
Fix Version/s: None

Type: Bug Priority: Minor
Reporter: Jeff Morris Assignee: Jeff Morris
Resolution: Fixed Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   
2014-10-22 16:51:27,072 [20] ERROR Couchbase.Configuration.Server.Providers.ConfigProviderBase - System.NullReferenceException: Object reference not set to an instance of an object.
   at Couchbase.Configuration.Server.Providers.CarrierPublication.CarrierPublicationProvider.UpdateConfig(IBucketConfig bucketConfig, Boolean force) in c:\jenkins\workspace-net2\couchbase-net-client\Src\Couchbase\Configuration\Server\Providers\CarrierPublication\CarrierPublicationProvider.cs:line 149
   at Couchbase.Configuration.Server.Providers.CarrierPublication.CarrierPublicationProvider._heartBeat_Elapsed(Object sender, ElapsedEventArgs args) in c:\jenkins\workspace-net2\couchbase-net-client\Src\Couchbase\Configuration\Server\Providers\CarrierPublication\CarrierPublicationProvider.cs:line 51

 Comments   
Comment by Jeff Morris [ 22/Oct/14 ]
http://review.couchbase.org/42377




[NCBC-696] Use TLS by default in the .NET client in the secure connection to server - Poodle attack Created: 22/Oct/14  Updated: 04/Nov/14  Resolved: 23/Oct/14

Status: Resolved
Project: Couchbase .NET client library
Component/s: library
Affects Version/s: 2.0 Beta
Fix Version/s: None

Type: Bug Priority: Blocker
Reporter: Don Pinto Assignee: Jeff Morris
Resolution: Fixed Votes: 0
Labels: security
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   
Security protocol should not use SSL V3 to prevent from the poodle attack -
ServicePointManager.SecurityProtocol = SecurityProtocolType.Ssl3;

 Comments   
Comment by Jeff Morris [ 23/Oct/14 ]
The ServicePointManager.SecurityProtocol is set to SecurityProtocol.Tls | SecurityProtocol.Ssl3 by default. I removed the explicit setting of this value in the client of SecurityProtocolType.Ssl3, so that the default will be used. The user of the client should set this to use the security protocol that they would like to use; they are advised not use Ssl3 due to the "Poodle Attack" exploit.

Note that certain hosting servers/environments may not support TLS, which is why the control of this property should be given to the hosting application.
Comment by Jeff Morris [ 23/Oct/14 ]
http://review.couchbase.org/#/c/42395/




[NCBC-695] Use TLS instead of Ssl3 Created: 21/Oct/14  Updated: 22/Oct/14  Resolved: 22/Oct/14

Status: Resolved
Project: Couchbase .NET client library
Component/s: library
Affects Version/s: 2.0 Beta
Fix Version/s: 2.0.1

Type: Bug Priority: Major
Reporter: Jeff Morris Assignee: Jeff Morris
Resolution: Duplicate Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Comments   
Comment by Jeff Morris [ 22/Oct/14 ]
http://www.couchbase.com/issues/browse/NCBC-696




[NCBC-694] When custom ports are used CCCP still uses the default 11210 Created: 21/Oct/14  Updated: 26/Nov/14

Status: Open
Project: Couchbase .NET client library
Component/s: library
Affects Version/s: 2.0 Beta
Fix Version/s: 2.0.1

Type: Bug Priority: Major
Reporter: Jeff Morris Assignee: Jeff Morris
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   
If custom ports are specified for the cluster, the client will attempt to use the default port 11210 and the CCCP provider will fail. After it fails the HttpStreaming provider will try again and succeed.

-------------------------------------------------------------------------------------------------------------------------------------------

2014-10-21 18:49:38,633 [4] DEBUG Couchbase.Core.ClusterController - Trying to boostrap with Couchbase.Configuration.Server.Providers.CarrierPublication.CarrierPublicationProvider.
2014-10-21 18:49:38,641 [4] DEBUG Couchbase.Configuration.Server.Providers.ConfigProviderBase - Getting config for bucket default
2014-10-21 18:49:38,650 [4] DEBUG Couchbase.Core.ClusterController - Creating DefaultIOStrategy
2014-10-21 18:49:38,650 [4] DEBUG Couchbase.IO.Strategies.DefaultIOStrategy - Creating DefaultIOStrategy 4dbb4098-e061-44d3-bf87-f1ad3fba091c
2014-10-21 18:49:39,792 [4] WARN Couchbase.Configuration.Server.Providers.ConfigProviderBase - System.Net.Sockets.SocketException (0x80004005): No connection could be made because the target machine actively refused it 192.168.1.3:11210
   at System.Net.Sockets.Socket.DoConnect(EndPoint endPointSnapshot, SocketAddress socketAddress)
   at System.Net.Sockets.Socket.Connect(EndPoint remoteEP)
   at Couchbase.IO.DefaultConnectionFactory.<GetGeneric>b__2[T](IConnectionPool`1 p, IByteConverter c) in c:\jenkins\workspace-net2\couchbase-net-client\Src\Couchbase\IO\DefaultConnectionFactory.cs:line 48
   at Couchbase.IO.ConnectionPool`1.Acquire() in c:\jenkins\workspace-net2\couchbase-net-client\Src\Couchbase\IO\ConnectionPool.cs:line 124
   at Couchbase.IO.ConnectionPool`1.Couchbase.IO.IConnectionPool.Acquire() in c:\jenkins\workspace-net2\couchbase-net-client\Src\Couchbase\IO\ConnectionPool.cs:line 200
   at Couchbase.Authentication.SASL.SaslFactory.<GetFactory3>b__0(String username, String password, IOStrategy strategy, IByteConverter converter) in c:\jenkins\workspace-net2\couchbase-net-client\Src\Couchbase\Authentication\SASL\SaslFactory.cs:line 21
   at Couchbase.Configuration.Server.Providers.CarrierPublication.CarrierPublicationProvider.GetConfig(String bucketName, String password) in c:\jenkins\workspace-net2\couchbase-net-client\Src\Couchbase\Configuration\Server\Providers\CarrierPublication\CarrierPublicationProvider.cs:line 75
2014-10-21 18:49:39,797 [4] WARN Couchbase.Core.ClusterController - System.AggregateException: One or more errors occurred.
   at Couchbase.Configuration.Server.Providers.CarrierPublication.CarrierPublicationProvider.GetConfig(String bucketName, String password) in c:\jenkins\workspace-net2\couchbase-net-client\Src\Couchbase\Configuration\Server\Providers\CarrierPublication\CarrierPublicationProvider.cs:line 130
   at Couchbase.Core.ClusterController.CreateBucket(String bucketName, String password) in c:\jenkins\workspace-net2\couchbase-net-client\Src\Couchbase\Core\ClusterController.cs:line 156

...

2014-10-21 18:49:39,797 [4] DEBUG Couchbase.Core.ClusterController - Trying to boostrap with Couchbase.Configuration.Server.Providers.Streaming.HttpStreamingProvider.

...

2014-10-21 18:49:43,933 [10] INFO Couchbase.Configuration.Server.Providers.Streaming.ConfigThreadState - Listening to http://192.168.1.3:9000/pools/default/bs/default






[NCBC-693] ObjectDisposedException in ConnectionPool.Dispose when run against cluster_run Created: 21/Oct/14  Updated: 05/Nov/14  Resolved: 05/Nov/14

Status: Resolved
Project: Couchbase .NET client library
Component/s: library
Affects Version/s: 2.0 Beta
Fix Version/s: 2.0.0

Type: Bug Priority: Critical
Reporter: Andrei Baranouski Assignee: Jeff Morris
Resolution: Fixed Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Attachments: PNG File 693_real_cluster.png     Zip Archive NCBC-693_new.log.zip     PNG File NCBC-693.png     File test.logs    

 Description   
in this run I use CB cluster_run for nodes, ie client vm is on windows, 4 nodes are CB instances on the same host: 192.168.1.3:9000-192.168.1.3:9003

  [External Code]
> Couchbase.dll!Couchbase.IO.ConnectionPool<Couchbase.IO.Strategies.EapConnection>.Dispose(bool disposing) Line 184 + 0x11 bytes C#
  Couchbase.dll!Couchbase.IO.ConnectionPool<Couchbase.IO.Strategies.EapConnection>.Dispose() Line 169 + 0xe bytes C#
  Couchbase.dll!Couchbase.IO.Strategies.DefaultIOStrategy.Dispose(bool disposing) Line 113 + 0xc bytes C#
  Couchbase.dll!Couchbase.IO.Strategies.DefaultIOStrategy.Finalize() Line 122 + 0xb bytes C#
  [External Code]

in client logs:

2014-10-21 19:05:18,841 [19] INFO Couchbase.IO.ConnectionBase - Sending key SimpleKeyREP3511REP3511REP3511REP3511REP3511 using 50 on 192.168.1.3:12006
2014-10-21 19:05:18,841 [7] WARN Couchbase.Configuration.Server.Providers.ConfigProviderBase - System.Net.Sockets.SocketException (0x80004005): A connection attempt failed because the connected party did not properly respond after a period of time, or established connection failed because connected host has failed to respond 192.168.1.3:11210
   at System.Net.Sockets.Socket.DoConnect(EndPoint endPointSnapshot, SocketAddress socketAddress)
   at System.Net.Sockets.Socket.Connect(EndPoint remoteEP)
   at Couchbase.IO.DefaultConnectionFactory.<GetGeneric>b__2[T](IConnectionPool`1 p, IByteConverter c) in c:\jenkins\workspace-net2\couchbase-net-client\Src\Couchbase\IO\DefaultConnectionFactory.cs:line 48
   at Couchbase.IO.ConnectionPool`1.Acquire() in c:\jenkins\workspace-net2\couchbase-net-client\Src\Couchbase\IO\ConnectionPool.cs:line 124
   at Couchbase.IO.ConnectionPool`1.Couchbase.IO.IConnectionPool.Acquire() in c:\jenkins\workspace-net2\couchbase-net-client\Src\Couchbase\IO\ConnectionPool.cs:line 200
   at Couchbase.Authentication.SASL.SaslFactory.<GetFactory3>b__0(String username, String password, IOStrategy strategy, IByteConverter converter) in c:\jenkins\workspace-net2\couchbase-net-client\Src\Couchbase\Authentication\SASL\SaslFactory.cs:line 21
   at Couchbase.Configuration.Server.Providers.CarrierPublication.CarrierPublicationProvider.GetConfig(String bucketName, String password) in c:\jenkins\workspace-net2\couchbase-net-client\Src\Couchbase\Configuration\Server\Providers\CarrierPublication\CarrierPublicationProvider.cs:line 75


 Comments   
Comment by Jeff Morris [ 21/Oct/14 ]
Andrei -

The socket error in the description is unrelated and expected during a rebalance.

-Jeff
Comment by Andrei Baranouski [ 21/Oct/14 ]
https://s3.amazonaws.com/bugdb/jira/NCBC-693/c4c0d1e9/NCBC-693.zip

hm, but rebalance has not started there
Comment by Jeff Morris [ 21/Oct/14 ]
True, in this case it's bootstrapping and the server rejected the connection: No connection could be made because the target machine actively refused it 192.168.1.3:11210

This will happen if that IP is in your bootstrap list, but the node hasn't joined a cluster or isn't an ept (master) node.

A few lines later, the client switches to HttpStreaming: Bootstrapping from http://192.168.1.3:9000/pools

Using port 9000(?)...is port 11210 the port you are intending to use? Either way this would be a separate issue entirely related to using custom ports.

The ODE that is the title of this ticket happens when the DefaultIOStrategy finalizes (a minor bug) because it's not longer referenced; the _refs collection has already been disposed (it's a ConcurrentBag) via finalization. The two are separate issues.
Comment by Andrei Baranouski [ 21/Oct/14 ]
in cluster_run the port are not default:
for example for the instance http://192.168.1.3:9000/(8091-&gt;9000 here)
memcached port 11210 -> 12000
proxy 11211 -> 12001

http://192.168.1.3:9001/
memcached port 11210 -> 12002
proxy 11211 -> 12003 .....

i'm not sure that there is an issue related to customs ports because some time docs are loaded in cluster without any problems

Comment by Jeff Morris [ 21/Oct/14 ]
Yes, it's a bug with custom ports unrelated to the bug in this ticket; it needs a separate ticket. It works because the client falls back to HttpStreaming and bootstraps from there.

Ticket: https://www.couchbase.com/issues/browse/NCBC-694
Comment by Andrei Baranouski [ 25/Oct/14 ]
I think the ticket should be marked minimum as critical(even blocker) because I'm able to reproduce it with default env when run via command line

[903.95 INFO] (SDKD log:137) +++ Flushing remaining exception trace buffer
[903.96 INFO] (SDKD log:137) at System.Threading.ThreadLocal`1.GetValueSlow()
   at System.Threading.ThreadLocal`1.get_Value()
   at System.Collections.Concurrent.ConcurrentBag`1.GetThreadList(Boolean forceCreate)
   at System.Collections.Concurrent.ConcurrentBag`1.TryTakeOrPeek(T& result, Boolean take)
   at System.Collections.Concurrent.ConcurrentBag`1.TryTake(T& result)
   at Couchbase.IO.ConnectionPool`1.Dispose(Boolean disposing) in c:\jenkins\workspace\.net-sdkdclient-ng2_win2012_64_andrei\couchbase-net-client\Src\Couchbase\IO\ConnectionPool.cs:line 184
   at Couchbase.IO.ConnectionPool`1.Dispose() in c:\jenkins\workspace\.net-sdkdclient-ng2_win2012_64_andrei\couchbase-net-client\Src\Couchbase\IO\ConnectionPool.cs:line 169
   at Couchbase.IO.Strategies.DefaultIOStrategy.Dispose(Boolean disposing) in c:\jenkins\workspace\.net-sdkdclient-ng2_win2012_64_andrei\couchbase-net-client\Src\Couchbase\IO\Strategies\DefaultIOStrat
egy.cs:line 113
   at Couchbase.IO.Strategies.DefaultIOStrategy.Finalize() in c:\jenkins\workspace\.net-sdkdclient-ng2_win2012_64_andrei\couchbase-net-client\Src\Couchbase\IO\Strategies\DefaultIOStrategy.cs:line 122

Comment by Jeff Morris [ 25/Oct/14 ]
Andrei -

This ticket addresses the issue specifically: https://www.couchbase.com/issues/browse/NCBC-694

It's not a blocker because it doesn't impact the default configuration (only when you use custom ports) and the client will fall back to using HttpStreamingProvider and function as expected.

-Jeff
Comment by Andrei Baranouski [ 25/Oct/14 ]
I mean I reproduced it even with default settings/ports
Comment by Jeff Morris [ 25/Oct/14 ]
Andrei -

Do you have a log file for it when using default settings/ports? This is a side affect that the DefaultIOStrategy is finalizing, instead of Dispose being called:

Couchbase.IO.Strategies.DefaultIOStrategy.Finalize() in c:\jenkins\workspace\.net-sdkdclient-ng2_win2012_64_andrei\couchbase-net-client\Src\Couchbase\IO\Strategies\DefaultIOStrategy.cs:line 122

I need a broader set of logs to determine why it's finalizing as opposed to being disposed. It's a legit bug, just not a critical or a blocker.

Thanks,

Jeff
Comment by Andrei Baranouski [ 30/Oct/14 ]
please note that this happens every time during rebalance, and sometimes with a simple loading.
logs attached for case without rebalance
Comment by Jeff Morris [ 05/Nov/14 ]
http://review.couchbase.org/#/c/42863/




[NCBC-692] BasicStats.MemUsed is too small (int32) for the value that is stored in it Created: 21/Oct/14  Updated: 04/Nov/14  Resolved: 22/Oct/14

Status: Resolved
Project: Couchbase .NET client library
Component/s: library
Affects Version/s: 2.0 Beta
Fix Version/s: None

Type: Bug Priority: Major
Reporter: Jeff Morris Assignee: Jeff Morris
Resolution: Fixed Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   
Stacktrace:

AggregateException: Could not bootstrap - check inner exceptions for details.

InnerException: JSON integer 2896300456 is too large or small for an Int32. Path '[0].basicStats.memUsed', line 1, position 9763.

 Comments   
Comment by Jeff Morris [ 22/Oct/14 ]
http://review.couchbase.org/42376




[NCBC-691] Maximum and Default Locking times are misleading Created: 19/Oct/14  Updated: 03/Nov/14  Resolved: 31/Oct/14

Status: Resolved
Project: Couchbase .NET client library
Component/s: docs
Affects Version/s: 1.3.9
Fix Version/s: 1.3.10

Type: Bug Priority: Major
Reporter: Chris Malarky Assignee: Jeff Morris
Resolution: Fixed Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Relates to
relates to DOC-46 Default and Maximum lock time describ... Open

 Description   
The maximum lock in 2.5.1 and 3.0.0 is 30 secs, the default is 15 seconds. Any attempt to set a lock higher than the maximum results in the default being used. The .NET docs need updating to match this behaviour.

 Comments   
Comment by Chris Malarky [ 19/Oct/14 ]
Not sure if 2.0 is affected? Couldn't find a GetWithLock in the docs.
Comment by Jeff Morris [ 19/Oct/14 ]
GetWithLock hasn't been implemented yet it 2.0.
Comment by Jeff Morris [ 31/Oct/14 ]
Small code change since the default lock time was zero seconds. Now it's 15 seconds:
http://review.couchbase.org/#/c/42675/

Document update will be included with 1.3.10 docs.

Before:

"GetWithLock() prevents a key from being updated for either 30 seconds (default) or the value specified as an optional lock expiration."

After:

"`GetWithLock()` prevents a key from being updated for 15 seconds by default or by setting it to a value with a maximum of 30 seconds, which defined by the server."

Let me know how the verbiage suits you :)
Comment by Chris Malarky [ 03/Nov/14 ]
There's not an MB raised yet, but apparently in a future version of Couchbase Server both the default and maximum lock time will be configurable. You might want to leave out that code change as I think that passing 0 still means the default value is used, so it's really just a documentation issue.




[NCBC-690] significant differences in the results on different platforms(win8/2008/2012) Created: 18/Oct/14  Updated: 04/Nov/14  Resolved: 04/Nov/14

Status: Closed
Project: Couchbase .NET client library
Component/s: library
Affects Version/s: 2.0 Beta
Fix Version/s: 2.0 Beta 2

Type: Bug Priority: Blocker
Reporter: Andrei Baranouski Assignee: Jeff Morris
Resolution: Fixed Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

Run all tests on 2 different platforms:

win2008 http://sdkbuilds.couchbase.com/job/.net-sdkdclient-ng2-andrei/151/consoleFull
win2012 http://sdkbuilds.couchbase.com/job/.net-sdkdclient-ng2_win2012_64_andrei/44/consoleFull
win8 http://sdkbuilds.couchbase.com/job/.net-sdkdclient-ng2_win8_64_andrei/17/consoleFull

Rb2OutEpt-HYBRID
#1 win 2008 win 2008
http://sdk-testresults.couchbase.com.s3.amazonaws.com/SDK-SDK/CB-3.0.0-1209/Rb2OutEpt-HYBRID/10-18-14/039627/915d4e48ac032c96c7f4950b52a9f12b-MC.html
http://sdk-testresults.couchbase.com.s3.amazonaws.com/SDK-SDK/CB-3.0.0-1209/Rb2OutEpt-HYBRID/10-18-14/039627/915d4e48ac032c96c7f4950b52a9f12b-CB.html
#2 win 2012
http://sdk-testresults.couchbase.com.s3.amazonaws.com/SDK-SDK/CB-3.0.0-1209/Rb2OutEpt-HYBRID/10-18-14/045117/e57f6854971994954036d3eadcbb9816-MC.html
http://sdk-testresults.couchbase.com.s3.amazonaws.com/SDK-SDK/CB-3.0.0-1209/Rb2OutEpt-HYBRID/10-18-14/045117/e57f6854971994954036d3eadcbb9816-CB.html
#3 win 8
http://sdk-testresults.couchbase.com.s3.amazonaws.com/SDK-SDK/CB-3.0.0-1209/Rb2OutEpt-HYBRID/10-18-14/062193/b25405af18dbe9b92bc69923e438b030-MC.html
http://sdk-testresults.couchbase.com.s3.amazonaws.com/SDK-SDK/CB-3.0.0-1209/Rb2OutEpt-HYBRID/10-18-14/062193/b25405af18dbe9b92bc69923e438b030-CB.html

DIFFERENCES: MEMD:GENERIC errors & Latency issues on win 2012 after rebalance



Rb2In-HYBRID
#1 win 2008
http://sdk-testresults.couchbase.com.s3.amazonaws.com/SDK-SDK/CB-3.0.0-1209/Rb2In-HYBRID/10-18-14/040984/b227a05c68fd1d51ec065896d1e9e469-MC.html
http://sdk-testresults.couchbase.com.s3.amazonaws.com/SDK-SDK/CB-3.0.0-1209/Rb2In-HYBRID/10-18-14/040984/b227a05c68fd1d51ec065896d1e9e469-CB.html
#2 win 2012
http://sdk-testresults.couchbase.com.s3.amazonaws.com/SDK-SDK/CB-3.0.0-1209/Rb2In-HYBRID/10-18-14/047439/888d0e863b54a5d2e011aafd4b846e90-MC.html
http://sdk-testresults.couchbase.com.s3.amazonaws.com/SDK-SDK/CB-3.0.0-1209/Rb2In-HYBRID/10-18-14/047439/888d0e863b54a5d2e011aafd4b846e90-CB.html
#3 win 8
http://sdk-testresults.couchbase.com.s3.amazonaws.com/SDK-SDK/CB-3.0.0-1209/Rb2In-HYBRID/10-18-14/063854/f028c9f4e5611dcf898555f4fa8a2732-MC.html
http://sdk-testresults.couchbase.com.s3.amazonaws.com/SDK-SDK/CB-3.0.0-1209/Rb2In-HYBRID/10-18-14/063854/f028c9f4e5611dcf898555f4fa8a2732-CB.html

DIFFERENCES: hight latency remains during/after rebalance on win2012 & win8( ok on win2008)


FoEptRb-HYBRID
#1 win 2008
http://sdk-testresults.couchbase.com.s3.amazonaws.com/SDK-SDK/CB-3.0.0-1209/FoEptRb-HYBRID/10-18-14/041455/7b08d1d9841e15681bcd3ad74b313e9e-MC.html
http://sdk-testresults.couchbase.com.s3.amazonaws.com/SDK-SDK/CB-3.0.0-1209/FoEptRb-HYBRID/10-18-14/041455/7b08d1d9841e15681bcd3ad74b313e9e-CB.html
#2 win 2012
http://sdk-testresults.couchbase.com.s3.amazonaws.com/SDK-SDK/CB-3.0.0-1209/FoEptRb-HYBRID/10-18-14/048177/65d411ff5f3d6b05f01f45ab2824c6e7-MC.html
http://sdk-testresults.couchbase.com.s3.amazonaws.com/SDK-SDK/CB-3.0.0-1209/FoEptRb-HYBRID/10-18-14/048177/65d411ff5f3d6b05f01f45ab2824c6e7-CB.html
#3 win 8
http://sdk-testresults.couchbase.com.s3.amazonaws.com/SDK-SDK/CB-3.0.0-1209/FoEptRb-HYBRID/10-18-14/064372/a638f92c38ad325f28b2217b31821796-MC.html
http://sdk-testresults.couchbase.com.s3.amazonaws.com/SDK-SDK/CB-3.0.0-1209/FoEptRb-HYBRID/10-18-14/064372/a638f92c38ad325f28b2217b31821796-CB.html

DIFFERENCES:MEMD:GENERIC errors only on win2012


SvcRestart-HYBRID
#1 win 2008
http://sdk-testresults.couchbase.com.s3.amazonaws.com/SDK-SDK/CB-3.0.0-1209/SvcRestart-HYBRID/10-18-14/041737/be7b44ee6715307c78d7cc98c96d3d1f-MC.html
http://sdk-testresults.couchbase.com.s3.amazonaws.com/SDK-SDK/CB-3.0.0-1209/SvcRestart-HYBRID/10-18-14/041737/be7b44ee6715307c78d7cc98c96d3d1f-CB.html
#2 win 2012
http://sdk-testresults.couchbase.com.s3.amazonaws.com/SDK-SDK/CB-3.0.0-1209/SvcRestart-HYBRID/10-18-14/048605/7b5bfaac53a620d6d92918319f1d1645-MC.html
http://sdk-testresults.couchbase.com.s3.amazonaws.com/SDK-SDK/CB-3.0.0-1209/SvcRestart-HYBRID/10-18-14/048605/7b5bfaac53a620d6d92918319f1d1645-CB.html
#3 win 8
http://sdk-testresults.couchbase.com.s3.amazonaws.com/SDK-SDK/CB-3.0.0-1209/SvcRestart-HYBRID/10-18-14/064752/f89c6dd6eb392c288174012f97f919af-MC.html
http://sdk-testresults.couchbase.com.s3.amazonaws.com/SDK-SDK/CB-3.0.0-1209/SvcRestart-HYBRID/10-18-14/064752/f89c6dd6eb392c288174012f97f919af-CB.html

DIFFERENCES:MEMD:GENERIC errors only on win2012

Notes:
I used the same 4 vms for CB clusters(they are from 10.* LN)
clients:
win2008 from 10.*N
win8 & win2012 are from 172.* LN


Jeff, please let me know how I can help find the cause of these differences



 Comments   
Comment by Jeff Morris [ 18/Oct/14 ]
Andrei -

Can you post the client logs for the ones that show mem:generic errors after rebound?

How can performance go up with high latency? Aren't the two inversely related?: http://sdk-testresults.couchbase.com.s3.amazonaws.com/SDK-SDK/CB-3.0.0-1209/Rb2In-HYBRID/10-18-14/063854/f028c9f4e5611dcf898555f4fa8a2732-MC.html

***Next steps: I think we should do two things***:
a) Re-run the tests above and compare the graphs - if the results are the same, it's likely a platform issue. If the results are different, it may be an issue that only randomly appears.
b) Delete and completely rebuild your cluster VM's - then re-run the tests and compare again.

I know it's a lot of work, but we need to get to the bottom of this...I now SDKD running (on Win8.1) I have yet to get any memd:generic errors after rebound. Without something to pivot on, I don't know what to change.

Lastly, If we don't get something to work with by tomorrow, I'll go through and add instrumentation to all the operations and see if we can detect where the latency issues are coming from.

Thanks for the hard work!

-Jeff
Comment by Andrei Baranouski [ 19/Oct/14 ]
iteration#2 with the same build/client version/vms

Rb2OutEpt-HYBRID
#1 win 2008
http://sdk-testresults.couchbase.com.s3.amazonaws.com/SDK-SDK/CB-3.0.0-1209/Rb2OutEpt-HYBRID/10-18-14/018438/d05cbc1d641d6c2223e19a53a6d87bce-MC.html
http://sdk-testresults.couchbase.com.s3.amazonaws.com/SDK-SDK/CB-3.0.0-1209/Rb2OutEpt-HYBRID/10-18-14/018438/d05cbc1d641d6c2223e19a53a6d87bce-CB.html
#2 win 2012
http://sdk-testresults.couchbase.com.s3.amazonaws.com/SDK-SDK/CB-3.0.0-1209/Rb2OutEpt-HYBRID/10-18-14/023642/270466b867b66e280e58ff68f1663019-MC.html
http://sdk-testresults.couchbase.com.s3.amazonaws.com/SDK-SDK/CB-3.0.0-1209/Rb2OutEpt-HYBRID/10-18-14/023642/270466b867b66e280e58ff68f1663019-CB.html
#3 win 8
http://sdk-testresults.couchbase.com.s3.amazonaws.com/SDK-SDK/CB-3.0.0-1209/Rb2OutEpt-HYBRID/10-19-14/036787/6f2065c5f65ce166b1635233dd34b489-MC.html
http://sdk-testresults.couchbase.com.s3.amazonaws.com/SDK-SDK/CB-3.0.0-1209/Rb2OutEpt-HYBRID/10-19-14/036787/6f2065c5f65ce166b1635233dd34b489-CB.html

the issue "DIFFERENCES: MEMD:GENERIC errors & Latency issues on win 2012 after rebalance" was not reproduced but there is a hight latency for win 8 & win2012 after rebalance


Rb2In-HYBRID
#1 win 2008
http://sdk-testresults.couchbase.com.s3.amazonaws.com/SDK-SDK/CB-3.0.0-1209/Rb2In-HYBRID/10-18-14/019794/e7f9a348baefe9732524816e86e88171-MC.html
http://sdk-testresults.couchbase.com.s3.amazonaws.com/SDK-SDK/CB-3.0.0-1209/Rb2In-HYBRID/10-18-14/019794/e7f9a348baefe9732524816e86e88171-CB.html
#2 win 2012
http://sdk-testresults.couchbase.com.s3.amazonaws.com/SDK-SDK/CB-3.0.0-1209/Rb2In-HYBRID/10-19-14/025533/60e7f1161d7bb33c36c93daa42814f83-MC.html
http://sdk-testresults.couchbase.com.s3.amazonaws.com/SDK-SDK/CB-3.0.0-1209/Rb2In-HYBRID/10-19-14/025533/60e7f1161d7bb33c36c93daa42814f83-CB.html
#3 win 8
http://sdk-testresults.couchbase.com.s3.amazonaws.com/SDK-SDK/CB-3.0.0-1209/Rb2In-HYBRID/10-19-14/038677/af16ad8c2b3e3630954311f1da34ff01-MC.html
http://sdk-testresults.couchbase.com.s3.amazonaws.com/SDK-SDK/CB-3.0.0-1209/Rb2In-HYBRID/10-19-14/038677/af16ad8c2b3e3630954311f1da34ff01-CB.html


"DIFFERENCES: hight latency remains during/after rebalance on win2012 & win8( ok on win2008) " reproduced + MEMD:GENERIC on win2012 & win8


FoEptRb-HYBRID
#1 win 2008
http://sdk-testresults.couchbase.com.s3.amazonaws.com/SDK-SDK/CB-3.0.0-1209/FoEptRb-HYBRID/10-18-14/020235/8cd558018fa14bd08d5fca6313ab341f-MC.html
http://sdk-testresults.couchbase.com.s3.amazonaws.com/SDK-SDK/CB-3.0.0-1209/FoEptRb-HYBRID/10-18-14/020235/8cd558018fa14bd08d5fca6313ab341f-CB.html
#2 win 2012
http://sdk-testresults.couchbase.com.s3.amazonaws.com/SDK-SDK/CB-3.0.0-1209/FoEptRb-HYBRID/10-19-14/026173/bb69f8998a9c59f86a8bf20a367666c1-MC.html
http://sdk-testresults.couchbase.com.s3.amazonaws.com/SDK-SDK/CB-3.0.0-1209/FoEptRb-HYBRID/10-19-14/026173/bb69f8998a9c59f86a8bf20a367666c1-CB.html
#3 win 8
http://sdk-testresults.couchbase.com.s3.amazonaws.com/SDK-SDK/CB-3.0.0-1209/FoEptRb-HYBRID/10-19-14/039183/16906b487388a5236926fa182e9da017-MC.html
http://sdk-testresults.couchbase.com.s3.amazonaws.com/SDK-SDK/CB-3.0.0-1209/FoEptRb-HYBRID/10-19-14/039183/16906b487388a5236926fa182e9da017-CB.html

"DIFFERENCES:MEMD:GENERIC errors only on win2012" + the same on win8

SvcRestart-HYBRID
#1 win 2008
http://sdk-testresults.couchbase.com.s3.amazonaws.com/SDK-SDK/CB-3.0.0-1209/SvcRestart-HYBRID/10-18-14/020528/576f895f54327a9451c0045caa9a9116-MC.html
http://sdk-testresults.couchbase.com.s3.amazonaws.com/SDK-SDK/CB-3.0.0-1209/SvcRestart-HYBRID/10-18-14/020528/576f895f54327a9451c0045caa9a9116-CB.html
#2 win 2012
http://sdk-testresults.couchbase.com.s3.amazonaws.com/SDK-SDK/CB-3.0.0-1209/SvcRestart-HYBRID/10-19-14/026587/5c4322795342272796b616a17af713a7-MC.html
http://sdk-testresults.couchbase.com.s3.amazonaws.com/SDK-SDK/CB-3.0.0-1209/SvcRestart-HYBRID/10-19-14/026587/5c4322795342272796b616a17af713a7-CB.html
#3 win 8
http://sdk-testresults.couchbase.com.s3.amazonaws.com/SDK-SDK/CB-3.0.0-1209/SvcRestart-HYBRID/10-19-14/039559/61814c19baa8cb8ac760f1df34af1dd8-MC.html
http://sdk-testresults.couchbase.com.s3.amazonaws.com/SDK-SDK/CB-3.0.0-1209/SvcRestart-HYBRID/10-19-14/039559/61814c19baa8cb8ac760f1df34af1dd8-CB.html


Not reproduced "DIFFERENCES:MEMD:GENERIC errors only on win2012" but there is issue with hight latency on win8



Another discrepancy in new test for this run

FoEptEject-HYBRID
#1 win 2008
http://sdk-testresults.couchbase.com.s3.amazonaws.com/SDK-SDK/CB-3.0.0-1209/FoEptEject-HYBRID/10-18-14/021157/96f3b923f2c650e3ac83658797af1d88-MC.html
http://sdk-testresults.couchbase.com.s3.amazonaws.com/SDK-SDK/CB-3.0.0-1209/FoEptEject-HYBRID/10-18-14/021157/96f3b923f2c650e3ac83658797af1d88-CB.html
#2 win 2012
http://sdk-testresults.couchbase.com.s3.amazonaws.com/SDK-SDK/CB-3.0.0-1209/FoEptEject-HYBRID/10-19-14/027413/13f3a2a92cbf002b1114a6269b17d2bf-MC.html
http://sdk-testresults.couchbase.com.s3.amazonaws.com/SDK-SDK/CB-3.0.0-1209/FoEptEject-HYBRID/10-19-14/027413/13f3a2a92cbf002b1114a6269b17d2bf-CB.html
#3 win 8
http://sdk-testresults.couchbase.com.s3.amazonaws.com/SDK-SDK/CB-3.0.0-1209/FoEptEject-HYBRID/10-19-14/040390/e60084e33c095d2c5422a0a203cbecc6-MC.html
http://sdk-testresults.couchbase.com.s3.amazonaws.com/SDK-SDK/CB-3.0.0-1209/FoEptEject-HYBRID/10-19-14/040390/e60084e33c095d2c5422a0a203cbecc6-CB.html

MEMD:GENERIC only in 2012

@Jeff:
"How can performance go up with high latency?"
@Andrei
may be some part of the query is very slow, even though all the rest are just as fast or even faster then before
Comment by Jeff Morris [ 19/Oct/14 ]
>>may be some part of the query is very slow, even though all the rest are just as fast or even faster then before

It could be that the memd:generic are view timeouts (I only give 5secs for a View request), which would account for the higher latency while memcached ops increase.

@Andrei - have you tried rebuilding the VM's?

I think at this point the next steps are to:
1) Add performance logging to the client for Views and Memcached - this will show time between request sent and received.
2) Add more granular logging for memd:generic in SDKD. Mark Nunberg pointed this out and started the implementation during our meeting on Thurs. Remember? Andrei, can you continue this?
3) On the tests showing higher latency & memd:generic, I need the client logs for those specific tests. I can ascertain the type of memd:generic from the log entries.

Once again, _thank you_ very much for your time and effort. I think we are really close here, let's make a final push and get this client released!

-Jeff
Comment by Andrei Baranouski [ 20/Oct/14 ]
will do 1) & 2)

logs for FoEptRb with MEMD:GENERIC error
https://s3.amazonaws.com/bugdb/jira/NCBC-690/da9555cb/NCBC-690_FoEptRb.zip
http://sdk-testresults.couchbase.com.s3.amazonaws.com/SDK-SDK/CB-3.0.0-1209/FoEptRb-HYBRID/10-19-14/019202/51ff8414172ae3787fdcfcdd6683a27f-MC.html
http://sdkbuilds.couchbase.com/job/.net-sdkdclient-ng2_win2012_64_andrei/47/consoleFull
Comment by Jeff Morris [ 20/Oct/14 ]
The memd:generic surprisingly are View request 404's?!:

2014-10-19 22:24:59,171 [9] ERROR Couchbase.Views.ViewClient - System.Net.WebException: The remote server returned an error: (404) Not Found.
   at System.Net.HttpWebRequest.GetResponse()
   at Couchbase.Views.ViewClient.Execute[T](IViewQuery query) in c:\jenkins\workspace\.net-sdkdclient-ng2_win2012_64_andrei\couchbase-net-client\Src\Couchbase\Views\ViewClient.cs:line 91

Here are the Urls being used during the period of time the errors are occurring:

http://10.3.121.136:8092/default/_design/test_design/_view/test_view?
http://10.3.121.135:8092/default/_design/test_design/_view/test_view?
http://10.3.121.134:8092/default/_design/test_design/_view/test_view?
http://10.3.3.206:8092/default/_design/test_design/_view/test_view?

@Andrie - can you ping these and see if they are valid and/or accessible?

I'll add more logging to capture the url's which are specifically failing.

-Jeff
Comment by Jeff Morris [ 20/Oct/14 ]
Andrei -

I added additional logging: http://review.couchbase.org/#/c/42302/

Can you re-run the tests and get me the logs?

Thanks,

Jeff
Comment by Andrei Baranouski [ 21/Oct/14 ]
Hi Jeff,

a) view urls are correct
b) I run FoEptRb test with your commit couple times with slight change

 public void Dispose()
        {
            var totalMilliseconds = m_sw.Elapsed.TotalMilliseconds;
            if (totalMilliseconds > 100)
            {
                Log.Debug(m => m("{0,7:N0} (GCs={1,3}) {2}",
                m_sw.Elapsed.TotalMilliseconds,
                GC.CollectionCount(0) - m_collectionCount, m_text));
            }
            Interlocked.Decrement(ref s_NumOperationTimersStarted);
            m_sw = null;
        }

from time to time I see god results, for example http://sdk-testresults.couchbase.com.s3.amazonaws.com/SDK-SDK/CB-3.0.0-1209/FoEptRb-HYBRID/10-21-14/028883/e1adbe850e5a1693b956ed4c4be67fd4-MC.html
(http://sdkbuilds.couchbase.com/job/.net-sdkdclient-ng2_win2012_64_andrei/48/console)

but more often I see picture like http://sdk-testresults.couchbase.com.s3.amazonaws.com/SDK-SDK/CB-3.0.0-1209/FoEptRb-HYBRID/10-21-14/031911/c102a2ed3a5c89e52f82ca4e1661853f-MC.html
(http://sdkbuilds.couchbase.com/job/.net-sdkdclient-ng2_win2012_64_andrei/52/console)

2014-10-21 01:54:23,398 [15] DEBUG Wintellect.OperationTimer2 - 2,501 (GCs= 1) Sending SimpleKeyREP4937REP4937REP4937REP4937REP4937 using server 10.3.121.134:11210
2014-10-21 01:54:28,143 [15] DEBUG Wintellect.OperationTimer2 - 2,500 (GCs= 0) Sending SimpleKeyREP5022REP5022REP5022REP5022REP5022 using server 10.3.121.135:11210
2014-10-21 01:56:42,591 [8] DEBUG Wintellect.OperationTimer2 - 3,071 (GCs= 2) Sending SimpleKeyREP1REP1REP1REP1REP1REP1REP1REP1 using server 10.3.121.135:11210
2014-10-21 01:57:01,451 [38] DEBUG Wintellect.OperationTimer2 - 3,066 (GCs= 9) Sending SimpleKeyREP14REP14REP14REP14REP14REP14REP14 using server 10.3.121.136:11210
2014-10-21 01:57:05,815 [42] DEBUG Wintellect.OperationTimer2 - 3,064 (GCs= 9) Sending SimpleKeyREP1REP1REP1REP1REP1REP1REP1REP1 using server 10.3.121.135:11210

2014-10-21 01:59:49,748 [46] ERROR Couchbase.Views.ViewClient - View request error: http://10.3.121.134:8092/default/_design/test_design/_view/test_view? System.Net.WebException: The remote server returned an error: (404) Not Found.
   at System.Net.HttpWebRequest.GetResponse()
   at Couchbase.Views.ViewClient.Execute[T](IViewQuery query) in c:\jenkins\workspace\.net-sdkdclient-ng2_win2012_64_andrei\couchbase-net-client\Src\Couchbase\Views\ViewClient.cs:line 92
2014-10-21 01:59:49,749 [46] DEBUG Wintellect.OperationTimer2 - 4,509 (GCs= 0) Sending View Request: http://10.3.121.134:8092/default/_design/test_design/_view/test_view?

2014-10-21 01:58:16,676 [20] ERROR Couchbase.Views.ViewClient - View request error: http://10.3.3.206:8092/default/_design/test_design/_view/test_view? System.Net.WebException: The operation has timed out
   at System.Net.HttpWebRequest.GetResponse()
   at Couchbase.Views.ViewClient.Execute[T](IViewQuery query) in c:\jenkins\workspace\.net-sdkdclient-ng2_win2012_64_andrei\couchbase-net-client\Src\Couchbase\Views\ViewClient.cs:line 92
2014-10-21 01:58:16,677 [20] DEBUG Wintellect.OperationTimer2 - 5,013 (GCs= 24) Sending View Request: http://10.3.3.206:8092/default/_design/test_design/_view/test_view?




and logs related MEMD:GENERIC

2014-10-21 02:00:51,355 [50] WARN Couchbase.IO.ConnectionBase - Opcode=Get | Key=SimpleKeyREP7586REP7586REP7586REP7586REP7586 | Host=10.3.3.206:11210
System.ObjectDisposedException: Cannot access a disposed object.
Object name: 'System.Net.Sockets.NetworkStream'.
   at System.Net.Sockets.NetworkStream.EndRead(IAsyncResult asyncResult)
   at Couchbase.IO.Strategies.EapConnection.ReceiveCallback(IAsyncResult asyncResult) in c:\jenkins\workspace\.net-sdkdclient-ng2_win2012_64_andrei\couchbase-net-client\Src\Couchbase\IO\Strategies\EapConnection.cs:line 74
2014-10-21 02:00:51,355 [34] DEBUG Couchbase.CouchbaseBucket - Attempting dispose on thread 34
2014-10-21 02:00:51,355 [35] DEBUG Couchbase.CouchbaseBucket - Current bucket refCount# 1
2014-10-21 02:00:51,355 [35] DEBUG Couchbase.CouchbaseBucket - Removing bucket refCount# 0
2014-10-21 02:00:51,355 [35] DEBUG Couchbase.CouchbaseBucket - Disposing on thread 35
2014-10-21 02:00:51,355 [35] INFO Couchbase.Configuration.Server.Providers.ConfigProviderBase - Unregistering observer default
2014-10-21 02:00:51,355 [35] DEBUG Couchbase.Configuration.ConfigContextBase - Disposing ConfigContext
2014-10-21 02:00:51,355 [35] DEBUG Couchbase.Core.Server - Disposing Server for 10.3.121.135:11210
2014-10-21 02:00:51,355 [35] DEBUG Couchbase.IO.Strategies.DefaultIOStrategy - Disposing DefaultIOStrategy for 10.3.121.135:11210 - d7621b82-d708-46cf-b927-20c8ac9739ff
2014-10-21 02:00:51,355 [35] DEBUG Couchbase.IO.ConnectionPool`1 - Disposing ConnectionPool for 10.3.121.135:11210 - 094a36ef-7a54-44b1-98db-dea4d0fd0bb1
2014-10-21 02:00:51,355 [35] DEBUG Couchbase.IO.ConnectionBase - Disposing connection for 10.3.121.135:11210 - 93e6cfe9-7bd4-457a-89af-9e27bdb41e55
2014-10-21 02:00:51,355 [35] DEBUG Couchbase.IO.ConnectionBase - Disposing connection for 10.3.121.135:11210 - a73ae923-7901-4866-b4a5-5888f7ee31d0
2014-10-21 02:00:51,355 [35] DEBUG Couchbase.Core.Server - Disposing Server for 10.3.121.136:11210
2014-10-21 02:00:51,355 [50] WARN Couchbase.IO.ConnectionBase - Opcode=Get | Key=SimpleKeyREP7635REP7635REP7635REP7635REP7635 | Host=10.3.121.135:11210
System.ObjectDisposedException: Cannot access a disposed object.
Object name: 'System.Net.Sockets.NetworkStream'.
   at System.Net.Sockets.NetworkStream.EndRead(IAsyncResult asyncResult)
   at Couchbase.IO.Strategies.EapConnection.ReceiveCallback(IAsyncResult asyncResult) in c:\jenkins\workspace\.net-sdkdclient-ng2_win2012_64_andrei\couchbase-net-client\Src\Couchbase\IO\Strategies\EapConnection.cs:line 74
2014-10-21 02:00:51,355 [35] DEBUG Couchbase.IO.Strategies.DefaultIOStrategy - Disposing DefaultIOStrategy for 10.3.121.136:11210 - 7087d96d-25d8-4632-b22c-8a6fe2012cd6
2014-10-21 02:00:51,355 [35] DEBUG Couchbase.IO.ConnectionPool`1 - Disposing ConnectionPool for 10.3.121.136:11210 - fef725a0-c59b-462e-994c-0485825ed819
2014-10-21 02:00:51,355 [35] DEBUG Couchbase.IO.ConnectionBase - Disposing connection for 10.3.121.136:11210 - 4c82055d-688c-45db-8826-9cb48f0cbc0d
2014-10-21 02:00:51,356 [18] WARN Couchbase.IO.ConnectionBase - Opcode=Get | Key=SimpleKeyREP7637REP7637REP7637REP7637REP7637 | Host=10.3.121.135:11210
System.ObjectDisposedException: Cannot access a disposed object.
Object name: 'System.Net.Sockets.NetworkStream'.
   at System.Net.Sockets.NetworkStream.EndRead(IAsyncResult asyncResult)
   at Couchbase.IO.Strategies.EapConnection.ReceiveCallback(IAsyncResult asyncResult) in c:\jenkins\workspace\.net-sdkdclient-ng2_win2012_64_andrei\couchbase-net-client\Src\Couchbase\IO\Strategies\EapConnection.cs:line 74

https://s3.amazonaws.com/bugdb/jira/NCBC-690/3db957f3/NCBC-690_timings.zip
Comment by Jeff Morris [ 22/Oct/14 ]
At long last I have finally figured out the stale config/404 issue on views. The SDKD tests (even when Hybrid) create separate client instances. When the client instance is a View only workload and it's using CCCP for configuration, a fresh config is not sent to the client. The work-around is to enable the config heartbeat: ClientConfiguration.EnableConfigHeartBeat = true.

A more elegant solution should be a long-term goal.
Comment by Jeff Morris [ 22/Oct/14 ]
The work-around for this issue is to set EnableConfigHeartbeat to true on any all View work flows or when a client is dedicated to views and has bootstrapped with CCCP.

Patch/fix/feature is here: https://github.com/couchbase/couchbase-net-client/commit/ffed119f35d78eabeb343a69dd7e5683d4d2ad3d

Originally I asked Andrei to disable this so we could isolate some issues, which we did, but we never re-enabled it. Setting it back to it's default (true) resolves 404 issues caused the client hanging on to stale configurations, because the server has no means of pushing a config through CCCP if all operations are View requests.
Comment by Jeff Morris [ 04/Nov/14 ]
Re-opening so I can set the fix version to Beta2
Comment by Jeff Morris [ 04/Nov/14 ]
Closing




[NCBC-689] Disable ServicePointManager.Expect100Continue by setting to false Created: 16/Oct/14  Updated: 04/Nov/14  Resolved: 16/Oct/14

Status: Resolved
Project: Couchbase .NET client library
Component/s: library
Affects Version/s: 2.0 Beta
Fix Version/s: None

Type: Improvement Priority: Major
Reporter: Jeff Morris Assignee: Jeff Morris
Resolution: Fixed Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   
Overrides the default service manager behavior by disabling 100-continue headers being sent by the HttpClient and WebClient; which may incur a small performance hit.

 Comments   
Comment by Jeff Morris [ 16/Oct/14 ]
http://review.couchbase.org/#/c/42229/




[NCBC-688] Intermittent deadlock during perf test Created: 16/Oct/14  Updated: 16/Oct/14  Resolved: 16/Oct/14

Status: Closed
Project: Couchbase .NET client library
Component/s: None
Affects Version/s: None
Fix Version/s: None

Type: Bug Priority: Test Blocker
Reporter: Li Yang Assignee: Jeff Morris
Resolution: Won't Fix Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment: Running .NET iOS perf test on Xamarin studio.

Attachments: File deadlock.tiff    

 Description   
This problem happens from time to time, usually in the heavy load testing that the system would freeze without any error or exception.

Pasin did a screen captured (see attached file) that shows the stack trace. At time of error, the test case running is Test03CreateDocsWithAttachments, iteration #16, creation of 10000 documents, each with 500 Bytes size.

 Comments   
Comment by Jeff Morris [ 16/Oct/14 ]
Li -

I think this for the Couchbase Lite/mobile project? The Couchbase .NET client library is the desktop/server library.

-Jeff
Comment by Matt Ingenthron [ 16/Oct/14 ]
The Couchbase Lite .NET issue tracker is here: https://github.com/couchbase/couchbase-lite-net/issues
Comment by Li Yang [ 16/Oct/14 ]
Sorry, opened it at the wrong place. The bug is moved to https://github.com/couchbase/couchbase-lite-net/issues/335




[NCBC-687] hello couchbase app missing instruction to add using Couchbase; Created: 16/Oct/14  Updated: 16/Oct/14  Resolved: 16/Oct/14

Status: Resolved
Project: Couchbase .NET client library
Component/s: None
Affects Version/s: None
Fix Version/s: None

Type: Task Priority: Major
Reporter: Cihan Biyikoglu Assignee: Jeff Morris
Resolution: Fixed Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   
http://docs.couchbase.com/developer/dotnet-2.0/hello-couchbase.html
after nuget - you still need to add using Couchbase; at the top for CouchbaseCluster() to resolve.


 Comments   
Comment by Jeff Morris [ 16/Oct/14 ]
This will be updated in the SDK 2.0 GA release.




[NCBC-686] Use POST when requesting a View if the URI exceeds the maximum character length Created: 15/Oct/14  Updated: 31/Oct/14

Status: Open
Project: Couchbase .NET client library
Component/s: library
Affects Version/s: 1.3.9
Fix Version/s: backlog-1.0

Type: Bug Priority: Major
Reporter: Jeff Morris Assignee: Jeff Morris
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   
From https://forums.couchbase.com/t/getview-need-http-post-instead-of-http-get/1743:

When executing a call extremely similar to the one below I receive the error "Invalid URI: The Uri string is too long".

Code snippet:

CouchbaseClient client;
client.GetView<SomeDataModel>("DesignName", "ViewName", true)
            .Stale(StaleMode.False)
            .Reduce(true)
            .StartKey<object[]>(["someString", 0, "", "", "", 0, ""])
            .EndKey<object[]>(["someString", 9999, "zzzzzzzzzzzzzzzzzzzz", "zzzzzzzzzzzzzzzzzzzz", "zzzzzzzzzzzzzzzzzzzz", 999999999, "zzzzzzzzzzzzzzzzzzzz"]);

If I remove the Start Key and End Key limiters the view will successfully return so I presume that an HTTP GET is being performed and the length of the keys are causing the issue. I used 20 "z"s to represent how long the data could be. For a literal end when there isn't a value specified of course "{" would work, but when values are specified for the strings could be 20 characters long, or possibly even longer.




[NCBC-685] tests stuck when reb out with spamming 'No connections currently available on...' in the logs Created: 14/Oct/14  Updated: 04/Nov/14  Resolved: 04/Nov/14

Status: Closed
Project: Couchbase .NET client library
Component/s: library
Affects Version/s: 2.0 Beta
Fix Version/s: 2.0 Beta 2

Type: Bug Priority: Test Blocker
Reporter: Andrei Baranouski Assignee: Jeff Morris
Resolution: Fixed Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Attachments: PNG File NCBC-685.png     Zip Archive Rb2In-HYBRID.zip     Zip Archive Rb2OutEpt-HYBRID.zip     Zip Archive Rb2Out-HYBRID.zip    

 Description   
run with https://github.com/couchbase/couchbase-net-client/commit/1bb5cc0c2f64a93d28cbc5fe057d83b24d98c0bb commit

http://sdkbuilds.couchbase.com/job/.net-sdkdclient-ng2-andrei/148/console

Running Rb2OutEpt-HYBRID: 2014-10-14 08:44:58
    rebalance/mode=out
    workload=HybridWorkloadGroup
    rebalance/ept=true
    rebalance/count=2
    testcase=RebalanceScenario
    Logging to c:\jenkins\workspace\.net-sdkdclient-ng2-andrei\sdkdclient-ng\log\SDK-SDK\CB-3.0.0-1209\Rb2OutEpt-HYBRID\10-14-14\056698\448ba4c89ea8854d954e1f2b048073d0

seems like the problem is with view queries that are requested on rebalanced out nodes.



2014-10-14 08:51:34,608 [59] ERROR Couchbase.Views.ViewClient - System.Net.WebException: The remote server returned an error: (404) Not Found.
   at System.Net.HttpWebRequest.GetResponse()
   at Couchbase.Views.ViewClient.Execute[T](IViewQuery query) in c:\jenkins\workspace\.net-sdkdclient-ng2-andrei\couchbase-net-client\Src\Couchbase\Views\ViewClient.cs:line 91
2014-10-14 08:51:34,766 [8] DEBUG Couchbase.Core.Buckets.CouchbaseBucket - Current bucket refCount# 1
2014-10-14 08:51:34,766 [8] DEBUG Couchbase.Core.Buckets.CouchbaseBucket - Removing bucket refCount# 0
2014-10-14 08:51:34,766 [8] DEBUG Couchbase.Core.Buckets.CouchbaseBucket - Disposing on thread 8
2014-10-14 08:51:34,766 [8] INFO Couchbase.Configuration.Server.Providers.ConfigProviderBase - Unregistering observer default
2014-10-14 08:51:34,766 [8] DEBUG Couchbase.Configuration.ConfigContextBase - Disposing ConfigContext
2014-10-14 08:51:34,766 [8] DEBUG Couchbase.Core.Server - Disposing Server for 10.3.121.134:11210
2014-10-14 08:51:34,767 [8] DEBUG Couchbase.IO.Strategies.DefaultIOStrategy - Disposing DefaultIOStrategy for 10.3.121.134:11210 - e0956315-f52e-4159-bcff-655aee01b6a9
2014-10-14 08:51:34,767 [8] DEBUG Couchbase.IO.ConnectionPool`1 - Disposing ConnectionPool for 10.3.121.134:11210 - b5b71f8b-b6d2-4d4e-bf47-cde9f7d595c6
2014-10-14 08:51:34,767 [8] DEBUG Couchbase.IO.ConnectionBase - Disposing connection for 10.3.121.134:11210 - e8fd62a2-ac1c-43a5-acf1-0cb158d46a9c
2014-10-14 08:51:34,768 [8] DEBUG Couchbase.IO.ConnectionBase - Disposing connection for 10.3.121.134:11210 - a153baaf-e71a-4fad-acb1-b36535c0f681
2014-10-14 08:51:34,768 [8] DEBUG Couchbase.Core.Server - Disposing Server for 10.3.121.135:11210
2014-10-14 08:51:34,769 [8] DEBUG Couchbase.IO.Strategies.DefaultIOStrategy - Disposing DefaultIOStrategy for 10.3.121.135:11210 - a24c2990-62e7-4304-865f-94211fc1747d
2014-10-14 08:51:34,769 [8] DEBUG Couchbase.IO.ConnectionPool`1 - Disposing ConnectionPool for 10.3.121.135:11210 - c6c9c860-5364-47e1-9c56-e9737b8983a1
2014-10-14 08:51:34,769 [8] DEBUG Couchbase.IO.ConnectionBase - Disposing connection for 10.3.121.135:11210 - 3775fcd4-bb20-4d50-bebc-2afc9bccf9c1
2014-10-14 08:51:34,769 [8] DEBUG Couchbase.Core.Server - Disposing Server for 10.3.121.136:11210
2014-10-14 08:51:34,769 [8] DEBUG Couchbase.IO.Strategies.DefaultIOStrategy - Disposing DefaultIOStrategy for 10.3.121.136:11210 - 5edbbede-df88-4d29-8cb8-4e3fd31a642d
2014-10-14 08:51:34,769 [8] DEBUG Couchbase.IO.ConnectionPool`1 - Disposing ConnectionPool for 10.3.121.136:11210 - b19a1773-2c38-4f1e-b5c6-5c1782bdf4af
2014-10-14 08:51:34,769 [8] DEBUG Couchbase.IO.ConnectionBase - Disposing connection for 10.3.121.136:11210 - 19f5edee-12bc-4d43-933d-7c476e034aed
2014-10-14 08:51:34,770 [8] DEBUG Couchbase.Core.Server - Disposing Server for 10.3.3.206:11210
2014-10-14 08:51:34,770 [8] DEBUG Couchbase.IO.Strategies.DefaultIOStrategy - Disposing DefaultIOStrategy for 10.3.3.206:11210 - f892df91-3644-446d-b8e9-30e18e5053b5
2014-10-14 08:51:34,770 [8] DEBUG Couchbase.IO.ConnectionPool`1 - Disposing ConnectionPool for 10.3.3.206:11210 - 9dd5bbfc-e400-4d40-a493-ebcc3a112e95
2014-10-14 08:51:34,770 [8] DEBUG Couchbase.IO.ConnectionBase - Disposing connection for 10.3.3.206:11210 - cb74cdd7-ef18-411b-a054-65a7239d4f19
2014-10-14 08:51:34,770 [8] INFO Couchbase.Configuration.Server.Providers.ConfigProviderBase - Removing config for observer default
2014-10-14 08:51:34,770 [8] DEBUG Couchbase.Core.Buckets.CouchbaseBucket - Attempting dispose on thread 8
2014-10-14 08:51:34,773 [11] DEBUG Couchbase.Core.Buckets.CouchbaseBucket - Current bucket refCount# 1
2014-10-14 08:51:34,773 [11] DEBUG Couchbase.Core.Buckets.CouchbaseBucket - Removing bucket refCount# 0
2014-10-14 08:51:34,773 [11] DEBUG Couchbase.Core.Buckets.CouchbaseBucket - Disposing on thread 11
2014-10-14 08:51:34,773 [11] INFO Couchbase.Configuration.Server.Providers.ConfigProviderBase - Unregistering observer default
2014-10-14 08:51:34,773 [11] DEBUG Couchbase.Configuration.ConfigContextBase - Disposing ConfigContext
2014-10-14 08:51:34,773 [11] DEBUG Couchbase.Core.Server - Disposing Server for 10.3.121.134:11210
2014-10-14 08:51:34,773 [11] DEBUG Couchbase.IO.Strategies.DefaultIOStrategy - Disposing DefaultIOStrategy for 10.3.121.134:11210 - b5d4bcf1-12ac-4981-8a57-3a4345a1ec0b
2014-10-14 08:51:34,773 [11] DEBUG Couchbase.IO.ConnectionPool`1 - Disposing ConnectionPool for 10.3.121.134:11210 - ad92dfaf-7035-4561-9788-6047552256c6
2014-10-14 08:51:34,773 [11] DEBUG Couchbase.IO.ConnectionBase - Disposing connection for 10.3.121.134:11210 - 6a748388-aa39-4cb2-9788-495bbbcba48d
2014-10-14 08:51:34,773 [11] DEBUG Couchbase.IO.ConnectionBase - Disposing connection for 10.3.121.134:11210 - b59daeeb-602b-43b9-9a5a-35967db9a434
2014-10-14 08:51:34,773 [11] DEBUG Couchbase.Core.Server - Disposing Server for 10.3.121.135:11210
2014-10-14 08:51:34,773 [11] DEBUG Couchbase.IO.Strategies.DefaultIOStrategy - Disposing DefaultIOStrategy for 10.3.121.135:11210 - 7d689af7-aef3-46a6-aebe-7f51ecfa2073
2014-10-14 08:51:34,773 [11] DEBUG Couchbase.IO.ConnectionPool`1 - Disposing ConnectionPool for 10.3.121.135:11210 - 873a7539-d603-46c1-a132-7f113ac83e85
2014-10-14 08:51:34,773 [11] DEBUG Couchbase.IO.ConnectionBase - Disposing connection for 10.3.121.135:11210 - e24c15c1-4692-4d15-a064-1d4850194518
2014-10-14 08:51:34,774 [11] DEBUG Couchbase.Core.Server - Disposing Server for 10.3.121.136:11210
2014-10-14 08:51:34,774 [11] DEBUG Couchbase.IO.Strategies.DefaultIOStrategy - Disposing DefaultIOStrategy for 10.3.121.136:11210 - aabec85d-8df3-4caa-9205-9a7477710bca
2014-10-14 08:51:34,774 [11] DEBUG Couchbase.IO.ConnectionPool`1 - Disposing ConnectionPool for 10.3.121.136:11210 - 07476198-0fb5-4af9-8eef-879c440c249b
2014-10-14 08:51:34,774 [11] DEBUG Couchbase.IO.ConnectionBase - Disposing connection for 10.3.121.136:11210 - 8540599a-b39a-4f6e-b948-2fb3ddc1c24a
2014-10-14 08:51:34,774 [11] DEBUG Couchbase.Core.Server - Disposing Server for 10.3.3.206:11210
2014-10-14 08:51:34,774 [11] DEBUG Couchbase.IO.Strategies.DefaultIOStrategy - Disposing DefaultIOStrategy for 10.3.3.206:11210 - d17ebe9b-a444-4eec-96fb-583ab7b34f38
2014-10-14 08:51:34,774 [11] DEBUG Couchbase.IO.ConnectionPool`1 - Disposing ConnectionPool for 10.3.3.206:11210 - 19567acf-71a3-43c4-99f3-2ee5145aa265
2014-10-14 08:51:34,774 [11] DEBUG Couchbase.IO.ConnectionBase - Disposing connection for 10.3.3.206:11210 - 5fc38936-49ab-4ca5-a8b4-a578f044f581
2014-10-14 08:51:34,774 [11] INFO Couchbase.Configuration.Server.Providers.ConfigProviderBase - Removing config for observer default
2014-10-14 08:51:34,774 [8] DEBUG Couchbase.Cluster - Disposing Cluster
2014-10-14 08:51:34,774 [11] DEBUG Couchbase.Core.Buckets.CouchbaseBucket - Attempting dispose on thread 11
2014-10-14 08:51:34,774 [9] DEBUG Couchbase.Core.Buckets.CouchbaseBucket - Current bucket refCount# 1
2014-10-14 08:51:34,775 [9] DEBUG Couchbase.Core.Buckets.CouchbaseBucket - Removing bucket refCount# 0
2014-10-14 08:51:34,775 [9] DEBUG Couchbase.Core.Buckets.CouchbaseBucket - Disposing on thread 9
2014-10-14 08:51:34,775 [9] INFO Couchbase.Configuration.Server.Providers.ConfigProviderBase - Unregistering observer default
2014-10-14 08:51:34,775 [9] DEBUG Couchbase.Configuration.ConfigContextBase - Disposing ConfigContext
2014-10-14 08:51:34,775 [9] DEBUG Couchbase.Core.Server - Disposing Server for 10.3.121.134:11210
2014-10-14 08:51:34,775 [9] DEBUG Couchbase.IO.Strategies.DefaultIOStrategy - Disposing DefaultIOStrategy for 10.3.121.134:11210 - 076b028c-1934-449a-ad17-1fc76ca3e5fb
2014-10-14 08:51:34,775 [9] DEBUG Couchbase.IO.ConnectionPool`1 - Disposing ConnectionPool for 10.3.121.134:11210 - 7a26c404-76a4-4435-9cd9-d322df61efb4
2014-10-14 08:51:34,775 [9] DEBUG Couchbase.IO.ConnectionBase - Disposing connection for 10.3.121.134:11210 - e3bb78a5-8623-495e-98db-40e43c40d634
2014-10-14 08:51:34,774 [8] DEBUG Couchbase.Configuration.Server.Providers.ConfigProviderBase - Disposing ConfigurationProvider: CarrierPublicationProvider
2014-10-14 08:51:34,775 [9] DEBUG Couchbase.IO.ConnectionBase - Disposing connection for 10.3.121.134:11210 - e38251e2-0916-48bf-bb9a-761fc1e0ac5e
2014-10-14 08:51:34,776 [9] DEBUG Couchbase.Core.Server - Disposing Server for 10.3.121.135:11210
2014-10-14 08:51:34,776 [9] DEBUG Couchbase.IO.Strategies.DefaultIOStrategy - Disposing DefaultIOStrategy for 10.3.121.135:11210 - e822c4a9-a307-4375-9d43-2fc06618867a
2014-10-14 08:51:34,776 [9] DEBUG Couchbase.IO.ConnectionPool`1 - Disposing ConnectionPool for 10.3.121.135:11210 - 545ea7df-77a4-44a0-8c9d-1a5755062255
2014-10-14 08:51:34,777 [9] DEBUG Couchbase.IO.ConnectionBase - Disposing connection for 10.3.121.135:11210 - c2aff532-9e7e-42c9-9608-a8adfcb86dd0
2014-10-14 08:51:34,779 [9] DEBUG Couchbase.Core.Server - Disposing Server for 10.3.121.136:11210
2014-10-14 08:51:34,779 [9] DEBUG Couchbase.IO.Strategies.DefaultIOStrategy - Disposing DefaultIOStrategy for 10.3.121.136:11210 - de2c6395-5e6b-48db-b81e-e5c41521abb1
2014-10-14 08:51:34,779 [9] DEBUG Couchbase.IO.ConnectionPool`1 - Disposing ConnectionPool for 10.3.121.136:11210 - b84ef574-e7a3-4f16-a405-72cab7e6999c
2014-10-14 08:51:34,779 [9] DEBUG Couchbase.IO.ConnectionBase - Disposing connection for 10.3.121.136:11210 - 7be62279-00fa-442e-8137-651ae402dd75
2014-10-14 08:51:34,780 [9] DEBUG Couchbase.Core.Server - Disposing Server for 10.3.3.206:11210
2014-10-14 08:51:34,780 [9] DEBUG Couchbase.IO.Strategies.DefaultIOStrategy - Disposing DefaultIOStrategy for 10.3.3.206:11210 - 26b996bc-6685-4716-8237-cd3799b8a792
2014-10-14 08:51:34,781 [9] DEBUG Couchbase.IO.ConnectionPool`1 - Disposing ConnectionPool for 10.3.3.206:11210 - 2834d4f4-0280-4c8d-ba62-2d491ca483c7
2014-10-14 08:51:34,781 [9] DEBUG Couchbase.IO.ConnectionBase - Disposing connection for 10.3.3.206:11210 - 70acb54e-5d71-40f1-98d8-039b5e05c1d2
2014-10-14 08:51:34,781 [9] INFO Couchbase.Configuration.Server.Providers.ConfigProviderBase - Removing config for observer default
2014-10-14 08:51:34,781 [9] DEBUG Couchbase.Core.Buckets.CouchbaseBucket - Attempting dispose on thread 9
2014-10-14 08:51:34,781 [11] DEBUG Couchbase.Cluster - Disposing Cluster
2014-10-14 08:51:34,781 [11] DEBUG Couchbase.Configuration.Server.Providers.ConfigProviderBase - Disposing ConfigurationProvider: CarrierPublicationProvider
2014-10-14 08:51:34,781 [9] DEBUG Couchbase.Cluster - Disposing Cluster
2014-10-14 08:51:34,781 [9] DEBUG Couchbase.Configuration.Server.Providers.ConfigProviderBase - Disposing ConfigurationProvider: CarrierPublicationProvider
2014-10-14 08:51:34,781 [14] DEBUG Couchbase.Core.Buckets.CouchbaseBucket - Current bucket refCount# 1
2014-10-14 08:51:34,784 [14] DEBUG Couchbase.Core.Buckets.CouchbaseBucket - Removing bucket refCount# 0
2014-10-14 08:51:34,784 [14] DEBUG Couchbase.Core.Buckets.CouchbaseBucket - Disposing on thread 14
2014-10-14 08:51:34,784 [14] INFO Couchbase.Configuration.Server.Providers.ConfigProviderBase - Unregistering observer default
2014-10-14 08:51:34,784 [14] DEBUG Couchbase.Configuration.ConfigContextBase - Disposing ConfigContext
2014-10-14 08:51:34,784 [14] DEBUG Couchbase.Core.Server - Disposing Server for 10.3.121.134:11210
2014-10-14 08:51:34,784 [14] DEBUG Couchbase.IO.Strategies.DefaultIOStrategy - Disposing DefaultIOStrategy for 10.3.121.134:11210 - b3673bf7-51f1-42a5-9395-5ef22b7c7fcf
2014-10-14 08:51:34,784 [14] DEBUG Couchbase.IO.ConnectionPool`1 - Disposing ConnectionPool for 10.3.121.134:11210 - e2da8b66-96f9-4ffb-8ce7-84521cfa8861
2014-10-14 08:51:34,784 [14] DEBUG Couchbase.IO.ConnectionBase - Disposing connection for 10.3.121.134:11210 - 0ebcd0c1-52e2-4592-b026-9d19bce12b94
2014-10-14 08:51:34,784 [14] DEBUG Couchbase.IO.ConnectionBase - Disposing connection for 10.3.121.134:11210 - a724690b-6ab1-4049-977c-80a1276e4239
2014-10-14 08:51:34,785 [14] DEBUG Couchbase.Core.Server - Disposing Server for 10.3.121.135:11210
2014-10-14 08:51:34,785 [14] DEBUG Couchbase.IO.Strategies.DefaultIOStrategy - Disposing DefaultIOStrategy for 10.3.121.135:11210 - 87518c99-7bdd-4e9b-8e6c-363fbe5c12d4
2014-10-14 08:51:34,785 [14] DEBUG Couchbase.IO.ConnectionPool`1 - Disposing ConnectionPool for 10.3.121.135:11210 - 58dbd214-f9ac-45e8-b0f1-9170a943a7cf
2014-10-14 08:51:34,785 [14] DEBUG Couchbase.IO.ConnectionBase - Disposing connection for 10.3.121.135:11210 - a87e0542-4993-4458-bb2c-132473835204
2014-10-14 08:51:34,785 [14] DEBUG Couchbase.Core.Server - Disposing Server for 10.3.121.136:11210
2014-10-14 08:51:34,785 [14] DEBUG Couchbase.IO.Strategies.DefaultIOStrategy - Disposing DefaultIOStrategy for 10.3.121.136:11210 - 97f6e739-7ac0-41c9-8e62-089efd454bd3
2014-10-14 08:51:34,785 [14] DEBUG Couchbase.IO.ConnectionPool`1 - Disposing ConnectionPool for 10.3.121.136:11210 - c401faf6-0866-44e8-a9b2-0612b933808a
2014-10-14 08:51:34,785 [14] DEBUG Couchbase.IO.ConnectionBase - Disposing connection for 10.3.121.136:11210 - eb8e57a2-f73f-403e-a514-fe73710ca7c7
2014-10-14 08:51:34,785 [14] DEBUG Couchbase.Core.Server - Disposing Server for 10.3.3.206:11210
2014-10-14 08:51:34,785 [14] DEBUG Couchbase.IO.Strategies.DefaultIOStrategy - Disposing DefaultIOStrategy for 10.3.3.206:11210 - 96f5c737-aad1-4774-9a2f-590678ac6e62
2014-10-14 08:51:34,785 [14] DEBUG Couchbase.IO.ConnectionPool`1 - Disposing ConnectionPool for 10.3.3.206:11210 - 18c5670e-b27f-474c-8100-53962e3c7009
2014-10-14 08:51:34,785 [14] DEBUG Couchbase.IO.ConnectionBase - Disposing connection for 10.3.3.206:11210 - cb8327b9-b45c-451b-b936-393ebd41b1f8
2014-10-14 08:51:34,785 [14] INFO Couchbase.Configuration.Server.Providers.ConfigProviderBase - Removing config for observer default
2014-10-14 08:51:34,785 [14] DEBUG Couchbase.Core.Buckets.CouchbaseBucket - Attempting dispose on thread 14
2014-10-14 08:51:34,797 [13] DEBUG Couchbase.Core.Buckets.CouchbaseBucket - Current bucket refCount# 1
2014-10-14 08:51:34,797 [13] DEBUG Couchbase.Core.Buckets.CouchbaseBucket - Removing bucket refCount# 0
2014-10-14 08:51:34,797 [13] DEBUG Couchbase.Core.Buckets.CouchbaseBucket - Disposing on thread 13
2014-10-14 08:51:34,798 [13] INFO Couchbase.Configuration.Server.Providers.ConfigProviderBase - Unregistering observer default
2014-10-14 08:51:34,798 [13] DEBUG Couchbase.Configuration.ConfigContextBase - Disposing ConfigContext
2014-10-14 08:51:34,798 [13] DEBUG Couchbase.Core.Server - Disposing Server for 10.3.121.134:11210
2014-10-14 08:51:34,798 [13] DEBUG Couchbase.IO.Strategies.DefaultIOStrategy - Disposing DefaultIOStrategy for 10.3.121.134:11210 - a29394e2-5b67-410a-8fa6-68a263a2351a
2014-10-14 08:51:34,798 [13] DEBUG Couchbase.IO.ConnectionPool`1 - Disposing ConnectionPool for 10.3.121.134:11210 - 554f7d15-4c08-485b-8235-6588e2cea61e
2014-10-14 08:51:34,798 [13] DEBUG Couchbase.IO.ConnectionBase - Disposing connection for 10.3.121.134:11210 - 6477b8a9-f68c-47da-b865-8fae30bdd3e9
2014-10-14 08:51:34,798 [13] DEBUG Couchbase.IO.ConnectionBase - Disposing connection for 10.3.121.134:11210 - d122c532-69c7-49a1-b867-ea5bc0f50cd5
2014-10-14 08:51:34,798 [13] DEBUG Couchbase.Core.Server - Disposing Server for 10.3.121.135:11210
2014-10-14 08:51:34,798 [13] DEBUG Couchbase.IO.Strategies.DefaultIOStrategy - Disposing DefaultIOStrategy for 10.3.121.135:11210 - a5212957-d7b4-4e8a-8de2-c134e8b347cd
2014-10-14 08:51:34,798 [13] DEBUG Couchbase.IO.ConnectionPool`1 - Disposing ConnectionPool for 10.3.121.135:11210 - d54a3668-c9da-4e32-82ea-e451cfd3355e
2014-10-14 08:51:34,798 [13] DEBUG Couchbase.IO.ConnectionBase - Disposing connection for 10.3.121.135:11210 - 07dd9661-1f98-4964-9f47-a6882ae9968f
2014-10-14 08:51:34,798 [13] DEBUG Couchbase.Core.Server - Disposing Server for 10.3.121.136:11210
2014-10-14 08:51:34,799 [13] DEBUG Couchbase.IO.Strategies.DefaultIOStrategy - Disposing DefaultIOStrategy for 10.3.121.136:11210 - 54f98a31-fb83-4722-b7db-2d8c2620f131
2014-10-14 08:51:34,799 [13] DEBUG Couchbase.IO.ConnectionPool`1 - Disposing ConnectionPool for 10.3.121.136:11210 - d15a2d13-ae10-4280-a963-db384cfd6458
2014-10-14 08:51:34,799 [13] DEBUG Couchbase.IO.ConnectionBase - Disposing connection for 10.3.121.136:11210 - 94954350-41c8-4001-932b-02b683ca5c60
2014-10-14 08:51:34,799 [13] DEBUG Couchbase.Core.Server - Disposing Server for 10.3.3.206:11210
2014-10-14 08:51:34,799 [13] DEBUG Couchbase.IO.Strategies.DefaultIOStrategy - Disposing DefaultIOStrategy for 10.3.3.206:11210 - 9d7480c8-a451-4b73-9cb2-75ae2dc0dacb
2014-10-14 08:51:34,799 [13] DEBUG Couchbase.IO.ConnectionPool`1 - Disposing ConnectionPool for 10.3.3.206:11210 - 251020be-b0e7-489e-888d-05ff93bbf0ea
2014-10-14 08:51:34,799 [13] DEBUG Couchbase.IO.ConnectionBase - Disposing connection for 10.3.3.206:11210 - d0a8de8e-89f8-46f5-b08c-1bd5f4982896
2014-10-14 08:51:34,799 [13] INFO Couchbase.Configuration.Server.Providers.ConfigProviderBase - Removing config for observer default
2014-10-14 08:51:34,799 [13] DEBUG Couchbase.Core.Buckets.CouchbaseBucket - Attempting dispose on thread 13
2014-10-14 08:51:34,806 [14] DEBUG Couchbase.Cluster - Disposing Cluster
2014-10-14 08:51:34,806 [14] DEBUG Couchbase.Configuration.Server.Providers.ConfigProviderBase - Disposing ConfigurationProvider: CarrierPublicationProvider
2014-10-14 08:51:34,806 [13] DEBUG Couchbase.Cluster - Disposing Cluster
2014-10-14 08:51:34,806 [13] DEBUG Couchbase.Configuration.Server.Providers.ConfigProviderBase - Disposing ConfigurationProvider: CarrierPublicationProvider
2014-10-14 08:51:34,807 [24] DEBUG Couchbase.IO.ConnectionPool`1 - No connections currently available on 10.3.121.135:11210 - d01d19cb-d6b6-4531-a2cd-7ba68b2eba86. Trying again. - Disposed: False
2014-10-14 08:51:37,307 [24] DEBUG Couchbase.IO.ConnectionPool`1 - No connections currently available on 10.3.121.135:11210 - d01d19cb-d6b6-4531-a2cd-7ba68b2eba86. Trying again. - Disposed: False
2014-10-14 08:51:39,807 [24] DEBUG Couchbase.IO.ConnectionPool`1 - No connections currently available on 10.3.121.135:11210 - d01d19cb-d6b6-4531-a2cd-7ba68b2eba86. Trying again. - Disposed: False
2014-10-14 08:51:42,307 [24] DEBUG Couchbase.IO.ConnectionPool`1 - No connections currently available on 10.3.121.135:11210 - d01d19cb-d6b6-4531-a2cd-7ba68b2eba86. Trying again. - Disposed: False
2014-10-14 08:51:44,807 [24] DEBUG Couchbase.IO.ConnectionPool`1 - No connections currently available on 10.3.121.135:11210 - d01d19cb-d6b6-4531-a2cd-7ba68b2eba86. Trying again. - Disposed: False
2014-10-14 08:51:47,307 [24] DEBUG Couchbase.IO.ConnectionPool`1 - No connections currently available on 10.3.121.135:11210 - d01d19cb-d6b6-4531-a2cd-7ba68b2eba86. Trying again. - Disposed: False
2014-10-14 08:51:49,807 [24] DEBUG Couchbase.IO.ConnectionPool`1 - No connections currently available on 10.3.121.135:11210 - d01d19cb-d6b6-4531-a2cd-7ba68b2eba86. Trying again. - Disposed: False
2014-10-14 08:51:52,307 [24] DEBUG Couchbase.IO.ConnectionPool`1 - No connections currently available on 10.3.121.135:11210 - d01d19cb-d6b6-4531-a2cd-7ba68b2eba86. Trying again. - Disposed: False
2014-10-14 08:51:54,807 [24] DEBUG Couchbase.IO.ConnectionPool`1 - No connections currently available on 10.3.121.135:11210 - d01d19cb-d6b6-4531-a2cd-7ba68b2eba86. Trying again. - Disposed: False
2014-10-14 08:51:57,307 [24] DEBUG Couchbase.IO.ConnectionPool`1 - No connections currently available on 10.3.121.135:11210 - d01d19cb-d6b6-4531-a2cd-7ba68b2eba86. Trying again. - Disposed: False
2014-10-14 08:51:59,807 [24] DEBUG Couchbase.IO.ConnectionPool`1 - No connections currently available on 10.3.121.135:11210 - d01d19cb-d6b6-4531-a2cd-7ba68b2eba86. Trying again. - Disposed: False
2014-10-14 08:52:02,307 [24] DEBUG Couchbase.IO.ConnectionPool`1 - No connections currently available on 10.3.121.135:11210 - d01d19cb-d6b6-4531-a2cd-7ba68b2eba86. Trying again. - Disposed: False
2014-10-14 08:52:04,807 [24] DEBUG Couchbase.IO.ConnectionPool`1 - No connections currently available on 10.3.121.135:11210 - d01d19cb-d6b6-4531-a2cd-7ba68b2eba86. Trying again. - Disposed: False
2014-10-14 08:52:07,307 [24] DEBUG Couchbase.IO.ConnectionPool`1 - No connections currently available on 10.3.121.135:11210 - d01d19cb-d6b6-4531-a2cd-7ba68b2eba86. Trying again. - Disposed: False
2014-10-14 08:52:09,807 [24] DEBUG Couchbase.IO.ConnectionPool`1 - No connections currently available on 10.3.121.135:11210 - d01d19cb-d6b6-4531-a2cd-7ba68b2eba86. Trying again. - Disposed: False
2014-10-14 08:52:12,307 [24] DEBUG Couchbase.IO.ConnectionPool`1 - No connections currently available on 10.3.121.135:11210 - d01d19cb-d6b6-4531-a2cd-7ba68b2eba86. Trying again. - Disposed: False
2014-10-14 08:52:14,807 [24] DEBUG Couchbase.IO.ConnectionPool`1 - No connections currently available on 10.3.121.135:11210 - d01d19cb-d6b6-4531-a2cd-7ba68b2eba86. Trying again. - Disposed: False
2014-10-14 08:52:17,307 [24] DEBUG Couchbase.IO.ConnectionPool`1 - No connections currently available on 10.3.121.135:11210 - d01d19cb-d6b6-4531-a2cd-7ba68b2eba86. Trying again. - Disposed: False
2014-10-14 08:52:19,807 [24] DEBUG Couchbase.IO.ConnectionPool`1 - No connections currently available on 10.3.121.135:11210 - d01d19cb-d6b6-4531-a2cd-7ba68b2eba86. Trying again. - Disposed: False
2014-10-14 08:52:22,307 [24] DEBUG Couchbase.IO.ConnectionPool`1 - No connections currently available on 10.3.121.135:11210 - d01d19cb-d6b6-4531-a2cd-7ba68b2eba86. Trying again. - Disposed: False
2014-10-14 08:52:24,807 [24] DEBUG Couchbase.IO.ConnectionPool`1 - No connections currently available on 10.3.121.135:11210 - d01d19cb-d6b6-4531-a2cd-7ba68b2eba86. Trying again. - Disposed: False
2014-10-14 08:52:27,307 [24] DEBUG Couchbase.IO.ConnectionPool`1 - No connections currently available on 10.3.121.135:11210 - d01d19cb-d6b6-4531-a2cd-7ba68b2eba86. Trying again. - Disposed: False
2014-10-14 08:52:29,807 [24] DEBUG Couchbase.IO.ConnectionPool`1 - No connections currently available on 10.3.121.135:11210 - d01d19cb-d6b6-4531-a2cd-7ba68b2eba86. Trying again. - Disposed: False
2014-10-14 08:52:32,307 [24] DEBUG Couchbase.IO.ConnectionPool`1 - No connections currently available on 10.3.121.135:11210 - d01d19cb-d6b6-4531-a2cd-7ba68b2eba86. Trying again. - Disposed: False
2014-10-14 08:52:34,807 [24] DEBUG Couchbase.IO.ConnectionPool`1 - No connections currently available on 10.3.121.135:11210 - d01d19cb-d6b6-4531-a2cd-7ba68b2eba86. Trying again. - Disposed: False
2014-10-14 08:52:37,307 [24] DEBUG Couchbase.IO.ConnectionPool`1 - No connections currently available on 10.3.121.135:11210 - d01d19cb-d6b6-4531-a2cd-7ba68b2eba86. Trying again. - Disposed: False
2014-10-14 08:52:39,807 [24] DEBUG Couchbase.IO.ConnectionPool`1 - No connections currently available on 10.3.121.135:11210 - d01d19cb-d6b6-4531-a2cd-7ba68b2eba86. Trying again. - Disposed: False
2014-10-14 08:52:42,307 [24] DEBUG Couchbase.IO.ConnectionPool`1 - No connections currently available on 10.3.121.135:11210 - d01d19cb-d6b6-4531-a2cd-7ba68b2eba86. Trying again. - Disposed: False
2014-10-14 08:52:44,807 [24] DEBUG Couchbase.IO.ConnectionPool`1 - No connections currently available on 10.3.121.135:11210 - d01d19cb-d6b6-4531-a2cd-7ba68b2eba86. Trying again. - Disposed: False
2014-10-14 08:52:47,307 [24] DEBUG Couchbase.IO.ConnectionPool`1 - No connections currently available on 10.3.121.135:11210 - d01d19cb-d6b6-4531-a2cd-7ba68b2eba86. Trying again. - Disposed: False
2014-10-14 08:52:49,807 [24] DEBUG Couchbase.IO.ConnectionPool`1 - No connections currently available on 10.3.121.135:11210 - d01d19cb-d6b6-4531-a2cd-7ba68b2eba86. Trying again. - Disposed: False
2014-10-14 08:52:52,307 [24] DEBUG Couchbase.IO.ConnectionPool`1 - No connections currently available on 10.3.121.135:11210 - d01d19cb-d6b6-4531-a2cd-7ba68b2eba86. Trying again. - Disposed: False
2014-10-14 08:52:54,807 [24] DEBUG Couchbase.IO.ConnectionPool`1 - No connections currently available on 10.3.121.135:11210 - d01d19cb-d6b6-4531-a2cd-7ba68b2eba86. Trying again. - Disposed: False
2014-10-14 08:52:57,307 [24] DEBUG Couchbase.IO.ConnectionPool`1 - No connections currently available on 10.3.121.135:11210 - d01d19cb-d6b6-4531-a2cd-7ba68b2eba86. Trying again. - Disposed: False
2014-10-14 08:52:59,807 [24] DEBUG Couchbase.IO.ConnectionPool`1 - No connections currently available on 10.3.121.135:11210 - d01d19cb-d6b6-4531-a2cd-7ba68b2eba86. Trying again. - Disposed: False
2014-10-14 08:53:02,307 [24] DEBUG Couchbase.IO.ConnectionPool`1 - No connections currently available on 10.3.121.135:11210 - d01d19cb-d6b6-4531-a2cd-7ba68b2eba86. Trying again. - Disposed: False
2014-10-14 08:53:04,807 [24] DEBUG Couchbase.IO.ConnectionPool`1 - No connections currently available on 10.3.121.135:11210 - d01d19cb-d6b6-4531-a2cd-7ba68b2eba86. Trying again. - Disposed: False
2014-10-14 08:53:07,307 [24] DEBUG Couchbase.IO.ConnectionPool`1 - No connections currently available on 10.3.121.135:11210 - d01d19cb-d6b6-4531-a2cd-7ba68b2eba86. Trying again. - Disposed: False
2014-10-14 08:53:09,807 [24] DEBUG Couchbase.IO.ConnectionPool`1 - No connections currently available on 10.3.121.135:11210 - d01d19cb-d6b6-4531-a2cd-7ba68b2eba86. Trying again. - Disposed: False
2014-10-14 08:53:12,307 [24] DEBUG Couchbase.IO.ConnectionPool`1 - No connections currently available on 10.3.121.135:11210 - d01d19cb-d6b6-4531-a2cd-7ba68b2eba86. Trying again. - Disposed: False
2014-10-14 08:53:14,807 [24] DEBUG Couchbase.IO.ConnectionPool`1 - No connections currently available on 10.3.121.135:11210 - d01d19cb-d6b6-4531-a2cd-7ba68b2eba86. Trying again. - Disposed: False
2014-10-14 08:53:17,307 [24] DEBUG Couchbase.IO.ConnectionPool`1 - No connections currently available on 10.3.121.135:11210 - d01d19cb-d6b6-4531-a2cd-7ba68b2eba86. Trying again. - Disposed: False
2014-10-14 08:53:19,807 [24] DEBUG Couchbase.IO.ConnectionPool`1 - No connections currently available on 10.3.121.135:11210 - d01d19cb-d6b6-4531-a2cd-7ba68b2eba86. Trying again. - Disposed: False
2014-10-14 08:53:22,307 [24] DEBUG Couchbase.IO.ConnectionPool`1 - No connections currently available on 10.3.121.135:11210 - d01d19cb-d6b6-4531-a2cd-7ba68b2eba86. Trying again. - Disposed: False
2014-10-14 08:53:24,807 [24] DEBUG Couchbase.IO.ConnectionPool`1 - No connections currently available on 10.3.121.135:11210 - d01d19cb-d6b6-4531-a2cd-7ba68b2eba86. Trying again. - Disposed: False
2014-10-14 08:53:27,307 [24] DEBUG Couchbase.IO.ConnectionPool`1 - No connections currently available on 10.3.121.135:11210 - d01d19cb-d6b6-4531-a2cd-7ba68b2eba86. Trying again. - Disposed: False
....

 Comments   
Comment by Andrei Baranouski [ 14/Oct/14 ]
https://s3.amazonaws.com/bugdb/jira/NCBC-685/e82fc475/NCBC-685.zip
Comment by Jeff Morris [ 14/Oct/14 ]
It looks like the test harness is disposing the cluster?!:

2014-10-14 08:51:34,799 [13] DEBUG Couchbase.Core.Buckets.CouchbaseBucket - Attempting dispose on thread 13
2014-10-14 08:51:34,806 [14] DEBUG Couchbase.Cluster - Disposing Cluster
2014-10-14 08:51:34,806 [14] DEBUG Couchbase.Configuration.Server.Providers.ConfigProviderBase - Disposing ConfigurationProvider: CarrierPublicationProvider
2014-10-14 08:51:34,806 [13] DEBUG Couchbase.Cluster - Disposing Cluster
2014-10-14 08:51:34,806 [13] DEBUG Couchbase.Configuration.Server.Providers.ConfigProviderBase - Disposing ConfigurationProvider: CarrierPublicationProvider
2014-10-14 08:51:34,807 [24] DEBUG Couchbase.IO.ConnectionPool`1 - No connections currently available on 10.3.121.135:11210 - d01d19cb-d6b6-4531-a2cd-7ba68b2eba86. Trying again. - Disposed: False

Not sure why the ConnectionPool logger indicates the it's not disposed, though.
Comment by Jeff Morris [ 14/Oct/14 ]
>>seems like the problem is with view queries that are requested on rebalanced out nodes.

The connection pool is only used for memcached ops; views just use the server endpoints to construct the url in a round-robin fashion.
Comment by Andrei Baranouski [ 15/Oct/14 ]
Hi Jeff,

I'm able to reproduce it in command line on 172.23.107.172

stack trace there

  [External Code]
> Couchbase.dll!Couchbase.IO.ConnectionPool<Couchbase.IO.Strategies.EapConnection>.Acquire() Line 123 C#
  Couchbase.dll!Couchbase.IO.ConnectionPool<Couchbase.IO.Strategies.EapConnection>.Acquire() Line 126 C#
  Couchbase.dll!Couchbase.IO.ConnectionPool<Couchbase.IO.Strategies.EapConnection>.Acquire() Line 126 C#
  Couchbase.dll!Couchbase.IO.ConnectionPool<Couchbase.IO.Strategies.EapConnection>.Acquire() Line 126 C#
  Couchbase.dll!Couchbase.IO.ConnectionPool<Couchbase.IO.Strategies.EapConnection>.Acquire() Line 126 C#
  Couchbase.dll!Couchbase.IO.ConnectionPool<Couchbase.IO.Strategies.EapConnection>.Acquire() Line 126 C#
  Couchbase.dll!Couchbase.IO.ConnectionPool<Couchbase.IO.Strategies.EapConnection>.Acquire() Line 126 C#
  Couchbase.dll!Couchbase.IO.ConnectionPool<Couchbase.IO.Strategies.EapConnection>.Acquire() Line 126 C#
  Couchbase.dll!Couchbase.IO.ConnectionPool<Couchbase.IO.Strategies.EapConnection>.Acquire() Line 126 C#
  Couchbase.dll!Couchbase.IO.ConnectionPool<Couchbase.IO.Strategies.EapConnection>.Acquire() Line 126 C#
  Couchbase.dll!Couchbase.IO.ConnectionPool<Couchbase.IO.Strategies.EapConnection>.Acquire() Line 126 C#
  Couchbase.dll!Couchbase.IO.ConnectionPool<Couchbase.IO.Strategies.EapConnection>.Acquire() Line 126 C#
  Couchbase.dll!Couchbase.IO.ConnectionPool<Couchbase.IO.Strategies.EapConnection>.Acquire() Line 126 C#
  Couchbase.dll!Couchbase.IO.ConnectionPool<Couchbase.IO.Strategies.EapConnection>.Acquire() Line 126 C#
  Couchbase.dll!Couchbase.IO.ConnectionPool<Couchbase.IO.Strategies.EapConnection>.Acquire() Line 126 C#
  Couchbase.dll!Couchbase.IO.ConnectionPool<Couchbase.IO.Strategies.EapConnection>.Acquire() Line 126 C#
  Couchbase.dll!Couchbase.IO.ConnectionPool<Couchbase.IO.Strategies.EapConnection>.Acquire() Line 126 C#
  Couchbase.dll!Couchbase.IO.ConnectionPool<Couchbase.IO.Strategies.EapConnection>.Acquire() Line 126 C#
  Couchbase.dll!Couchbase.IO.ConnectionPool<Couchbase.IO.Strategies.EapConnection>.Acquire() Line 126 C#
  Couchbase.dll!Couchbase.IO.ConnectionPool<Couchbase.IO.Strategies.EapConnection>.Acquire() Line 126 C#
  Couchbase.dll!Couchbase.IO.ConnectionPool<Couchbase.IO.Strategies.EapConnection>.Acquire() Line 126 C#
  Couchbase.dll!Couchbase.IO.ConnectionPool<Couchbase.IO.Strategies.EapConnection>.Acquire() Line 126 C#
  Couchbase.dll!Couchbase.IO.ConnectionPool<Couchbase.IO.Strategies.EapConnection>.Acquire() Line 126 C#
  Couchbase.dll!Couchbase.IO.ConnectionPool<Couchbase.IO.Strategies.EapConnection>.Acquire() Line 126 C#
  Couchbase.dll!Couchbase.IO.ConnectionPool<Couchbase.IO.Strategies.EapConnection>.Acquire() Line 126 C#
  Couchbase.dll!Couchbase.IO.ConnectionPool<Couchbase.IO.Strategies.EapConnection>.Acquire() Line 126 C#
  Couchbase.dll!Couchbase.IO.ConnectionPool<Couchbase.IO.Strategies.EapConnection>.Acquire() Line 126 C#
  Couchbase.dll!Couchbase.IO.ConnectionPool<Couchbase.IO.Strategies.EapConnection>.Acquire() Line 126 C#
  Couchbase.dll!Couchbase.IO.ConnectionPool<Couchbase.IO.Strategies.EapConnection>.Acquire() Line 126 C#
  Couchbase.dll!Couchbase.IO.ConnectionPool<Couchbase.IO.Strategies.EapConnection>.Acquire() Line 126 C#
  Couchbase.dll!Couchbase.IO.ConnectionPool<Couchbase.IO.Strategies.EapConnection>.Acquire() Line 126 C#
  Couchbase.dll!Couchbase.IO.ConnectionPool<Couchbase.IO.Strategies.EapConnection>.Acquire() Line 126 C#
  Couchbase.dll!Couchbase.IO.ConnectionPool<Couchbase.IO.Strategies.EapConnection>.Acquire() Line 126 C#
  Couchbase.dll!Couchbase.IO.ConnectionPool<Couchbase.IO.Strategies.EapConnection>.Acquire() Line 126 C#
  Couchbase.dll!Couchbase.IO.ConnectionPool<Couchbase.IO.Strategies.EapConnection>.Acquire() Line 126 C#
  Couchbase.dll!Couchbase.IO.ConnectionPool<Couchbase.IO.Strategies.EapConnection>.Acquire() Line 126 C#
  Couchbase.dll!Couchbase.IO.ConnectionPool<Couchbase.IO.Strategies.EapConnection>.Acquire() Line 126 C#
  Couchbase.dll!Couchbase.IO.ConnectionPool<Couchbase.IO.Strategies.EapConnection>.Acquire() Line 126 C#
  Couchbase.dll!Couchbase.IO.ConnectionPool<Couchbase.IO.Strategies.EapConnection>.Acquire() Line 126 C#
  Couchbase.dll!Couchbase.IO.ConnectionPool<Couchbase.IO.Strategies.EapConnection>.Acquire() Line 126 C#
  Couchbase.dll!Couchbase.IO.ConnectionPool<Couchbase.IO.Strategies.EapConnection>.Acquire() Line 126 C#
  Couchbase.dll!Couchbase.IO.ConnectionPool<Couchbase.IO.Strategies.EapConnection>.Acquire() Line 126 C#
  Couchbase.dll!Couchbase.IO.ConnectionPool<Couchbase.IO.Strategies.EapConnection>.Acquire() Line 126 C#
  Couchbase.dll!Couchbase.IO.ConnectionPool<Couchbase.IO.Strategies.EapConnection>.Acquire() Line 126 C#
  Couchbase.dll!Couchbase.IO.ConnectionPool<Couchbase.IO.Strategies.EapConnection>.Acquire() Line 126 C#
  Couchbase.dll!Couchbase.IO.ConnectionPool<Couchbase.IO.Strategies.EapConnection>.Acquire() Line 126 C#
  Couchbase.dll!Couchbase.IO.ConnectionPool<Couchbase.IO.Strategies.EapConnection>.Acquire() Line 126 C#
  Couchbase.dll!Couchbase.IO.ConnectionPool<Couchbase.IO.Strategies.EapConnection>.Acquire() Line 126 C#
  Couchbase.dll!Couchbase.IO.ConnectionPool<Couchbase.IO.Strategies.EapConnection>.Acquire() Line 126 C#
  Couchbase.dll!Couchbase.IO.ConnectionPool<Couchbase.IO.Strategies.EapConnection>.Acquire() Line 126 C#
  Couchbase.dll!Couchbase.IO.ConnectionPool<Couchbase.IO.Strategies.EapConnection>.Acquire() Line 126 C#
  Couchbase.dll!Couchbase.IO.ConnectionPool<Couchbase.IO.Strategies.EapConnection>.Acquire() Line 126 C#
  Couchbase.dll!Couchbase.IO.ConnectionPool<Couchbase.IO.Strategies.EapConnection>.Acquire() Line 126 C#
  Couchbase.dll!Couchbase.IO.ConnectionPool<Couchbase.IO.Strategies.EapConnection>.Acquire() Line 126 C#
  Couchbase.dll!Couchbase.IO.ConnectionPool<Couchbase.IO.Strategies.EapConnection>.Acquire() Line 126 C#
  Couchbase.dll!Couchbase.IO.ConnectionPool<Couchbase.IO.Strategies.EapConnection>.Acquire() Line 126 C#
  Couchbase.dll!Couchbase.IO.ConnectionPool<Couchbase.IO.Strategies.EapConnection>.Acquire() Line 126 C#
  Couchbase.dll!Couchbase.IO.ConnectionPool<Couchbase.IO.Strategies.EapConnection>.Acquire() Line 126 C#
  Couchbase.dll!Couchbase.IO.ConnectionPool<Couchbase.IO.Strategies.EapConnection>.Acquire() Line 126 C#
  Couchbase.dll!Couchbase.IO.ConnectionPool<Couchbase.IO.Strategies.EapConnection>.Acquire() Line 126 C#
  Couchbase.dll!Couchbase.IO.ConnectionPool<Couchbase.IO.Strategies.EapConnection>.Acquire() Line 126 C#
  Couchbase.dll!Couchbase.IO.ConnectionPool<Couchbase.IO.Strategies.EapConnection>.Acquire() Line 126 C#
  Couchbase.dll!Couchbase.IO.ConnectionPool<Couchbase.IO.Strategies.EapConnection>.Acquire() Line 126 C#
  Couchbase.dll!Couchbase.IO.ConnectionPool<Couchbase.IO.Strategies.EapConnection>.Acquire() Line 126 C#
  Couchbase.dll!Couchbase.IO.ConnectionPool<Couchbase.IO.Strategies.EapConnection>.Acquire() Line 126 C#
  Couchbase.dll!Couchbase.IO.ConnectionPool<Couchbase.IO.Strategies.EapConnection>.Acquire() Line 126 C#
  Couchbase.dll!Couchbase.IO.ConnectionPool<Couchbase.IO.Strategies.EapConnection>.Acquire() Line 126 C#
  Couchbase.dll!Couchbase.IO.ConnectionPool<Couchbase.IO.Strategies.EapConnection>.Acquire() Line 126 C#
  Couchbase.dll!Couchbase.IO.ConnectionPool<Couchbase.IO.Strategies.EapConnection>.Acquire() Line 126 C#
  Couchbase.dll!Couchbase.IO.ConnectionPool<Couchbase.IO.Strategies.EapConnection>.Acquire() Line 126 C#
  Couchbase.dll!Couchbase.IO.ConnectionPool<Couchbase.IO.Strategies.EapConnection>.Acquire() Line 126 C#
  Couchbase.dll!Couchbase.IO.ConnectionPool<Couchbase.IO.Strategies.EapConnection>.Acquire() Line 126 C#
  Couchbase.dll!Couchbase.IO.ConnectionPool<Couchbase.IO.Strategies.EapConnection>.Couchbase.IO.IConnectionPool.Acquire() Line 178 C#
  Couchbase.dll!Couchbase.IO.Strategies.DefaultIOStrategy.Execute<string>(Couchbase.IO.Operations.IOperation<string> operation) Line 40 C#
  Couchbase.dll!Couchbase.Core.Server.Send<string>(Couchbase.IO.Operations.IOperation<string> operation) Line 90 C#
  Couchbase.dll!Couchbase.Core.Buckets.CouchbaseBucket.SendWithRetry<string>(Couchbase.IO.Operations.IOperation<string> operation) Line 95 C#
  Couchbase.dll!Couchbase.Core.Buckets.CouchbaseBucket.Get<string>(string key) Line 967 C#
  Sdkd.dll!Sdkd.Commands.GetCommand.ExecuteSingle(string key, string value) Line 17 C#
  Sdkd.dll!Sdkd.Commands.KVCommand.Run() Line 24 C#
  SdkdConsole.exe!SdkdConsole.Daemon.Handle.DispatchCommand(Sdkd.Protocol.Request req, Couchbase.Core.Buckets.CouchbaseBucket cli) Line 266 C#
  SdkdConsole.exe!SdkdConsole.Daemon.Handle.Run() Line 146 C#
  [External Code]
Comment by Jeff Morris [ 15/Oct/14 ]
Thanks Andrei. I know where this is happening, I just don't know most importantly WHY it's occurring. Basically, the connection pool is empty and all threads are waiting for a connection to become available. Since the PoolConfiguration.MaxSize has been reached, no more connections are being created. Note that there is a timeout for the max amount of time that a connection can be used, so either this isn't be honored (doubtful) or more like the connections are be destroyed somehow and not reused.

-Jeff
Comment by Jeff Morris [ 15/Oct/14 ]
This would cause a connection to not be re-added to the pool (since the auth failed on it while it was being initialized):

Line 1495903: 2014-10-15 14:47:44,782 [16] DEBUG Couchbase.IO.ConnectionPool`1 - Acquire new: db69c7dd-2d91-4013-a086-5d739867e02b | 10.3.4.144:11210 | [0, 1] - 3dd67e96-c247-4870-aab1-d7d867426c4b - Disposed: False
Line 1495904: 2014-10-15 14:47:44,782 [16] DEBUG Couchbase.Authentication.SASL.CramMd5Mechanism - Authenticating socket db69c7dd-2d91-4013-a086-5d739867e02b
Line 1495928: 2014-10-15 14:47:47,283 [16] DEBUG Couchbase.Authentication.SASL.CramMd5Mechanism - Authentication for socket db69c7dd-2d91-4013-a086-5d739867e02b failed: Operation timed out: the timeout can be configured by changing the PoolConfiguration.OperationTimeout property. The default is 2500ms.
Comment by Jeff Morris [ 15/Oct/14 ]
Patch: http://review.couchbase.org/#/c/42194/
Comment by Andrei Baranouski [ 16/Oct/14 ]
good results for the test and it doesn't stuck)

http://sdk-testresults.couchbase.com.s3.amazonaws.com/SDK-SDK/CB-3.0.0-1209/Rb2Out-HYBRID/10-16-14/032835/183bac130ab3cd60442dfdcc92f9b61e-MC.html


but there are some unexpected statistics in other tests. will summarize them soon
Comment by Andrei Baranouski [ 16/Oct/14 ]
for some cases, for exmaple Rb2OutEpt I still see considerably smaller ops/sec view requests values during and after rebalance out
 http://sdk-testresults.couchbase.com.s3.amazonaws.com/SDK-SDK/CB-3.0.0-1209/Rb2OutEpt-HYBRID/10-16-14/032248/0fc0dcd7fc34e7ad9aa92e6615c36329-CB.html
and MEMD:GENERIC error afte simple rebalance out 4-2 nodes
 http://sdk-testresults.couchbase.com.s3.amazonaws.com/SDK-SDK/CB-3.0.0-1209/Rb2OutEpt-HYBRID/10-16-14/032248/0fc0dcd7fc34e7ad9aa92e6615c36329-MC.html

latency increased after rebalance Rb2In, it should be less than
http://sdk-testresults.couchbase.com.s3.amazonaws.com/SDK-SDK/CB-3.0.0-1209/Rb2In-HYBRID/10-16-14/034067/f32ec4d1e53a4024e529676904f6d216-MC.html


MEMD:GENERIC error afte failover 1 EPT node and rebalance out
 http://sdk-testresults.couchbase.com.s3.amazonaws.com/SDK-SDK/CB-3.0.0-1209/FoEptRb-HYBRID/10-16-14/034611/981225e9aa00099891b40ae02ad922bb-MC.html


results are from http://sdkbuilds.couchbase.com/job/.net-sdkdclient-ng2_win2012_64_andrei/35/consoleFull

Comment by Jeff Morris [ 17/Oct/14 ]
These are run off of my machine using SDKD (see attachements above). Overall the results looks significantly better: MEMD:GENERIC and EVBUCKET go down after rebound along with latency, while generally performance improves.
Comment by Andrei Baranouski [ 18/Oct/14 ]
Hi Jeff, I think we can close this ticket because the original problem has been fixed
and to keep track of all the inconsistencies / problems that we see in different runs VS envs I created a separate ticket NCBC-690
Comment by Jeff Morris [ 18/Oct/14 ]
Ok, sounds good.
Comment by Jeff Morris [ 04/Nov/14 ]
Re-opening so I can set the fix version to Beta2
Comment by Jeff Morris [ 04/Nov/14 ]
Closing




Create Tests to ensure 1.X and 2.X work together in the same app domain (NCBC-651)

[NCBC-684] Rename Couchbase.dll to Couchbase.NetClient.dll Created: 14/Oct/14  Updated: 04/Nov/14  Resolved: 22/Oct/14

Status: Resolved
Project: Couchbase .NET client library
Component/s: library
Affects Version/s: 2.0 Beta
Fix Version/s: None

Type: Technical task Priority: Major
Reporter: Jeff Morris Assignee: Jeff Morris
Resolution: Fixed Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Comments   
Comment by Jeff Morris [ 22/Oct/14 ]
http://review.couchbase.org/#/c/42378/




ops/sec is not restored to the expected value even when warmup completed (restart 3/4 nodes) (NCBC-644)

[NCBC-683] When a node goes on/offline ensure that the cluster map is up to date Created: 14/Oct/14  Updated: 04/Nov/14  Resolved: 14/Oct/14

Status: Resolved
Project: Couchbase .NET client library
Component/s: library
Affects Version/s: 2.0 Beta
Fix Version/s: None

Type: Technical task Priority: Blocker
Reporter: Jeff Morris Assignee: Jeff Morris
Resolution: Fixed Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Relates to
relates to NCBC-644 ops/sec is not restored to the expect... Closed

 Description   
When a node crashes or otherwise goes offline, the client will continue to use the stale configuration. If the node becomes active again, the client will be in an inconsistent state because the node will be flagged as dead and unusable. This commit ensures that the client gets a fresh configuration in the case of a NMV or certain IO errors (forcibly closed or reset) even if the revision hasn't changed.

 Comments   
Comment by Jeff Morris [ 14/Oct/14 ]
http://review.couchbase.org/#/c/42101/




[NCBC-682] Make mutual exclusion locks RWSLs were applicable Created: 10/Oct/14  Updated: 04/Nov/14  Resolved: 10/Oct/14

Status: Resolved
Project: Couchbase .NET client library
Component/s: library
Affects Version/s: 2.0 Beta
Fix Version/s: None

Type: Task Priority: Major
Reporter: Jeff Morris Assignee: Jeff Morris
Resolution: Fixed Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Comments   
Comment by Jeff Morris [ 10/Oct/14 ]
http://review.couchbase.org/#/c/42021/




Make JSON Serializer open and extensible (NCBC-676)

[NCBC-681] Make JsonSerializerSettings externally configurable. Created: 10/Oct/14  Updated: 25/Nov/14  Resolved: 25/Nov/14

Status: Resolved
Project: Couchbase .NET client library
Component/s: library
Affects Version/s: 2.0 Beta
Fix Version/s: 2.0.0

Type: Technical task Priority: Major
Reporter: Jeff Morris Assignee: Jeff Morris
Resolution: Fixed Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Comments   
Comment by Jeff Morris [ 21/Oct/14 ]
Pull request submitted by Matt Nischan: http://review.couchbase.org/#/c/42317/




[NCBC-680] Support for fail fast cluster operations incase of down node Created: 10/Oct/14  Updated: 13/Oct/14

Status: Open
Project: Couchbase .NET client library
Component/s: library
Affects Version/s: None
Fix Version/s: backlog-1.0, .future

Type: Improvement Priority: Major
Reporter: Abhishek Singh Assignee: Jeff Morris
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Relates to

 Description   
Request is to expose an API in .Net SDK like Java SDK to provide a mechanism for failing fast requests mapping to a down node after "X" no. of timeout exceptions.

builder.setTimeoutExceptionThreshold(10), with this setting in-case of down node in cluster:

* For first 10 operations mapping to a down node, the client request will wait till timeout window(default 2.5s)
* For the 11 request, the operations will fail immediately and doesn't wait till timeout happens.




[NCBC-679] Implement "Limit" method to limit the number of items returned by a query Created: 09/Oct/14  Updated: 10/Oct/14  Resolved: 10/Oct/14

Status: Resolved
Project: Couchbase .NET client library
Component/s: None
Affects Version/s: None
Fix Version/s: None

Type: New Feature Priority: Major
Reporter: Jeff Morris Assignee: Jeff Morris
Resolution: Duplicate Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Comments   
Comment by Jeff Morris [ 10/Oct/14 ]
https://github.com/couchbaselabs/Linq2Couchbase/issues/2




[NCBC-678] Implement "Take" method for selecting a range of items from a superset Created: 09/Oct/14  Updated: 10/Oct/14  Resolved: 10/Oct/14

Status: Resolved
Project: Couchbase .NET client library
Component/s: None
Affects Version/s: None
Fix Version/s: None

Type: New Feature Priority: Major
Reporter: Jeff Morris Assignee: Jeff Morris
Resolution: Duplicate Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Comments   
Comment by Jeff Morris [ 10/Oct/14 ]
Moved: https://github.com/couchbaselabs/Linq2Couchbase/issues/3




[NCBC-677] Implement "WHERE" clause functionality Created: 09/Oct/14  Updated: 10/Oct/14  Resolved: 10/Oct/14

Status: Resolved
Project: Couchbase .NET client library
Component/s: None
Affects Version/s: None
Fix Version/s: None

Type: New Feature Priority: Major
Reporter: Jeff Morris Assignee: Jeff Morris
Resolution: Duplicate Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Comments   
Comment by Jeff Morris [ 10/Oct/14 ]
Moved: https://github.com/couchbaselabs/Linq2Couchbase/issues/4




[NCBC-676] Make JSON Serializer open and extensible Created: 08/Oct/14  Updated: 29/Oct/14

Status: Open
Project: Couchbase .NET client library
Component/s: library
Affects Version/s: 2.0 Beta
Fix Version/s: 2.0.1

Type: Story Priority: Major
Reporter: Jeff Morris Assignee: Jeff Morris
Resolution: Unresolved Votes: 0
Labels: None
Σ Remaining Estimate: Not Specified Remaining Estimate: Not Specified
Σ Time Spent: Not Specified Time Spent: Not Specified
Σ Original Estimate: Not Specified Original Estimate: Not Specified

Sub-Tasks:
Key
Summary
Type
Status
Assignee
NCBC-681 Make JsonSerializerSettings externall... Technical task Resolved Jeff Morris  

 Description   
Some customers may want to use a JSON serializer other than NewtonSoft, this feature makes the serialization interface extensible so that a consumer of the SDK can implement there own serializer.




[NCBC-675] Fixed servers with FQDN (ex: ubuntu.mybox) not properly resolving Created: 07/Oct/14  Updated: 04/Nov/14  Resolved: 16/Oct/14

Status: Resolved
Project: Couchbase .NET client library
Component/s: library
Affects Version/s: 2.0 Beta
Fix Version/s: None

Type: Bug Priority: Critical
Reporter: Jeff Morris Assignee: Jeff Morris
Resolution: Fixed Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   
If a bucket configuration returned from a Couchbase cluster contains a fully qualified domain name instead of an IP address, CouchbaseConfigContext will not properly resolve the endpoint, resulting in a null KeyMapper. Upon any operation that requires the KeyMapper, the Couchbase .Net client will throw a NullReferenceException.

 Comments   
Comment by Jeff Morris [ 09/Oct/14 ]
https://github.com/couchbase/couchbase-net-client/pull/20
Comment by Jeff Morris [ 16/Oct/14 ]
http://review.couchbase.org/41984




[NCBC-674] compilation error: Source file 'N1QL\CouchbaseBucket_N1QL_Tests.cs' could not be found Created: 07/Oct/14  Updated: 04/Nov/14  Resolved: 04/Nov/14

Status: Closed
Project: Couchbase .NET client library
Component/s: library
Affects Version/s: 2.0 Beta
Fix Version/s: 2.0 Beta 2

Type: Bug Priority: Critical
Reporter: Andrei Baranouski Assignee: Jeff Morris
Resolution: Fixed Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   
based on https://github.com/couchbase/couchbase-net-client/commit/82c1ed14faac20bacbbc5d634c36699e53b34370

1>------ Rebuild All started: Project: Couchbase, Configuration: Debug Any CPU ------
1> Restoring NuGet packages...
1> To prevent NuGet from downloading packages during build, open the Visual Studio Options dialog, click on the Package Manager node and uncheck 'Allow NuGet to download missing packages'.
1> All packages listed in packages.config are already installed.
1>D:\couchbase_src\couchbase-net-client\Src\Couchbase\IO\DefaultConnection.cs(90,47,90,50): warning CS0628: 'Couchbase.IO.DefaultConnection.IsSecure.set': new protected member declared in sealed class
1>D:\couchbase_src\couchbase-net-client\Src\Couchbase\Configuration\Server\Providers\ConfigProviderBase.cs(40,13,40,36): warning CS1717: Assignment made to same variable; did you mean to assign something else?
1>D:\couchbase_src\couchbase-net-client\Src\Couchbase\Configuration\Client\PoolConfiguration.cs(26,13,26,27): warning CS0612: 'Couchbase.Configuration.Client.PoolConfiguration.RecieveTimeout' is obsolete
1>D:\couchbase_src\couchbase-net-client\Src\Couchbase\Configuration\Client\PoolConfiguration.cs(38,13,38,27): warning CS0612: 'Couchbase.Configuration.Client.PoolConfiguration.RecieveTimeout' is obsolete
1>D:\couchbase_src\couchbase-net-client\Src\Couchbase\Configuration\ConfigContextBase.cs(53,13,53,36): warning CS1717: Assignment made to same variable; did you mean to assign something else?
1>D:\couchbase_src\couchbase-net-client\Src\Couchbase\Configuration\Server\Providers\FileSystem\FileSystemConfigProvider.cs(37,31,37,41): warning CS0612: 'Couchbase.Configuration.Server.Providers.FileSystem.ConfigInfo' is obsolete
1>D:\couchbase_src\couchbase-net-client\Src\Couchbase\IO\Strategies\Async\SocketAsyncStrategy.cs(83,26,83,47): warning CS0618: 'Couchbase.IO.Operations.IOperation.GetBuffer()' is obsolete: 'remove after refactoring async stuff'
1>D:\couchbase_src\couchbase-net-client\Src\Couchbase\IO\Strategies\Async\SocketAsyncStrategy.cs(131,30,131,51): warning CS0618: 'Couchbase.IO.Operations.IOperation.GetBuffer()' is obsolete: 'remove after refactoring async stuff'
1>D:\couchbase_src\couchbase-net-client\Src\Couchbase\IO\Strategies\Awaitable\AwaitableIOStrategy.cs(125,26,125,47): warning CS0618: 'Couchbase.IO.Operations.IOperation.GetBuffer()' is obsolete: 'remove after refactoring async stuff'
1>D:\couchbase_src\couchbase-net-client\Src\Couchbase\IO\Strategies\SaeaConnection.cs(51,26,51,47): warning CS0618: 'Couchbase.IO.Operations.IOperation.GetBuffer()' is obsolete: 'remove after refactoring async stuff'
1>D:\couchbase_src\couchbase-net-client\Src\Couchbase\IO\Strategies\SaeaConnection.cs(91,25,91,44): warning CS0612: 'Couchbase.IO.ConnectionBase.CreateHeader(Couchbase.IO.Strategies.Awaitable.OperationAsyncState)' is obsolete
1>D:\couchbase_src\couchbase-net-client\Src\Couchbase\IO\Strategies\SaeaConnection.cs(106,25,106,42): warning CS0612: 'Couchbase.IO.ConnectionBase.CreateBody(Couchbase.IO.Strategies.Awaitable.OperationAsyncState)' is obsolete
1> Couchbase -> D:\couchbase_src\couchbase-net-client\Src\Couchbase\bin\Debug\Couchbase.dll
2>------ Rebuild All started: Project: Couchbase.Tests, Configuration: Debug Any CPU ------
3>------ Rebuild All started: Project: Couchbase.Tests.Management, Configuration: Debug Any CPU ------
2> Restoring NuGet packages...
2> To prevent NuGet from downloading packages during build, open the Visual Studio Options dialog, click on the Package Manager node and uncheck 'Allow NuGet to download missing packages'.
2> All packages listed in packages.config are already installed.
2>CSC : error CS2001: Source file 'N1QL\CouchbaseBucket_N1QL_Tests.cs' could not be found
4>------ Rebuild All started: Project: tester, Configuration: Debug Any CPU ------
5>------ Rebuild All started: Project: tester-1.3.x, Configuration: Debug Any CPU ------
3> Restoring NuGet packages...
3> To prevent NuGet from downloading packages during build, open the Visual Studio Options dialog, click on the Package Manager node and uncheck 'Allow NuGet to download missing packages'.
3> All packages listed in packages.config are already installed.
3> Couchbase.Tests.Management -> D:\couchbase_src\couchbase-net-client\Src\Couchbase.Tests.Management\bin\Debug\Couchbase.Tests.Management.dll
5> Restoring NuGet packages...
5> To prevent NuGet from downloading packages during build, open the Visual Studio Options dialog, click on the Package Manager node and uncheck 'Allow NuGet to download missing packages'.
5> All packages listed in packages.config are already installed.
5>CSC : error CS0006: Metadata file 'D:\couchbase_src\couchbase-net-client\Src\Couchbase.Tests\bin\Debug\Couchbase.Tests.dll' could not be found
4> Restoring NuGet packages...
4> To prevent NuGet from downloading packages during build, open the Visual Studio Options dialog, click on the Package Manager node and uncheck 'Allow NuGet to download missing packages'.
4> All packages listed in packages.config are already installed.
4>CSC : error CS0006: Metadata file 'D:\couchbase_src\couchbase-net-client\Src\Couchbase.Tests\bin\Debug\Couchbase.Tests.dll' could not be found
========== Rebuild All: 2 succeeded, 3 failed, 0 skipped ==========


 Comments   
Comment by Andrei Baranouski [ 07/Oct/14 ]
and then 4>D:\couchbase_src\couchbase-net-client\Src\tester\Program.cs(21,24,21,40): error CS0246: The type or namespace name 'CouchbaseCluster' could not be found (are you missing a using directive or an assembly reference?)
Comment by Jeff Morris [ 07/Oct/14 ]
http://review.couchbase.org/#/c/41914/
Comment by Jeff Morris [ 04/Nov/14 ]
Re-opening so I can set the fix version to Beta2
Comment by Jeff Morris [ 04/Nov/14 ]
Closing




[NCBC-673] MEMD_ENOENT errors after failover nodes even they returned back to cluster (ReAdd2-HYBRID test) + GENERIC errors for SvcRestart Created: 06/Oct/14  Updated: 04/Nov/14  Resolved: 04/Nov/14

Status: Closed
Project: Couchbase .NET client library
Component/s: library
Affects Version/s: 2.0 Beta
Fix Version/s: 2.0 Beta 2

Type: Bug Priority: Blocker
Reporter: Andrei Baranouski Assignee: Jeff Morris
Resolution: Fixed Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Duplicate
duplicates NCBC-644 ops/sec is not restored to the expect... Closed

 Description   
http://sdkbuilds.couchbase.com/job/.net-sdkdclient-ng2-andrei/130/consoleFull

 http://sdk-testresults.couchbase.com.s3.amazonaws.com/SDK-SDK/CB-3.0.0-1209/ReAdd2-HYBRID/10-06-14/064871/6aef7d8d48671cde730dbb41380a5413-MC.html


Scenario Description

Ramp for 30 seconds. Cluster modification: Fail over 2 nodes. Then sleep for 45 seconds and readd the nodes to the cluster and rebalance. Rebound for 90 seconds.

============================================================
Running ReAdd2-HYBRID: 2014-10-06 11:01:11
    workload=HybridWorkloadGroup
    failover/next_action=FO_READD_REBALANCE
    failover/count=2
    failover/next_delay=45
    testcase=FailoverScenario
    Logging to c:\jenkins\workspace\.net-sdkdclient-ng2-andrei\sdkdclient-ng\log\SDK-SDK\CB-3.0.0-1209\ReAdd2-HYBRID\10-06-14\064871\6aef7d8d48671cde730dbb41380a5413


 Comments   
Comment by Andrei Baranouski [ 07/Oct/14 ]
the same picture is with GENERIC errors for SvcRestart test http://sdk-testresults.couchbase.com.s3.amazonaws.com/SDK-SDK/CB-3.0.0-1209/SvcRestart-HYBRID/10-07-14/038610/68ba548f928d0e7f97e0f181e8ff152f-MC.html
Comment by Jeff Morris [ 07/Oct/14 ]
Client configuration is not updating so client continues to use stale config. Fix coming.
Comment by Jeff Morris [ 08/Oct/14 ]
http://review.couchbase.org/#/c/41975/1
Comment by Andrei Baranouski [ 09/Oct/14 ]
the problem still exists for ReAdd2 and SvcRestart tests
http://sdk-testresults.couchbase.com.s3.amazonaws.com/SDK-SDK/CB-3.0.0-1209/ReAdd2-HYBRID/10-09-14/028282/fed371fd57cce09134286cdf5e9e4fb1-MC.html
http://sdk-testresults.couchbase.com.s3.amazonaws.com/SDK-SDK/CB-3.0.0-1209/SvcRestart-HYBRID/10-09-14/029367/b4ca84fc5f47cff3e56920c950c58b35-MC.html
Comment by Andrei Baranouski [ 09/Oct/14 ]
logs from http://sdkbuilds.couchbase.com/job/.net-sdkdclient-ng2-andrei/134/ against 2.5.0-1059
https://s3.amazonaws.com/bugdb/jira/NCBC-673/c671ec77/NCBC-673.zip
Comment by Jeff Morris [ 09/Oct/14 ]
thx, for logs will go splunking!
Comment by Andrei Baranouski [ 09/Oct/14 ]
separate logs for ReAdd2 2.5.0-1059

https://s3.amazonaws.com/bugdb/jira/NCBC-673/21395dd3/NCBC-673_ReAdd2.zip
sdk-testresults.couchbase.com.s3.amazonaws.com/SDK-SDK/CB-2.5.0-1059/ReAdd2-HYBRID/10-09-14/066452/8b8633eafb7b019c4fc552cdef347a83-MC.html

Comment by Jeff Morris [ 10/Oct/14 ]
Andrei -

Can you re-run the tests ASAP, but set ClientConfiguration.EnableConfigHeartBeat = false first? I am getting too much noise in the logs with heartbeat configuration.

-Jeff
Comment by Jeff Morris [ 10/Oct/14 ]
Also, please separate out the logs as best you can too keep the size down.
Comment by Andrei Baranouski [ 10/Oct/14 ]

only ReAdd2 test with EnableConfigHeartBeat = false http://sdkbuilds.couchbase.com/job/.net-sdkdclient-ng2-andrei/138/console

http://sdk-testresults.couchbase.com.s3.amazonaws.com/SDK-SDK/CB-3.0.0-1209/ReAdd2-HYBRID/10-10-14/073470/c3a685eab55d9e4d1b9680a88af5f7e4-MC.html

https://s3.amazonaws.com/bugdb/jira/NCBC-673/b047a37a/ReAdd2_EnableConfigHeartBeat_false.zip
Comment by Jeff Morris [ 12/Oct/14 ]
http://review.couchbase.org/#/
Comment by Andrei Baranouski [ 13/Oct/14 ]
Several times I ran the ReAdd2 tests.

only the first time I was able to get good results at the end of the rebalance(without any errors but with the rest of the big latency)
http://sdk-testresults.couchbase.com.s3.amazonaws.com/SDK-SDK/CB-3.0.0-1209/ReAdd2-HYBRID/10-12-14/023544/cc5be1f2ba6fcfb2f715d4c524395937-MC.html
(from http://sdkbuilds.couchbase.com/job/.net-sdkdclient-ng2-andrei/140/consoleFull)



in all other starts I got the same problem:
http://sdk-testresults.couchbase.com.s3.amazonaws.com/SDK-SDK/CB-3.0.0-1209/ReAdd2-HYBRID/10-13-14/038568/cc9709ad6d53d501089f154c18595897-MC.html
http://sdkbuilds.couchbase.com/job/.net-sdkdclient-ng2-andrei/144/consoleFull
https://s3.amazonaws.com/bugdb/jira/NCBC-673/63703d71/NCBC-673_ReAdd_144.zip


Comment by Matt Ingenthron [ 13/Oct/14 ]
Andrei: This is a 4 node cluster, and you failover 2 nodes with only one replica. In that case I believe we expect ENOENT since some vbuckets would be failed over without replicas. Am I wrong here?
Comment by Andrei Baranouski [ 13/Oct/14 ]
oh yeah, that's right!

also after the Jeff's fix the latency returns back to _expected, so the bug has been fixed completely



 
Comment by Andrei Baranouski [ 13/Oct/14 ]
the problem is solved, I apologize for my carelessness
Comment by Jeff Morris [ 04/Nov/14 ]
Re-opening so I can set the fix version to Beta2
Comment by Jeff Morris [ 04/Nov/14 ]
Closing




[NCBC-672] Create LoadDocument() method to be an analog to GetDocument() Created: 06/Oct/14  Updated: 13/Oct/14

Status: Open
Project: Couchbase .NET client library
Component/s: library
Affects Version/s: 2.0 Beta
Fix Version/s: backlog-2.0

Type: Bug Priority: Minor
Reporter: Mark Nunberg Assignee: Jeff Morris
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   
There should be an equivalent method to simply "Load" a pre-made document:

        static public IDocumentResult<T> LoadDocument<T>(this Couchbase.Core.IBucket bucket, IDocument<T> doc)
        {
            var res = bucket.GetDocument<T>(doc.Id);
            doc.Value = res.Value;
            doc.Cas = res.Document.Cas;
            return res;
        }

or similar




[NCBC-671] During rebalance client blocks while updating configuration causing high latency Created: 05/Oct/14  Updated: 04/Nov/14  Resolved: 12/Oct/14

Status: Resolved
Project: Couchbase .NET client library
Component/s: library
Affects Version/s: 2.0 Beta
Fix Version/s: None

Type: Bug Priority: Critical
Reporter: Jeff Morris Assignee: Jeff Morris
Resolution: Duplicate Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Duplicate
is duplicated by NCBC-644 ops/sec is not restored to the expect... Closed
Relates to
relates to NCBC-665 significant regression in memcached o... Closed

 Comments   
Comment by Jeff Morris [ 05/Oct/14 ]
2) for some tests latency is still high, for example http://sdk-testresults.couchbase.com.s3.amazonaws.com/SDK-SDK/CB-3.0.0-1209/Rb2OutEpt-HYBRID/10-03-14/065541/b4930d641ec45014b14eed2bf61d9422-MC.html
3) still a lot of MEMD_ENOENT errors for some tests, for example http://sdk-testresults.couchbase.com.s3.amazonaws.com/SDK-SDK/CB-3.0.0-1209/ReAdd2-HYBRID/10-03-14/066417/f24ae77ed735a764be0cfca39992fd31-MC.html
where rebalance( readd) completed but there are persistent errors with MEMD_ENOENT
4) queries ops drop to ~0 during rebalance http://sdk-testresults.couchbase.com.s3.amazonaws.com/SDK-SDK/CB-3.0.0-1209/ReAdd2-HYBRID/10-03-14/066417/f24ae77ed735a764be0cfca39992fd31-CB.html
Comment by Jeff Morris [ 05/Oct/14 ]
I can verify through the logs that during a rebalance for periods of time the client is spending 100% updating configuration and 0% processing operations.
Comment by Jeff Morris [ 07/Oct/14 ]
My previous comment is invalid. The client doesn't block, but request times from the server increase from ~100ms-~5...30s. This behavior is reproducible in LBC as well.

-Time to reconfigure client ~10ms
-Time between application initiating operation and total operation time is ~0-1ms
Comment by Jeff Morris [ 12/Oct/14 ]
NCBC-644




[NCBC-670] HTTP Streaming uri parsing fails when $HOST placeholder is not populated Created: 03/Oct/14  Updated: 04/Nov/14  Resolved: 09/Oct/14

Status: Resolved
Project: Couchbase .NET client library
Component/s: library
Affects Version/s: 2.0 Beta
Fix Version/s: None

Type: Bug Priority: Major
Reporter: Jeff Morris Assignee: Jeff Morris
Resolution: Duplicate Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Duplicate
is duplicated by NCBC-668 $HOST causes parsing error on Memcach... Resolved

 Comments   
Comment by Jeff Morris [ 09/Oct/14 ]
http://review.couchbase.org/#/c/41897/
Comment by Jeff Morris [ 09/Oct/14 ]
Fixed by NCBC-668




[NCBC-669] Client incorrectly assumes 1024 vbuckets Created: 03/Oct/14  Updated: 04/Nov/14  Resolved: 03/Oct/14

Status: Resolved
Project: Couchbase .NET client library
Component/s: library
Affects Version/s: 2.0 Beta
Fix Version/s: None

Type: Task Priority: Major
Reporter: Mark Nunberg Assignee: Jeff Morris
Resolution: Fixed Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   
The number of vbuckets is not hard coded into the cluster code. there is a default of 1024 for Linux, but this is different for OS X which has 64 vbuckets. Additionally the number of vbuckets can also be modified (before a bucket is created) by setting an environment variable.

Solution (for now) is to set the Mask value to _vBuckets.count

 Comments   
Comment by Jeff Morris [ 03/Oct/14 ]
http://review.couchbase.org/#/c/41864/




[NCBC-668] $HOST causes parsing error on Memcached buckets Created: 03/Oct/14  Updated: 04/Nov/14  Resolved: 05/Oct/14

Status: Resolved
Project: Couchbase .NET client library
Component/s: library
Affects Version/s: 2.0 Beta
Fix Version/s: None

Type: Bug Priority: Blocker
Reporter: Jeff Morris Assignee: Jeff Morris
Resolution: Fixed Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Duplicate
duplicates NCBC-670 HTTP Streaming uri parsing fails when... Resolved

 Description   
From email:

"First is when i try to run the new client against memcached bucket. There is the same issue with $HOST coming from HttpStreamingProvider instead of CarrierPublicationProvider.


System.UriFormatException was caught
  HResult=-2146233033
  Message=Invalid URI: The hostname could not be parsed.
  Source=System
  StackTrace:
       at System.Uri.CreateThis(String uri, Boolean dontEscape, UriKind uriKind)
       at Couchbase.Core.ClusterController.UpdateBootstrapList(IBucketConfig bucketConfig) in c:\Temp\couchbase-net-client-master\Src\Couchbase\Core\ClusterController.cs:line 233
       at Couchbase.Core.ClusterController.CreateBucket(String bucketName, String password) in c:\Temp\couchbase-net-client-master\Src\Couchbase\Core\ClusterController.cs:line 207
  InnerException:
"

 Comments   
Comment by Jeff Morris [ 04/Oct/14 ]
http://review.couchbase.org/41889
Comment by Jeff Morris [ 05/Oct/14 ]
I missed one code execution path: the initial config request which is not done by the streaming HTTP mechanism.
Comment by Jeff Morris [ 05/Oct/14 ]
http://review.couchbase.org/#/c/41897/




[NCBC-667] ThrowArgumentOutOfRangeException at Couchbase.Core.VBucket.LocatePrimary() with/out rebalance Created: 03/Oct/14  Updated: 04/Nov/14  Resolved: 04/Nov/14

Status: Closed
Project: Couchbase .NET client library
Component/s: library
Affects Version/s: 2.0 Beta
Fix Version/s: 2.0 Beta 2

Type: Bug Priority: Blocker
Reporter: Andrei Baranouski Assignee: Jeff Morris
Resolution: Fixed Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   
http://sdkbuilds.couchbase.com/job/.net-sdkdclient-ng2-andrei/128/consoleFull

1) at the end of the rebalance
Running Rb2Out-HYBRID: 2014-10-03 11:19:19

[746.42 DEBUG] (RebalanceWaiter sweepOnce:38) Rebalance Progress: 100%
[747.42 DEBUG] (RebalanceWaiter sweepOnce:38) Rebalance Progress: 100%
[748.43 DEBUG] (RebalanceWaiter sweepOnce:38) Rebalance Progress: 100%
[749.47 INFO] (RebalanceWaiter sweepOnce:33) Rebalance complete
[749.47 INFO] (Scenario run:97) CHANGE phase done
[749.47 INFO] (Scenario run:103) Starting REBOUND for 90 seconds
[750.41 INFO] (SDKD log:137) [Sdkd.Result|Warn] Unrecognized return code 409 
[750.72 INFO] (SDKD log:137) 
[750.74 INFO] (SDKD log:137) Unhandled Exception: System.ArgumentOutOfRangeException: Index was out of range. Must be non-negative and less than the size of the collection.
[750.74 INFO] (SDKD log:137) Parameter name: index
[768.68 INFO] (LineGobbler doFilter:115) +++ Following exception has internal ID: 1
[768.68 INFO] (SDKD log:137)  at System.ThrowHelper.ThrowArgumentOutOfRangeException()
   at System.Collections.Generic.List`1.get_Item(Int32 index)
   at Couchbase.Core.VBucket.LocatePrimary() in c:\jenkins\workspace\.net-sdkdclient-ng2-andrei\couchbase-net-client\Src\Couchbase\Core\VBucket.cs:line 37
   at Couchbase.Core.Buckets.CouchbaseBucket.GetServer(String key, IVBucket& vBucket) in c:\jenkins\workspace\.net-sdkdclient-ng2-andrei\couchbase-net-client\Src\Couchbase\Core\Buckets\CouchbaseBucket.cs:line 90
   at Couchbase.Core.Buckets.CouchbaseBucket.SendWithRetry[T](IOperation`1 operation) in c:\jenkins\workspace\.net-sdkdclient-ng2-andrei\couchbase-net-client\Src\Couchbase\Core\Buckets\CouchbaseBucket.cs:line 100
   at Couchbase.Core.Buckets.CouchbaseBucket.Upsert[T](String key, T value) in c:\jenkins\workspace\.net-sdkdclient-ng2-andrei\couchbase-net-client\Src\Couchbase\Core\Buckets\CouchbaseBucket.cs:line 335
   at Sdkd.Commands.SetCommand.ExecuteSingle(String key, String value) in c:\jenkins\workspace\.net-sdkdclient-ng2-andrei\sdkd-net\src\Sdkd\Commands\SetCommand.cs:line 78
   at Sdkd.Commands.KVCommand.Run() in c:\jenkins\workspace\.net-sdkdclient-ng2-andrei\sdkd-net\src\Sdkd\Commands\KVCommand.cs:line 24
   at SdkdConsole.Daemon.Handle.DispatchCommand(Request req, CouchbaseBucket cli) in c:\jenkins\workspace\.net-sdkdclient-ng2-andrei\sdkd-net\src\SdkdConsole\Daemon\Handle.cs:line 266
   at SdkdConsole.Daemon.Handle.Run() in c:\jenkins\workspace\.net-sdkdclient-ng2-andrei\sdkd-net\src\SdkdConsole\Daemon\Handle.cs:line 146
   at System.Threading.ThreadHelper.ThreadStart_Context(Object state)
   at System.Threading.ExecutionContext.RunInternal(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean preserveSyncCtx)
   at System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean preserveSyncCtx)
   at System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state)
   at System.Threading.ThreadHelper.ThreadStart()


2) without rebalance

Running Rb2In-HYBRID: 2014-10-03 11:33:02

[1313.93 INFO] (SDKD log:137) [Sdkd.Control|Info] Got a new connection. Creating child handle 
[1313.94 INFO] (SDKD log:137) [Sdkd.Control|Info] Registering handle 269 
[1314.06 DEBUG] (Handle receiveMessage:158) < NEWHANDLE@269.449
[1314.06 DEBUG] (Handle sendMessageAsync:183) > CB_VIEW_LOAD@269.450 => {DSType=DSTYPE_SEEDED, DS={KSeed=ViewFillerSeed, VSeed=ViewFillerSeed, Count=1000, Continuous=false, VSize=512, Repeat=rep, KSize=12}, Schema={InflateContent=meh, InflateLevel=40}, Options={DelayMax=0, DelayMin=0, IterWait=1, TimeRes=0}}
[1314.06 INFO] (SDKD log:137) [Sdkd.Handle|Warn] Got command CB_VIEW_LOAD 
[1314.06 INFO] (SDKD log:137) [Sdkd.Handle|Warn] Command data: {
[1314.06 INFO] (SDKD log:137)  "DSType": "DSTYPE_SEEDED",
[1314.07 INFO] (SDKD log:137)  "DS": {
[1314.07 INFO] (SDKD log:137)  "KSeed": "ViewFillerSeed",
[1314.07 INFO] (SDKD log:137)  "VSeed": "ViewFillerSeed",
[1314.07 INFO] (SDKD log:137)  "Count": 1000,
[1314.07 INFO] (SDKD log:137)  "Continuous": false,
[1314.07 INFO] (SDKD log:137)  "VSize": 512,
[1314.07 INFO] (SDKD log:137)  "Repeat": "rep",
[1314.07 INFO] (SDKD log:137)  "KSize": 12
[1314.07 INFO] (SDKD log:137)  },
[1314.07 INFO] (SDKD log:137)  "Schema": {
[1314.07 INFO] (SDKD log:137)  "InflateContent": "meh",
[1314.07 INFO] (SDKD log:137)  "InflateLevel": 40
[1314.07 INFO] (SDKD log:137)  },
[1314.07 INFO] (SDKD log:137)  "Options": {
[1314.07 INFO] (SDKD log:137)  "DelayMax": 0,
[1314.07 INFO] (SDKD log:137)  "DelayMin": 0,
[1314.07 INFO] (SDKD log:137)  "IterWait": 1,
[1314.07 INFO] (SDKD log:137)  "TimeRes": 0
[1314.07 INFO] (SDKD log:137)  }
[1314.08 INFO] (SDKD log:137) } 
[1319.42 INFO] (SDKD log:137) [Sdkd.ViewLoader|Warn] there are no OK responses in ViewLoader 
[1319.42 INFO] (SDKD log:137) [Sdkd.ViewLoader|Info] Summary details: {
[1319.42 DEBUG] (Handle receiveMessage:158) < CB_VIEW_LOAD@269.450 => {[OK]: 1000}
[1319.43 INFO] (SDKD log:137)  "0": 1000
[1319.43 DEBUG] (Handle sendMessageAsync:183) > CLOSEHANDLE@269.451
[1319.43 INFO] (SDKD log:137) } 
[1319.43 INFO] (SDKD log:137) [Sdkd.Handle|Warn] Got command CLOSEHANDLE 
[1319.43 INFO] (SDKD log:137) [Sdkd.Handle|Warn] Command data: {} 
[1319.43 INFO] (SDKD log:137) [Sdkd.ClientFactory|Info] Release CouchbaseBucket -1988438843 
[1319.43 DEBUG] (Handle sendMessageAsync:183) > NEWHANDLE@270.452 => {Port=8091, Bucket=default, Options={SSL=false, Username=default, Password=, OtherNodes=[["10.3.3.206",8091]]}, Hostname=10.3.121.134}
[1319.43 INFO] (SDKD log:137) [Sdkd.Control|Info] Got a new connection. Creating child handle 
[1319.43 INFO] (SDKD log:137) [Sdkd.Handle|Warn] DispatchCommand(req, SdkHandle) == false 
[1319.43 INFO] (SDKD log:137) [Sdkd.Control|Info] Registering handle 270 
[1319.47 DEBUG] (Handle receiveMessage:158) < NEWHANDLE@270.452
[1319.47 DEBUG] (Handle sendMessageAsync:183) > CB_VIEW_QUERY@270.453 => {DSType=DSTYPE_SEEDED, DS={}, ViewParameters={limit=0}, DesignName=test_design, Options={DelayMax=10, DelayMin=1, IterWait=1, ViewQueryCount=-1, ViewQueryDelay=0, TimeRes=1}, ViewName=test_view}
[1319.47 INFO] (SDKD log:137) [Sdkd.Handle|Warn] Got command CB_VIEW_QUERY 
[1319.47 INFO] (SDKD log:137) [Sdkd.Handle|Warn] Command data: {
[1319.47 INFO] (SDKD log:137)  "DSType": "DSTYPE_SEEDED",
[1319.47 DEBUG] (Handle sendMessageAsync:183) > NEWHANDLE@271.454 => {Port=8091, Bucket=default, Options={SSL=false, Username=default, Password=, OtherNodes=[["10.3.3.206",8091]]}, Hostname=10.3.121.134}
[1319.47 INFO] (SDKD log:137)  "DS": {},
[1319.47 INFO] (SDKD log:137)  "ViewParameters": {
[1319.48 INFO] (SDKD log:137)  "limit": 0
[1319.48 INFO] (SDKD log:137)  },
[1319.48 INFO] (SDKD log:137)  "DesignName": "test_design",
[1319.48 INFO] (SDKD log:137)  "Options": {
[1319.48 INFO] (SDKD log:137)  "DelayMax": 10,
[1319.48 INFO] (SDKD log:137)  "DelayMin": 1,
[1319.48 INFO] (SDKD log:137)  "IterWait": 1,
[1319.48 INFO] (SDKD log:137)  "ViewQueryCount": -1,
[1319.48 INFO] (SDKD log:137)  "ViewQueryDelay": 0,
[1319.48 INFO] (SDKD log:137)  "TimeRes": 1
[1319.48 INFO] (SDKD log:137)  },
[1319.48 INFO] (SDKD log:137)  "ViewName": "test_view"
[1319.48 INFO] (SDKD log:137) } 
[1319.48 INFO] (SDKD log:137) [Sdkd.Control|Info] Got a new connection. Creating child handle 
[1319.49 INFO] (SDKD log:137) [Sdkd.Control|Info] Registering handle 271 
[1319.55 DEBUG] (Handle receiveMessage:158) < NEWHANDLE@271.454
[1319.55 DEBUG] (Handle sendMessageAsync:183) > CB_VIEW_QUERY@271.455 => {DSType=DSTYPE_SEEDED, DS={}, ViewParameters={limit=0}, DesignName=test_design, Options={DelayMax=10, DelayMin=1, IterWait=1, ViewQueryCount=-1, ViewQueryDelay=0, TimeRes=1}, ViewName=test_view}
[1319.55 INFO] (SDKD log:137) [Sdkd.Handle|Warn] Got command CB_VIEW_QUERY 
[1319.55 INFO] (SDKD log:137) [Sdkd.Handle|Warn] Command data: {
[1319.55 DEBUG] (Handle sendMessageAsync:183) > NEWHANDLE@272.456 => {Port=8091, Bucket=default, Options={SSL=false, Username=default, Password=, OtherNodes=[["10.3.3.206",8091]]}, Hostname=10.3.121.134}
[1319.55 INFO] (SDKD log:137)  "DSType": "DSTYPE_SEEDED",
[1319.55 INFO] (SDKD log:137)  "DS": {},
[1319.55 INFO] (SDKD log:137)  "ViewParameters": {
[1319.55 INFO] (SDKD log:137)  "limit": 0
[1319.56 INFO] (SDKD log:137)  },
[1319.56 INFO] (SDKD log:137)  "DesignName": "test_design",
[1319.56 INFO] (SDKD log:137)  "Options": {
[1319.56 INFO] (SDKD log:137)  "DelayMax": 10,
[1319.56 INFO] (SDKD log:137)  "DelayMin": 1,
[1319.56 INFO] (SDKD log:137)  "IterWait": 1,
[1319.56 INFO] (SDKD log:137)  "ViewQueryCount": -1,
[1319.56 INFO] (SDKD log:137)  "ViewQueryDelay": 0,
[1319.56 INFO] (SDKD log:137)  "TimeRes": 1
[1319.56 INFO] (SDKD log:137)  },
[1319.56 INFO] (SDKD log:137)  "ViewName": "test_view"
[1319.56 INFO] (SDKD log:137) } 
[1319.56 INFO] (SDKD log:137) [Sdkd.Control|Info] Got a new connection. Creating child handle 
[1319.56 INFO] (SDKD log:137) [Sdkd.Control|Info] Registering handle 272 
[1319.62 DEBUG] (Handle receiveMessage:158) < NEWHANDLE@272.456
[1319.62 DEBUG] (Handle sendMessageAsync:183) > CB_VIEW_QUERY@272.457 => {DSType=DSTYPE_SEEDED, DS={}, ViewParameters={limit=0}, DesignName=test_design, Options={DelayMax=10, DelayMin=1, IterWait=1, ViewQueryCount=-1, ViewQueryDelay=0, TimeRes=1}, ViewName=test_view}
[1319.62 INFO] (SDKD log:137) [Sdkd.Handle|Warn] Got command CB_VIEW_QUERY 
[1319.62 INFO] (SDKD log:137) [Sdkd.Handle|Warn] Command data: {
[1319.62 DEBUG] (Handle sendMessageAsync:183) > NEWHANDLE@273.458 => {Port=8091, Bucket=default, Options={SSL=false, Username=default, Password=, OtherNodes=[["10.3.3.206",8091]]}, Hostname=10.3.121.134}
[1319.62 INFO] (SDKD log:137)  "DSType": "DSTYPE_SEEDED",
[1319.62 INFO] (SDKD log:137)  "DS": {},
[1319.62 INFO] (SDKD log:137)  "ViewParameters": {
[1319.62 INFO] (SDKD log:137)  "limit": 0
[1319.62 INFO] (SDKD log:137)  },
[1319.62 INFO] (SDKD log:137)  "DesignName": "test_design",
[1319.62 INFO] (SDKD log:137)  "Options": {
[1319.62 INFO] (SDKD log:137)  "DelayMax": 10,
[1319.62 INFO] (SDKD log:137)  "DelayMin": 1,
[1319.63 INFO] (SDKD log:137)  "IterWait": 1,
[1319.63 INFO] (SDKD log:137)  "ViewQueryCount": -1,
[1319.63 INFO] (SDKD log:137)  "ViewQueryDelay": 0,
[1319.63 INFO] (SDKD log:137)  "TimeRes": 1
[1319.63 INFO] (SDKD log:137)  },
[1319.63 INFO] (SDKD log:137)  "ViewName": "test_view"
[1319.63 INFO] (SDKD log:137) } 
[1319.63 INFO] (SDKD log:137) [Sdkd.Control|Info] Got a new connection. Creating child handle 
[1319.63 INFO] (SDKD log:137) [Sdkd.Control|Info] Registering handle 273 
[1319.66 DEBUG] (Handle receiveMessage:158) < NEWHANDLE@273.458
[1319.66 DEBUG] (Handle sendMessageAsync:183) > CB_VIEW_QUERY@273.459 => {DSType=DSTYPE_SEEDED, DS={}, ViewParameters={limit=0}, DesignName=test_design, Options={DelayMax=10, DelayMin=1, IterWait=1, ViewQueryCount=-1, ViewQueryDelay=0, TimeRes=1}, ViewName=test_view}
[1319.67 INFO] (SDKD log:137) [Sdkd.Handle|Warn] Got command CB_VIEW_QUERY 
[1319.67 INFO] (SDKD log:137) [Sdkd.Handle|Warn] Command data: {
[1319.67 INFO] (SDKD log:137)  "DSType": "DSTYPE_SEEDED",
[1319.67 DEBUG] (Handle sendMessageAsync:183) > NEWHANDLE@274.460 => {Port=8091, Bucket=default, Options={SSL=false, Username=default, Password=, OtherNodes=[["10.3.3.206",8091]]}, Hostname=10.3.121.134}
[1319.67 INFO] (SDKD log:137)  "DS": {},
[1319.67 INFO] (SDKD log:137)  "ViewParameters": {
[1319.67 INFO] (SDKD log:137)  "limit": 0
[1319.67 INFO] (SDKD log:137)  },
[1319.67 INFO] (SDKD log:137)  "DesignName": "test_design",
[1319.67 INFO] (SDKD log:137)  "Options": {
[1319.67 INFO] (SDKD log:137)  "DelayMax": 10,
[1319.67 INFO] (SDKD log:137)  "DelayMin": 1,
[1319.67 INFO] (SDKD log:137)  "IterWait": 1,
[1319.67 INFO] (SDKD log:137)  "ViewQueryCount": -1,
[1319.67 INFO] (SDKD log:137)  "ViewQueryDelay": 0,
[1319.67 INFO] (SDKD log:137)  "TimeRes": 1
[1319.67 INFO] (SDKD log:137)  },
[1319.67 INFO] (SDKD log:137)  "ViewName": "test_view"
[1319.67 INFO] (SDKD log:137) } 
[1319.67 INFO] (SDKD log:137) [Sdkd.Control|Info] Got a new connection. Creating child handle 
[1319.67 INFO] (SDKD log:137) [Sdkd.Control|Info] Registering handle 274 
[1319.73 DEBUG] (Handle receiveMessage:158) < NEWHANDLE@274.460
[1319.73 DEBUG] (Handle sendMessageAsync:183) > CB_VIEW_QUERY@274.461 => {DSType=DSTYPE_SEEDED, DS={}, ViewParameters={limit=0}, DesignName=test_design, Options={DelayMax=10, DelayMin=1, IterWait=1, ViewQueryCount=-1, ViewQueryDelay=0, TimeRes=1}, ViewName=test_view}
[1319.73 INFO] (Scenario run:83) RAMP phase started. Waiting for 30 seconds
[1319.73 INFO] (SDKD log:137) [Sdkd.Handle|Warn] Got command CB_VIEW_QUERY 
[1319.73 INFO] (SDKD log:137) [Sdkd.Handle|Warn] Command data: {
[1319.73 INFO] (SDKD log:137)  "DSType": "DSTYPE_SEEDED",
[1319.73 INFO] (SDKD log:137)  "DS": {},
[1319.73 INFO] (SDKD log:137)  "ViewParameters": {
[1319.73 INFO] (SDKD log:137)  "limit": 0
[1319.73 INFO] (SDKD log:137)  },
[1319.73 INFO] (SDKD log:137)  "DesignName": "test_design",
[1319.73 INFO] (SDKD log:137)  "Options": {
[1319.73 INFO] (SDKD log:137)  "DelayMax": 10,
[1319.73 INFO] (SDKD log:137)  "DelayMin": 1,
[1319.73 INFO] (SDKD log:137)  "IterWait": 1,
[1319.73 INFO] (SDKD log:137)  "ViewQueryCount": -1,
[1319.73 INFO] (SDKD log:137)  "ViewQueryDelay": 0,
[1319.73 INFO] (SDKD log:137)  "TimeRes": 1
[1319.73 INFO] (SDKD log:137)  },
[1319.73 INFO] (SDKD log:137)  "ViewName": "test_view"
[1319.73 INFO] (SDKD log:137) } 
[1349.73 INFO] (Scenario run:86) Starting CHANGE phase
[1362.04 DEBUG] (RebalanceWaiter sweepOnce:38) Rebalance Progress: 0%
[1363.05 DEBUG] (RebalanceWaiter sweepOnce:38) Rebalance Progress: 0%
[1363.22 INFO] (SDKD log:137) 
[1363.25 INFO] (SDKD log:137) Unhandled Exception: System.ArgumentOutOfRangeException: Index was out of range. Must be non-negative and less than the size of the collection.
[1363.25 INFO] (SDKD log:137) Parameter name: index
[1363.29 INFO] (SDKD log:137) [Sdkd.Result|Warn] Unrecognized return code 409 
[1363.37 INFO] (LineGobbler doFilter:115) +++ Following exception has internal ID: 1
[1363.37 INFO] (SDKD log:137)  at System.ThrowHelper.ThrowArgumentOutOfRangeException()
   at System.Collections.Generic.List`1.get_Item(Int32 index)
   at Couchbase.Core.VBucket.LocatePrimary() in c:\jenkins\workspace\.net-sdkdclient-ng2-andrei\couchbase-net-client\Src\Couchbase\Core\VBucket.cs:line 37
   at Couchbase.Core.Buckets.CouchbaseBucket.GetServer(String key, IVBucket& vBucket) in c:\jenkins\workspace\.net-sdkdclient-ng2-andrei\couchbase-net-client\Src\Couchbase\Core\Buckets\CouchbaseBucket.cs:line 90
   at Couchbase.Core.Buckets.CouchbaseBucket.SendWithRetry[T](IOperation`1 operation) in c:\jenkins\workspace\.net-sdkdclient-ng2-andrei\couchbase-net-client\Src\Couchbase\Core\Buckets\CouchbaseBucket.cs:line 100
   at Couchbase.Core.Buckets.CouchbaseBucket.Upsert[T](String key, T value) in c:\jenkins\workspace\.net-sdkdclient-ng2-andrei\couchbase-net-client\Src\Couchbase\Core\Buckets\CouchbaseBucket.cs:line 335
   at Sdkd.Commands.SetCommand.ExecuteSingle(String key, String value) in c:\jenkins\workspace\.net-sdkdclient-ng2-andrei\sdkd-net\src\Sdkd\Commands\SetCommand.cs:line 78
   at Sdkd.Commands.KVCommand.Run() in c:\jenkins\workspace\.net-sdkdclient-ng2-andrei\sdkd-net\src\Sdkd\Commands\KVCommand.cs:line 24
   at SdkdConsole.Daemon.Handle.DispatchCommand(Request req, CouchbaseBucket cli) in c:\jenkins\workspace\.net-sdkdclient-ng2-andrei\sdkd-net\src\SdkdConsole\Daemon\Handle.cs:line 266
   at SdkdConsole.Daemon.Handle.Run() in c:\jenkins\workspace\.net-sdkdclient-ng2-andrei\sdkd-net\src\SdkdConsole\Daemon\Handle.cs:line 146
   at System.Threading.ThreadHelper.ThreadStart_Context(Object state)
   at System.Threading.ExecutionContext.RunInternal(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean preserveSyncCtx)
   at System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean preserveSyncCtx)
   at System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state)
   at System.Threading.ThreadHelper.ThreadStart()

3) at the beginning of the rebalance
Running Rb1Swap-HYBRID: 2014-10-03 11:43:56

[1981.58 INFO] (Scenario run:83) RAMP phase started. Waiting for 30 seconds
[1981.58 INFO] (SDKD log:137) [Sdkd.Handle|Warn] Got command CB_VIEW_QUERY 
[1981.58 INFO] (SDKD log:137) [Sdkd.Handle|Warn] Command data: {
[1981.58 INFO] (SDKD log:137)  "DSType": "DSTYPE_SEEDED",
[1981.58 INFO] (SDKD log:137)  "DS": {},
[1981.58 INFO] (SDKD log:137)  "ViewParameters": {
[1981.58 INFO] (SDKD log:137)  "limit": 0
[1981.58 INFO] (SDKD log:137)  },
[1981.58 INFO] (SDKD log:137)  "DesignName": "test_design",
[1981.58 INFO] (SDKD log:137)  "Options": {
[1981.58 INFO] (SDKD log:137)  "DelayMax": 10,
[1981.58 INFO] (SDKD log:137)  "DelayMin": 1,
[1981.58 INFO] (SDKD log:137)  "IterWait": 1,
[1981.59 INFO] (SDKD log:137)  "ViewQueryCount": -1,
[1981.59 INFO] (SDKD log:137)  "ViewQueryDelay": 0,
[1981.59 INFO] (SDKD log:137)  "TimeRes": 1
[1981.59 INFO] (SDKD log:137)  },
[1981.59 INFO] (SDKD log:137)  "ViewName": "test_view"
[1981.59 INFO] (SDKD log:137) } 
[2011.58 INFO] (Scenario run:86) Starting CHANGE phase
[2019.36 DEBUG] (RebalanceWaiter sweepOnce:38) Rebalance Progress: 0%
[2020.39 DEBUG] (RebalanceWaiter sweepOnce:38) Rebalance Progress: 0%
[2021.43 DEBUG] (RebalanceWaiter sweepOnce:38) Rebalance Progress: 0%
[2022.45 DEBUG] (RebalanceWaiter sweepOnce:38) Rebalance Progress: 0%
[2023.45 DEBUG] (RebalanceWaiter sweepOnce:38) Rebalance Progress: 1%
[2024.47 DEBUG] (RebalanceWaiter sweepOnce:38) Rebalance Progress: 1%
[2025.47 INFO] (SDKD log:137) 
[2025.50 DEBUG] (RebalanceWaiter sweepOnce:38) Rebalance Progress: 2%
[2025.52 INFO] (SDKD log:137) Unhandled Exception: System.ArgumentOutOfRangeException: Index was out of range. Must be non-negative and less than the size of the collection.
[2025.52 INFO] (SDKD log:137) Parameter name: index
[2025.59 INFO] (SDKD log:137) [Sdkd.Result|Warn] Unrecognized return code 409 
[2025.75 INFO] (LineGobbler doFilter:115) +++ Following exception has internal ID: 1
[2025.75 INFO] (SDKD log:137)  at System.ThrowHelper.ThrowArgumentOutOfRangeException()
   at System.Collections.Generic.List`1.get_Item(Int32 index)
   at Couchbase.Core.VBucket.LocatePrimary() in c:\jenkins\workspace\.net-sdkdclient-ng2-andrei\couchbase-net-client\Src\Couchbase\Core\VBucket.cs:line 37
   at Couchbase.Core.Buckets.CouchbaseBucket.GetServer(String key, IVBucket& vBucket) in c:\jenkins\workspace\.net-sdkdclient-ng2-andrei\couchbase-net-client\Src\Couchbase\Core\Buckets\CouchbaseBucket.cs:line 90
   at Couchbase.Core.Buckets.CouchbaseBucket.SendWithRetry[T](IOperation`1 operation) in c:\jenkins\workspace\.net-sdkdclient-ng2-andrei\couchbase-net-client\Src\Couchbase\Core\Buckets\CouchbaseBucket.cs:line 100
   at Couchbase.Core.Buckets.CouchbaseBucket.Upsert[T](String key, T value) in c:\jenkins\workspace\.net-sdkdclient-ng2-andrei\couchbase-net-client\Src\Couchbase\Core\Buckets\CouchbaseBucket.cs:line 335
   at Sdkd.Commands.SetCommand.ExecuteSingle(String key, String value) in c:\jenkins\workspace\.net-sdkdclient-ng2-andrei\sdkd-net\src\Sdkd\Commands\SetCommand.cs:line 78
   at Sdkd.Commands.KVCommand.Run() in c:\jenkins\workspace\.net-sdkdclient-ng2-andrei\sdkd-net\src\Sdkd\Commands\KVCommand.cs:line 24
   at SdkdConsole.Daemon.Handle.DispatchCommand(Request req, CouchbaseBucket cli) in c:\jenkins\workspace\.net-sdkdclient-ng2-andrei\sdkd-net\src\SdkdConsole\Daemon\Handle.cs:line 266
   at SdkdConsole.Daemon.Handle.Run() in c:\jenkins\workspace\.net-sdkdclient-ng2-andrei\sdkd-net\src\SdkdConsole\Daemon\Handle.cs:line 146
   at System.Threading.ThreadHelper.ThreadStart_Context(Object state)
   at System.Threading.ExecutionContext.RunInternal(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean preserveSyncCtx)
   at System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean preserveSyncCtx)
   at System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state)

 Comments   
Comment by Andrei Baranouski [ 03/Oct/14 ]
client logs https://s3.amazonaws.com/bugdb/jira/NCBC-667/26f3ff51/NCBC-667.zip
Comment by Jeff Morris [ 04/Oct/14 ]
http://review.couchbase.org/#/c/41894/
Comment by Andrei Baranouski [ 06/Oct/14 ]
still observe this issue
http://sdkbuilds.couchbase.com/job/.net-sdkdclient-ng2-andrei/129/console

[2431.12 DEBUG] (RebalanceWaiter sweepOnce:38) Rebalance Progress: 100%
[2432.13 DEBUG] (RebalanceWaiter sweepOnce:38) Rebalance Progress: 100%
[2433.14 DEBUG] (RebalanceWaiter sweepOnce:38) Rebalance Progress: 100%
[2434.15 DEBUG] (RebalanceWaiter sweepOnce:38) Rebalance Progress: 100%
[2435.16 DEBUG] (RebalanceWaiter sweepOnce:38) Rebalance Progress: 100%
[2436.18 DEBUG] (RebalanceWaiter sweepOnce:38) Rebalance Progress: 100%
[2437.19 DEBUG] (RebalanceWaiter sweepOnce:38) Rebalance Progress: 100%
[2438.20 DEBUG] (RebalanceWaiter sweepOnce:38) Rebalance Progress: 100%
[2439.21 DEBUG] (RebalanceWaiter sweepOnce:38) Rebalance Progress: 100%
[2440.24 INFO] (RebalanceWaiter sweepOnce:33) Rebalance complete
[2440.24 INFO] (Scenario run:97) CHANGE phase done
[2440.24 INFO] (Scenario run:103) Starting REBOUND for 90 seconds
[2452.74 INFO] (SDKD log:137) 
[2452.77 INFO] (SDKD log:137) Unhandled Exception: System.ArgumentOutOfRangeException: Index was out of range. Must be non-negative and less than the size of the collection.
[2452.77 INFO] (SDKD log:137) Parameter name: index
[2453.24 ERROR] (BRun maybePropagate:243) Suppressing driver-related error
com.couchbase.sdkdclient.context.HarnessException: Driver crashed
at com.couchbase.sdkdclient.context.RunContext$5.call(RunContext.java:192) ~[sdkdclient-1.0-SNAPSHOT.jar:na]
at com.couchbase.sdkdclient.context.RunContext$5.call(RunContext.java:183) ~[sdkdclient-1.0-SNAPSHOT.jar:na]
at java.util.concurrent.FutureTask$Sync.innerRun(Unknown Source) ~[na:1.6.0_27]
at java.util.concurrent.FutureTask.run(Unknown Source) ~[na:1.6.0_27]
at java.util.concurrent.Executors$RunnableAdapter.call(Unknown Source) ~[na:1.6.0_27]
at java.util.concurrent.FutureTask$Sync.innerRun(Unknown Source) ~[na:1.6.0_27]
at java.util.concurrent.FutureTask.run(Unknown Source) ~[na:1.6.0_27]
at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(Unknown Source) ~[na:1.6.0_27]
at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source) ~[na:1.6.0_27]
at java.lang.Thread.run(Unknown Source) ~[na:1.6.0_27]
[2453.24 DEBUG] (Handle sendMessageAsync:183) > CLOSEHANDLE@348.777
[2453.24 WARN] (STester close:170) While stopping driver
java.net.SocketException: Connection reset by peer: socket write error
at java.net.SocketOutputStream.socketWrite0(Native Method) ~[na:1.6.0_27]
at java.net.SocketOutputStream.socketWrite(Unknown Source) ~[na:1.6.0_27]
at java.net.SocketOutputStream.write(Unknown Source) ~[na:1.6.0_27]
at sun.nio.cs.StreamEncoder.writeBytes(Unknown Source) ~[na:1.6.0_27]
at sun.nio.cs.StreamEncoder.implFlushBuffer(Unknown Source) ~[na:1.6.0_27]
at sun.nio.cs.StreamEncoder.implFlush(Unknown Source) ~[na:1.6.0_27]
at sun.nio.cs.StreamEncoder.flush(Unknown Source) ~[na:1.6.0_27]
at java.io.OutputStreamWriter.flush(Unknown Source) ~[na:1.6.0_27]
at java.io.BufferedWriter.flush(Unknown Source) ~[na:1.6.0_27]
at com.couchbase.sdkdclient.handle.Handle.sendMessageAsync(Handle.java:188) ~[sdkdclient-1.0-SNAPSHOT.jar:na]
at com.couchbase.sdkdclient.handle.Handle.close(Handle.java:254) ~[sdkdclient-1.0-SNAPSHOT.jar:na]
at com.couchbase.sdkdclient.driver.HandleManager.stopAll(HandleManager.java:26) ~[sdkdclient-1.0-SNAPSHOT.jar:na]
at com.couchbase.sdkdclient.driver.HostPortDriver.stop(HostPortDriver.java:118) ~[sdkdclient-1.0-SNAPSHOT.jar:na]
at com.couchbase.sdkdclient.driver.ExecutingDriver.stop(ExecutingDriver.java:117) ~[sdkdclient-1.0-SNAPSHOT.jar:na]
at com.couchbase.sdkdclient.stester.STester.close(STester.java:167) ~[sdkdclient-1.0-SNAPSHOT.jar:na]
at com.couchbase.sdkdclient.batch.BRun.runHarness(BRun.java:287) [sdkdclient-1.0-SNAPSHOT.jar:na]
at com.couchbase.sdkdclient.batch.BRun.runSingleTest(BRun.java:394) [sdkdclient-1.0-SNAPSHOT.jar:na]
at com.couchbase.sdkdclient.batch.BRun.run(BRun.java:478) [sdkdclient-1.0-SNAPSHOT.jar:na]
at com.couchbase.sdkdclient.batch.BRun.main(BRun.java:510) [sdkdclient-1.0-SNAPSHOT.jar:na]
[2453.24 INFO] (SDKD log:137) +++ Flushing remaining exception trace buffer
[2453.30 INFO] (SDKD log:137)  at System.ThrowHelper.ThrowArgumentOutOfRangeException()
   at System.Collections.Generic.List`1.get_Item(Int32 index)
   at Couchbase.Core.VBucket.LocatePrimary() in c:\jenkins\workspace\.net-sdkdclient-ng2-andrei\couchbase-net-client\Src\Couchbase\Core\VBucket.cs:line 38
   at Couchbase.Core.Buckets.CouchbaseBucket.GetServer(String key, IVBucket& vBucket) in c:\jenkins\workspace\.net-sdkdclient-ng2-andrei\couchbase-net-client\Src\Couchbase\Core\Buckets\CouchbaseBucket.cs:line 91
   at Couchbase.Core.Buckets.CouchbaseBucket.SendWithRetry[T](IOperation`1 operation) in c:\jenkins\workspace\.net-sdkdclient-ng2-andrei\couchbase-net-client\Src\Couchbase\Core\Buckets\CouchbaseBucket.cs:line 101
   at Couchbase.Core.Buckets.CouchbaseBucket.Get[T](String key) in c:\jenkins\workspace\.net-sdkdclient-ng2-andrei\couchbase-net-client\Src\Couchbase\Core\Buckets\CouchbaseBucket.cs:line 991
   at Sdkd.Commands.GetCommand.ExecuteSingle(String key, String value) in c:\jenkins\workspace\.net-sdkdclient-ng2-andrei\sdkd-net\src\Sdkd\Commands\GetCommand.cs:line 17
   at Sdkd.Commands.KVCommand.Run() in c:\jenkins\workspace\.net-sdkdclient-ng2-andrei\sdkd-net\src\Sdkd\Commands\KVCommand.cs:line 24
   at SdkdConsole.Daemon.Handle.DispatchCommand(Request req, CouchbaseBucket cli) in c:\jenkins\workspace\.net-sdkdclient-ng2-andrei\sdkd-net\src\SdkdConsole\Daemon\Handle.cs:line 266
   at SdkdConsole.Daemon.Handle.Run() in c:\jenkins\workspace\.net-sdkdclient-ng2-andrei\sdkd-net\src\SdkdConsole\Daemon\Handle.cs:line 146
   at System.Threading.ThreadHelper.ThreadStart_Context(Object state)
   at System.Threading.ExecutionContext.RunInternal(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean preserveSyncCtx)
   at System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean preserveSyncCtx)
   at System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state)
   at System.Threading.ThreadHelper.ThreadStart()

https://s3.amazonaws.com/bugdb/jira/NCBC-667/7b03f6ab/NCBC-667_2.zip
Comment by Jeff Morris [ 06/Oct/14 ]
Hi Andrei -

Here is a patch: http://review.couchbase.org/#/c/41914/

Please run tests asap.

Thanks,

Jeff
Comment by Andrei Baranouski [ 06/Oct/14 ]
the last patch fixed the issue http://sdkbuilds.couchbase.com/job/.net-sdkdclient-ng2-andrei/130/consoleFull
Comment by Jeff Morris [ 04/Nov/14 ]
Re-opening so I can set the fix version to Beta2
Comment by Jeff Morris [ 04/Nov/14 ]
Closing




[NCBC-666] the setting up project section should refer to using Enyim.Caching.dll not Enyim,Memecached.dll Created: 03/Oct/14  Updated: 31/Oct/14  Resolved: 31/Oct/14

Status: Resolved
Project: Couchbase .NET client library
Component/s: docs
Affects Version/s: None
Fix Version/s: 1.3.10

Type: Bug Priority: Major
Reporter: Cihan Biyikoglu Assignee: Jeff Morris
Resolution: Fixed Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   
http://docs.couchbase.com/couchbase-sdk-net-1.3/
under "setting up a project" we refer to memcached.dll. we should be referring to enyim.caching.dll since that is what the file name is.

------

Setting up a project¶
Create a new console project in Visual Studio. Add references to the Couchbase.dll, Enyim.Memcached.dll, and Newtonsoft.Json.dll assemblies that are in the release zip file.

Visual Studio console applications target the .NET Framework Client Profile by default, so you need to change the project properties to target the full .NET Framework. If you skip this step, you’ll have compilation errors.



 Comments   
Comment by Jeff Morris [ 13/Oct/14 ]
Will update docs for 1.3.10 release.
Comment by Jeff Morris [ 31/Oct/14 ]
This will be published with the 1.3.10 release notes on Tuesday.




[NCBC-665] significant regression in memcached ops:(60ops/sec instead of ~1200), huge number of MEMD_EVBUCKET and MEMD_ENOENT errors Created: 03/Oct/14  Updated: 09/Oct/14  Resolved: 03/Oct/14

Status: Closed
Project: Couchbase .NET client library
Component/s: library
Affects Version/s: 2.0 Beta
Fix Version/s: 2.0.0

Type: Bug Priority: Blocker
Reporter: Andrei Baranouski Assignee: Jeff Morris
Resolution: Fixed Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Attachments: HTML File 03ed4d0f03539a16432ed1d1dd2c0eba-MC.html     HTML File fd1ce51877925894c1dedc929c236ad4-MC.html     Microsoft Excel report.xls    
Issue Links:
Relates to
relates to NCBC-671 During rebalance client blocks while ... Resolved

 Description   
3.0.0-1209
run with https://github.com/couchbase/couchbase-net-client/commit/59e642f732b7056c3ce05c9f9ce88b37af1c2aa9

(have not seen the issue with https://github.com/couchbase/couchbase-net-client/commit/28af3d94309d9a18880770ccefe7b0d1f49a996a)




 Comments   
Comment by Andrei Baranouski [ 03/Oct/14 ]
please see all logs inside https://s3.amazonaws.com/bugdb/jira/NCBC-665/296d9d59/CB-3.0.0-1209_126.zip
Comment by Andrei Baranouski [ 03/Oct/14 ]
all tests run ~3hours instead of ~1 hour
Comment by Jeff Morris [ 03/Oct/14 ]
Hi Andrei -

I found the bug late last night, but haven't isolated it yet. Basically the VBucket mapping is inverted, so the keys are almost always mapped to the wrong bucket. It's only happening when bootstrapping using the feature formally known as CCCP; if I disable it and the client uses HTTP streaming, the client works perfectly.

I am working on isolating the issue further and a patch.

-Jeff
Comment by Jeff Morris [ 03/Oct/14 ]
I think the issue may have been pre-existing; this patch fixed a bug which was making the client always use HTTP streaming: https://github.com/couchbase/couchbase-net-client/commit/27f87f4a32b51ceb8df380318dba5807008de22d

-Jeff
Comment by Jeff Morris [ 03/Oct/14 ]
Ok, so it's isolated to this commit: 48023fad3d73192e26dc5df0f570e6e1757a21a2

https://github.com/couchbase/couchbase-net-client/commit/48023fad3d73192e26dc5df0f570e6e1757a21a2

Working on a patch...
Comment by Jeff Morris [ 03/Oct/14 ]
Patch: http://review.couchbase.org/41851
Comment by Andrei Baranouski [ 03/Oct/14 ]
This patch improved ops/sec performance, but

1) NCBC-667 ThrowArgumentOutOfRangeException at Couchbase.Core.VBucket.LocatePrimary() with/out rebalance
2) for some tests latency is still high, for example http://sdk-testresults.couchbase.com.s3.amazonaws.com/SDK-SDK/CB-3.0.0-1209/Rb2OutEpt-HYBRID/10-03-14/065541/b4930d641ec45014b14eed2bf61d9422-MC.html
3) still a lot of MEMD_ENOENT errors for some tests, for example http://sdk-testresults.couchbase.com.s3.amazonaws.com/SDK-SDK/CB-3.0.0-1209/ReAdd2-HYBRID/10-03-14/066417/f24ae77ed735a764be0cfca39992fd31-MC.html
where rebalance( readd) completed but there are persistent errors with MEMD_ENOENT
4) queries ops drop to ~0 during rebalance http://sdk-testresults.couchbase.com.s3.amazonaws.com/SDK-SDK/CB-3.0.0-1209/ReAdd2-HYBRID/10-03-14/066417/f24ae77ed735a764be0cfca39992fd31-CB.html
Comment by Andrei Baranouski [ 03/Oct/14 ]
client logs https://s3.amazonaws.com/bugdb/jira/NCBC-667/26f3ff51/NCBC-667.zip
Comment by Andrei Baranouski [ 06/Oct/14 ]
latency stats look much better today
[10:39:31 PM] Andrei Baranouski: http://sdk-testresults.couchbase.com.s3.amazonaws.com/SDK-SDK/CB-3.0.0-1209/Rb2OutEpt-HYBRID/10-03-14/065541/b4930d641ec45014b14eed2bf61d9422-MC.html - today's results
[10:39:45 PM] Andrei Baranouski: http://sdk-testresults.couchbase.com.s3.amazonaws.com/SDK-SDK/CB-3.0.0-1209/Rb2OutEpt-HYBRID/10-03-14/065541/b4930d641ec45014b14eed2bf61d9422-MC.html - 3 days ago

Comment by Andrei Baranouski [ 06/Oct/14 ]
issues with view requests still exists http://sdk-testresults.couchbase.com.s3.amazonaws.com/SDK-SDK/CB-3.0.0-1209/Rb2In-HYBRID/10-06-14/065245/5b78f97c47d812836f808783fa85f3c4-CB.html




[NCBC-664] $HOST causes a UriFormatException in UpddateBootstrapList method Created: 02/Oct/14  Updated: 04/Nov/14  Resolved: 02/Oct/14

Status: Resolved
Project: Couchbase .NET client library
Component/s: library
Affects Version/s: 2.0 Beta
Fix Version/s: None

Type: Bug Priority: Major
Reporter: Jeff Morris Assignee: Jeff Morris
Resolution: Fixed Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Attachments: File BucketConfig.json    

 Comments   
Comment by Jeff Morris [ 02/Oct/14 ]
From email:

There seems to be an issue with BucketConfig data obtained from the cluster. It contains "$HOST" instead of "127.0.0.1" in all the URL fields. I attached the serialized object as BucketConfig.json. There's also session.json which is response for http://localhost:8091/pools/default/buckets/session

Couchbase version:
2.5.1 enterprise edition (build-1083)

Sample code:
using (Cluster cluster = new Cluster())
{
       using (IBucket bucket = cluster.OpenBucket("session"))
       {
       }
}

Exception:
System.AggregateException was unhandled
  HResult=-2146233088
  Message=Could not bootstrap - check inner exceptions for details.
  Source=Couchbase
  StackTrace:
       at Couchbase.Core.ClusterController.CreateBucket(String bucketName, String password) in c:\Temp\couchbase-net-client-master\Src\Couchbase\Core\ClusterController.cs:line 223
       at Couchbase.Core.ClusterController.CreateBucket(String bucketName) in c:\Temp\couchbase-net-client-master\Src\Couchbase\Core\ClusterController.cs:line 145
       at Couchbase.Cluster.OpenBucket(String bucketname) in c:\Temp\couchbase-net-client-master\Src\Couchbase\Cluster.cs:line 108
       at ConsoleApplication1.Program.Main(String[] args) in c:\Temp\ConsoleApplication1\ConsoleApplication1\Program.cs:line 18
  InnerException: System.UriFormatException
       HResult=-2146233033
       Message=Invalid URI: The hostname could not be parsed.
       Source=System
       StackTrace:
            at System.Uri.CreateThis(String uri, Boolean dontEscape, UriKind uriKind)
            at Couchbase.Core.ClusterController.UpdateBootstrapList(IBucketConfig bucketConfig) in c:\Temp\couchbase-net-client-master\Src\Couchbase\Core\ClusterController.cs:line 233
            at Couchbase.Core.ClusterController.CreateBucket(String bucketName, String password) in c:\Temp\couchbase-net-client-master\Src\Couchbase\Core\ClusterController.cs:line 207
       InnerException:



Comment by Jeff Morris [ 02/Oct/14 ]
http://review.couchbase.org/#/c/41839/




[NCBC-663] Authentication error when making View request to bucket with SASL Auth Created: 02/Oct/14  Updated: 04/Nov/14  Resolved: 02/Oct/14

Status: Resolved
Project: Couchbase .NET client library
Component/s: library
Affects Version/s: 2.0 Beta
Fix Version/s: None

Type: Bug Priority: Blocker
Reporter: Jeff Morris Assignee: Jeff Morris
Resolution: Fixed Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   
The request are being sent without authentication:

2014-10-02 11:33:54,492 [22] ERROR Couchbase.Views.ViewClient - System.Net.WebException: The remote server returned an error: (401) Unauthorized.
   at System.Net.WebClient.DownloadDataInternal(Uri address, WebRequest& request)
   at System.Net.WebClient.DownloadData(Uri address)
   at Couchbase.Views.ViewClient.Execute[T](IViewQuery query) in c:\Users\jmorris\repos\CouchbaseNetClient-Build-2.0\couchbase-net-client\Src\Couchbase\Views\ViewClient.cs:line 72

Note that this happens after the user has opened and authenticated against the bucket. The user/password are simply not being sent with each request.

 Comments   
Comment by Jeff Morris [ 02/Oct/14 ]
http://review.couchbase.org/#/c/41838/




[NCBC-662] Common Flags improperly decoding configs as a String type causing cast exception Created: 01/Oct/14  Updated: 04/Nov/14  Resolved: 02/Oct/14

Status: Resolved
Project: Couchbase .NET client library
Component/s: library
Affects Version/s: 2.0 Beta
Fix Version/s: None

Type: Bug Priority: Blocker
Reporter: Jeff Morris Assignee: Jeff Morris
Resolution: Fixed Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   
When a NMV triggers a Config response, the body of the response is decoded and serialized into a string instead of BucketConfig object causing a cast exception and keeping the client from updating:

2014-10-01 19:38:34,748 [14] ERROR Couchbase.Core.Buckets.CouchbaseBucket - System.InvalidCastException: Unable to cast object of type 'System.String' to type 'Couchbase.Configuration.Server.Serialization.BucketConfig'.
   at Couchbase.Core.Transcoders.DefaultTranscoder.Decode[T](Byte[] buffer, Int32 offset, Int32 length, Flags flags) in c:\Users\jmorris\repos\CouchbaseNetClient-Build-2.0\couchbase-net-client\Src\Couchbase\Core\Transcoders\DefaultTranscoder.cs:line 157
   at Couchbase.IO.Operations.OperationBase`1.GetConfig() in c:\Users\jmorris\repos\CouchbaseNetClient-Build-2.0\couchbase-net-client\Src\Couchbase\IO\Operations\OperationBase'.cs:line 383
   at Couchbase.Core.Buckets.CouchbaseBucket.CheckForConfigUpdates[T](IOperationResult`1 operationResult, IOperation operation) in c:\Users\jmorris\repos\CouchbaseNetClient-Build-2.0\couchbase-net-client\Src\Couchbase\Core\Buckets\CouchbaseBucket.cs:line 238
2014-10-01 19:38:34,750 [14] DEBUG Couchbase.Core.Buckets.CouchbaseBucket - Operation retry 0 for key key1845. Reason: VBucketBelongsToAnotherServer

 Comments   
Comment by Jeff Morris [ 02/Oct/14 ]
http://review.couchbase.org/#/c/41815/




[NCBC-661] When the only operation are view requests, updated configs are not sent to client Created: 28/Sep/14  Updated: 04/Nov/14  Resolved: 13/Oct/14

Status: Resolved
Project: Couchbase .NET client library
Component/s: library
Affects Version/s: 2.0 Beta
Fix Version/s: None

Type: Bug Priority: Critical
Reporter: Jeff Morris Assignee: Jeff Morris
Resolution: Fixed Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   
When the client has boot straps using "Optimized configuration management" and the only operation being performed, the client never updates it's server configuration, because it doesn't have any means of knowing that it has changed.

 Comments   
Comment by Jeff Morris [ 29/Sep/14 ]
Two Scenarios:
1. Node is added while load is view specific
2. Node is removed while load is view specific

Note that when a node is removed, the server first returns the following message:

Error: noproc. Reason: {gen_server,call,[request_throttler,{note_request,<0.8540.71>,capi},infinity]}.

For several requests, followed by:

{"error":"not_found","reason":"missing"}

For scenario #1, there is no way for the client to be aware of the added node unless it polls or receives a config update asynchronously. For #2, we could use the response message, but the "noproc" message is only returned for a short time and the "not_found" message is the same message returned when the bucket doesn't exist - if the view or design doc doesn't, it's noted in the error message. For example:

{"error":"not_found","reason":"Error opening view `brewery_beers2`, from set `beer-sample`, design document `_design/beer`: {not_found,\n missing_named_view}"}


Comment by Jeff Morris [ 13/Oct/14 ]
Andrei -

This should be resolved by the config heartbeat monitor. Please confirm by running a view only workload with the EnableConfigHeartBeat set to true.

Thanks,

jeff




[NCBC-660] Exception: SafeHandle has been closed in MemcachedBucket.MultiGet method. Created: 28/Sep/14  Updated: 04/Nov/14  Resolved: 30/Sep/14

Status: Resolved
Project: Couchbase .NET client library
Component/s: library
Affects Version/s: 2.0 Beta
Fix Version/s: None

Type: Bug Priority: Critical
Reporter: Jeff Morris Assignee: Jeff Morris
Resolution: Duplicate Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   
   at System.Runtime.InteropServices.SafeHandle.DangerousAddRef(Boolean& success)
   at System.StubHelpers.StubHelpers.SafeHandleAddRef(SafeHandle pHandle, Boolean& success)
   at System.Security.Cryptography.Utils.HashData(SafeHashHandle hHash, Byte[] data, Int32 cbData, Int32 ibStart, Int32 cbSize)
   at System.Security.Cryptography.MD5CryptoServiceProvider.HashCore(Byte[] rgb, Int32 ibStart, Int32 cbSize)
   at System.Security.Cryptography.HashAlgorithm.ComputeHash(Byte[] buffer)
   at Couchbase.Core.Buckets.KetamaKeyMapper.GetHash(String key) in c:\Users\jmorris\repos\CouchbaseNetClient-Build-2.0\couchbase-net-client\Src\Couchbase\Core\Buckets\KetamaKeyMapper.cs:line 80
   at Couchbase.Core.Buckets.KetamaKeyMapper.MapKey(String key) in c:\Users\jmorris\repos\CouchbaseNetClient-Build-2.0\couchbase-net-client\Src\Couchbase\Core\Buckets\KetamaKeyMapper.cs:line 38
   at Couchbase.Core.Buckets.MemcachedBucket.GetServer(String key) in c:\Users\jmorris\repos\CouchbaseNetClient-Build-2.0\couchbase-net-client\Src\Couchbase\Core\Buckets\MemcachedBucket.cs:line 100
   at Couchbase.Core.Buckets.MemcachedBucket.SendWithRetry[T](IOperation`1 operation) in c:\Users\jmorris\repos\CouchbaseNetClient-Build-2.0\couchbase-net-client\Src\Couchbase\Core\Buckets\MemcachedBucket.cs:line 110
   at Couchbase.Core.Buckets.MemcachedBucket.Get[T](String key) in c:\Users\jmorris\repos\CouchbaseNetClient-Build-2.0\couchbase-net-client\Src\Couchbase\Core\Buckets\MemcachedBucket.cs:line 595
   at Couchbase.Core.Buckets.MemcachedBucket.<>c__DisplayClass23`1.<Get>b__22(Tuple`2 range, ParallelLoopState loopstate) in c:\Users\jmorris\repos\CouchbaseNetClient-Build-2.0\couchbase-net-client\Src\Couchbase\Core\Buckets\MemcachedBucket.cs:line 614
   at System.Threading.Tasks.Parallel.<>c__DisplayClass32`2.<PartitionerForEachWorker>b__30()
   at System.Threading.Tasks.Task.InnerInvoke()
   at System.Threading.Tasks.Task.InnerInvokeWithArg(Task childTask)
   at System.Threading.Tasks.Task.<>c__DisplayClass11.<ExecuteSelfReplicating>b__10(Object param0)

 Comments   
Comment by Jeff Morris [ 30/Sep/14 ]
Fixed by: http://www.couchbase.com/issues/browse/NCBC-659




[NCBC-659]  Make KetamaKeyMapper and VBucketKeyMapper Dispose HashAlgorithm after every use Created: 28/Sep/14  Updated: 04/Nov/14  Resolved: 30/Sep/14

Status: Resolved
Project: Couchbase .NET client library
Component/s: library
Affects Version/s: 2.0 Beta
Fix Version/s: None

Type: Bug Priority: Critical
Reporter: Jeff Morris Assignee: Jeff Morris
Resolution: Fixed Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   
This class maintains a reference to HashAlgorithm which has a Dipose method which is not called.

 Comments   
Comment by Jeff Morris [ 30/Sep/14 ]
Refactored both KeyMapper's so that they create and Dispose HashAlgorithm instance after every use. If they are not disposed, they will end up in the finalization queue and cause pressure there. Also, it appears if you reuse the instance, it may become corrupted in multi-threaded environments; this resolves that potential issue.




[NCBC-658] Fix bug where "/pools" is not added to bootstrap urls when configuration is app.config Created: 28/Sep/14  Updated: 04/Nov/14  Resolved: 28/Sep/14

Status: Resolved
Project: Couchbase .NET client library
Component/s: library
Affects Version/s: 2.0 Beta
Fix Version/s: None

Type: Bug Priority: Major
Reporter: Jeff Morris Assignee: Jeff Morris
Resolution: Fixed Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified





[NCBC-657] Provide documentation in readme.md for running unit tests Created: 24/Sep/14  Updated: 24/Sep/14

Status: Open
Project: Couchbase .NET client library
Component/s: docs, library
Affects Version/s: 2.0 Beta
Fix Version/s: backlog-2.0

Type: Task Priority: Major
Reporter: Jeff Morris Assignee: Jeff Morris
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   
From Andrei: "could you add in Readme pre-setup requirements for unit tests: 1) list of buckets 2) ip addresses of CB clusters that are used"




[NCBC-656] Couchbase .NET SDK 1.X and 2.X cannot be used within the same project Created: 23/Sep/14  Updated: 24/Sep/14

Status: Open
Project: Couchbase .NET client library
Component/s: library
Affects Version/s: 2.0 Beta, 1.3.9
Fix Version/s: None

Type: Bug Priority: Trivial
Reporter: Jeff Morris Assignee: Jeff Morris
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   
**It is likely that this ticket will never be resolved, but I am creating it so that it exists as a known issue**

Visual Studio blocks adding the reference because of the naming conflict of the dll; there is no resolution for this except renaming the dll to Couchbase.2.0.dll. Additionally, assuming that would work, there would likely have to be quite a bit of namespace and Type aliasing required as well.






[NCBC-655] .NET Client seeing many pauses during Rebalance Created: 23/Sep/14  Updated: 07/Nov/14  Resolved: 20/Oct/14

Status: Resolved
Project: Couchbase .NET client library
Component/s: None
Affects Version/s: 1.3.9
Fix Version/s: backlog-1.0

Type: Bug Priority: Major
Reporter: Jeff Dillon Assignee: Jeff Dillon
Resolution: Fixed Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Dependency

 Description   
I have been benchmarking the Java client vs .NET client. During a rebalance, I see frequent pauses within the .NET client that greatly impacts overall throughput. These pauses are not seen in the Java client with equivalent code (gets). I've captured a 30 second video as well as a 30 second network capture, attached. It is connecting to a 3 node 2.5.1 cluster where I add or remove a node, and rebalance.

ASK: Why is the .NET client pausing for 10-15 seconds each minute during a rebalance?

http://screencast.com/t/kNyXkauaEPK3

Here is the relevant C# code, performing a GetWithCas with random keys in a loop:

private static void Main(string[] args)
        {
         
            var config = new CouchbaseClientConfiguration();

            config.Bucket = "TestBucket";
            config.Username = "";
            config.Password = "";

            config.SocketPool.MaxPoolSize = 20;
            config.SocketPool.MinPoolSize = 20;
            config.RetryCount = 10;
            config.HeartbeatMonitor.Interval = 30000;
            config.SocketPool.ReceiveTimeout = TimeSpan.FromMilliseconds(2500);
            config.RetryTimeout = TimeSpan.FromMilliseconds(1000);

            config.Urls.Add(new Uri("http://10.4.2.57:8091/pools"));
            config.Urls.Add(new Uri("http://10.4.2.107:8091/pools"));
            config.Urls.Add(new Uri("http://10.4.2.108:8091/pools"));

            var Client = new CouchbaseClient(config);

            // create threads to read random documents:

            ParallelOptions parallelOptions = new ParallelOptions();
            parallelOptions.MaxDegreeOfParallelism = 1;
            Parallel.For((long)0, 1, parallelOptions, i =>
            {
                for (int j = 100071; j < 1000000; j++)
                {
                    string key = "Couch_" + j.ToString();
                    var casVal = Client.GetWithCas(key);
                    if (casVal.Result != null)
                    {
                        Console.WriteLine("j=" + j.ToString());
                    }
                }
            });

            Client.Dispose();
        }
    }


FYI, here is the corresponding Java code that does not paused during a rebalance:

public static void main(String[] args) throws Exception {
        new App().run();
    }
    
    private void run() throws InterruptedException, ExecutionException {
        int numThreads = 1;
        
        ExecutorService pool = Executors.newFixedThreadPool(numThreads);
        List<Future> fs = new ArrayList<Future>(numThreads);
        for (int i=0; i<numThreads; i++) {
            fs.add(pool.submit(new Reader(i+1, 5000000)));
        }
        for (Future f : fs) {
            f.get();
        }
    }

    private class Reader implements Runnable {
        
        private int id;
        private long runningTime;
        
        public Reader(int id, long runningTime) {
            this.id = id;
            this.runningTime = runningTime;
        }
        
        @Override
        public void run() {
            long n=100071;
            long start, end=0;
            long initTime = System.currentTimeMillis();
            List<URI> uris = null;
            try {
                uris = Arrays.asList(new URI("http://10.4.2.57:8091/pools"));
            } catch (URISyntaxException e) {
                
                e.printStackTrace();
            }
            String bucketName = "TestBucket";
            String result = "";
            String password = "";
            CouchbaseConnectionFactoryBuilder builder = new CouchbaseConnectionFactoryBuilder();
            builder.setReadBufferSize(20000);
            builder.setOpTimeout(2500);
            builder.setFailureMode(FailureMode.Redistribute);
            builder. setOpQueueMaxBlockTime(1000);
            CouchbaseConnectionFactory connectionFactory = null;
            CouchbaseClient client = null;
            try {
                connectionFactory =
                builder.buildCouchbaseConnection(uris, bucketName, "", "");
                client = new com.couchbase.client.CouchbaseClient(connectionFactory);
            } catch (IOException e) {
                e.printStackTrace();
            }
            
            while (true) {
                String key = "Couch_" + n;
                start = System.currentTimeMillis();
                
                if (client.gets(key) !=null) {
                    System.out.println("N=" + n);
                }
                
                n++;
                if (runningTime>0 && (end-initTime)>runningTime) {
                    break;
                }
            }
        }
    }


 Comments   
Comment by Jeff Morris [ 23/Sep/14 ]
Jeff -

Thanks for doing this :) Not sure why the client pauses - I have some ideas, though; I'll have to take a deeper look.

-Jeff
Comment by Jeff Morris [ 20/Oct/14 ]
Pull request in Gerrit: http://review.couchbase.org/#/c/42242/

Will merge after CR.
Comment by Jeff Morris [ 21/Oct/14 ]
Jeff D -

Would you mind verifying this fix against your benchmark?

git fetch ssh://jmorris@review.couchbase.org:29418/couchbase-net-client refs/changes/42/42242/3 && git checkout FETCH_HEAD

-Jeff M
Comment by Jeff Morris [ 07/Nov/14 ]
It's in 1.3.10: https://github.com/couchbase/couchbase-net-client/commit/a611d6c03be7a60ab3d3ab0b8cc52e229071a2e2

I'll update the release notes.

Thanks,

Jeff
Comment by Jeff Morris [ 07/Nov/14 ]
Should be updated soon:
https://github.com/couchbaselabs/docs-ng/pull/168




[NCBC-654] Getting started guide for .NET is several versions behind the latest Created: 22/Sep/14  Updated: 22/Sep/14  Resolved: 22/Sep/14

Status: Resolved
Project: Couchbase .NET client library
Component/s: docs
Affects Version/s: None
Fix Version/s: 1.3.9

Type: Task Priority: Major
Reporter: Ian McCloy Assignee: Jeff Morris
Resolution: Fixed Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   
http://www.couchbase.com/communities/net/getting-started << Needs updating to 1.3.9

 Comments   
Comment by Jeff Morris [ 22/Sep/14 ]
Hi Ian -

I updated the links to 1.3.9. We do have a release process, I just missed this page...my comment in NCBC-389 explains why.

I'll make sure this gets updated with future releases.

Thanks,

Jeff




[NCBC-653] MemcachedBucket does not have SendWithRetry method Created: 20/Sep/14  Updated: 04/Nov/14  Resolved: 24/Sep/14

Status: Resolved
Project: Couchbase .NET client library
Component/s: library
Affects Version/s: 2.0 Beta
Fix Version/s: None

Type: Task Priority: Major
Reporter: Jeff Morris Assignee: Jeff Morris
Resolution: Fixed Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Relates to
relates to NCBC-551 After a hard Failover in flight opera... Resolved

 Comments   
Comment by Jeff Morris [ 24/Sep/14 ]
http://review.couchbase.org/#/c/41629/




[NCBC-652] Add support for bulk operations: Get and Upsert Created: 20/Sep/14  Updated: 04/Nov/14  Resolved: 21/Sep/14

Status: Resolved
Project: Couchbase .NET client library
Component/s: library
Affects Version/s: 2.0 Beta
Fix Version/s: None

Type: Task Priority: Blocker
Reporter: Jeff Morris Assignee: Jeff Morris
Resolution: Fixed Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   
Add support for multi get/upsert.

 Comments   
Comment by Jeff Morris [ 21/Sep/14 ]
http://review.couchbase.org/#/c/41538/

Missing some unit tests which will be done a bit later as a separate commit.




[NCBC-651] Create Tests to ensure 1.X and 2.X work together in the same app domain Created: 20/Sep/14  Updated: 26/Nov/14

Status: Open
Project: Couchbase .NET client library
Component/s: library
Affects Version/s: 2.0 Beta
Fix Version/s: 2.0.1

Type: Task Priority: Major
Reporter: Jeff Morris Assignee: Jeff Morris
Resolution: Unresolved Votes: 0
Labels: None
Σ Remaining Estimate: Not Specified Remaining Estimate: Not Specified
Σ Time Spent: Not Specified Time Spent: Not Specified
Σ Original Estimate: Not Specified Original Estimate: Not Specified

Sub-Tasks:
Key
Summary
Type
Status
Assignee
NCBC-684 Rename Couchbase.dll to Couchbase.Net... Technical task Resolved Jeff Morris  

 Description   
These tests should also cover all common flags integration concerns.




[NCBC-650] System.OperationCanceledException in CouchbaseBucket.Query when 3/4 nodes restarted Created: 19/Sep/14  Updated: 04/Nov/14  Resolved: 04/Nov/14

Status: Closed
Project: Couchbase .NET client library
Component/s: library
Affects Version/s: 2.0 Beta
Fix Version/s: 2.0 Beta 2

Type: Bug Priority: Critical
Reporter: Andrei Baranouski Assignee: Jeff Morris
Resolution: Fixed Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Attachments: Text File test.txt    

 Description   
============================================================
Running SvcRestart-HYBRID: 2014-09-19 01:52:57
    service/restore_delay=5
    workload=HybridWorkloadGroup
    service/name=SYSV_SERVICE
    service/action=kill
    service/count=3
    testcase=ServiceFailureScenario
    Logging to c:\jenkins\workspace\.net-sdkdclient-ng2-andrei\sdkdclient-ng\log\SDK-SDK\CB-3.0.0-1208\SvcRestart-HYBRID\09-19-14\031977\886b17542e83bb34cd392d356a0403e4

    To re-run the test, copy/paste the following into the shell.
    You may also copy/paste (except the first line) into an argfile
    8<----------------------------------------
    ./stester \
 \ --service-restore_delay 5 --workload HybridWorkloadGroup
 \ --service-name SYSV_SERVICE --service-action kill --service-count
 \ 3 --testcase ServiceFailureScenario -C share\rexec --rexec_path
 \ C:\temp\sdkd-out-debug\SdkdConsole.exe --rexec_port 8675
 \ --cluster_node=10.3.121.134 --cluster_node=10.3.121.135
 \ --cluster_node=10.3.121.136 --cluster_node=10.3.3.206
        --cluster_ssh-username=root --cluster_ssh-password=couchbase
    ---------------------------------------->8


[1844.07 DEBUG] (SSHCommand execute:75) Running /etc/init.d/couchbase-server start on 10.3.121.135
[1845.76 DEBUG] (SSHCommand close:147) Closing channel com.jcraft.jsch.ChannelExec@6059c26
[1846.78 DEBUG] (SSHCommand execute:75) Running /etc/init.d/couchbase-server start on 10.3.121.136
[1848.51 DEBUG] (SSHCommand close:147) Closing channel com.jcraft.jsch.ChannelExec@1b9e7c7b
[1849.59 DEBUG] (SSHCommand execute:75) Running /etc/init.d/couchbase-server start on 10.3.3.206
[1851.20 DEBUG] (SSHCommand close:147) Closing channel com.jcraft.jsch.ChannelExec@60b8af93
[1852.21 INFO] (Scenario run:97) CHANGE phase done
[1852.21 INFO] (Scenario run:103) Starting REBOUND for 90 seconds
[1868.25 INFO] (SDKD log:137)
[1868.29 INFO] (SDKD log:137)
[1868.29 INFO] (SDKD log:137) Unhandled Exception: Unhandled Exception:
[1868.29 INFO] (SDKD log:137) Unhandled Exception:
[1868.29 INFO] (SDKD log:137)
[1868.33 INFO] (SDKD log:137) Unhandled Exception: Unhandled Exception: Unhandled Exception: Unhandled Exception:
[1868.33 INFO] (SDKD log:137) Unhandled Exception:
[1868.40 INFO] (SDKD log:137) Unhandled Exception: System.OperationCanceledException: The operation was canceled.
[1868.41 INFO] (LineGobbler doFilter:115) +++ Following exception has internal ID: 1
[1868.41 INFO] (SDKD log:137) at System.Threading.CancellationToken.ThrowOperationCanceledException()
   at System.Threading.ManualResetEventSlim.Wait(Int32 millisecondsTimeout, CancellationToken cancellationToken)
   at System.Threading.Tasks.Task.SpinThenBlockingWait(Int32 millisecondsTimeout, CancellationToken cancellationToken)
   at System.Threading.Tasks.Task.InternalWait(Int32 millisecondsTimeout, CancellationToken cancellationToken)
   at System.Threading.Tasks.Task.Wait(Int32 millisecondsTimeout, CancellationToken cancellationToken)
   at System.Threading.Tasks.Task.Wait(CancellationToken cancellationToken)
   at Couchbase.Core.Buckets.CouchbaseBucket.SendWithRetry[T](ViewQuery query) in c:\jenkins\workspace\.net-sdkdclient-ng2-andrei\couchbase-net-client\Src\Couchbase\Core\Buckets\CouchbaseBucket.cs:lin
e 0
   at Couchbase.Core.Buckets.CouchbaseBucket.Query[T](IViewQuery query) in c:\jenkins\workspace\.net-sdkdclient-ng2-andrei\couchbase-net-client\Src\Couchbase\Core\Buckets\CouchbaseBucket.cs:line 1128
   at Sdkd.Views.ViewCommand.GetViewObject(CouchbaseBucket cli, Request req, ViewOptions vo) in c:\jenkins\workspace\.net-sdkdclient-ng2-andrei\sdkd-net\src\Sdkd\Views\ViewCommand.cs:line 164
   at Sdkd.Views.ViewCommand.Run() in c:\jenkins\workspace\.net-sdkdclient-ng2-andrei\sdkd-net\src\Sdkd\Views\ViewCommand.cs:line 265
   at SdkdConsole.Daemon.Handle.DispatchCommand(Request req, CouchbaseBucket cli) in c:\jenkins\workspace\.net-sdkdclient-ng2-andrei\sdkd-net\src\SdkdConsole\Daemon\Handle.cs:line 266
   at SdkdConsole.Daemon.Handle.Run() in c:\jenkins\workspace\.net-sdkdclient-ng2-andrei\sdkd-net\src\SdkdConsole\Daemon\Handle.cs:line 146
   at System.Threading.ThreadHelper.ThreadStart_Context(Object state)
   at System.Threading.ExecutionContext.RunInternal(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean preserveSyncCtx)
   at System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean preserveSyncCtx)
   at System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state)
   at System.Threading.ThreadHelper.ThreadStart()
[1868.41 INFO] (SDKD log:137) System.OperationCanceledException: The operation was canceled.
[1868.43 INFO] (LineGobbler doFilter:115) +++ Following exception has internal ID: 3
[1868.43 INFO] (SDKD log:137) at System.Threading.CancellationToken.ThrowOperationCanceledException()
   at System.Threading.ManualResetEventSlim.Wait(Int32 millisecondsTimeout, CancellationToken cancellationToken)
   at System.Threading.Tasks.Task.SpinThenBlockingWait(Int32 millisecondsTimeout, CancellationToken cancellationToken)
   at System.Threading.Tasks.Task.InternalWait(Int32 millisecondsTimeout, CancellationToken cancellationToken)
   at System.Threading.Tasks.Task.Wait(Int32 millisecondsTimeout, CancellationToken cancellationToken)
   at System.Threading.Tasks.Task.Wait(CancellationToken cancellationToken)
   at Couchbase.Core.Buckets.CouchbaseBucket.SendWithRetry[T](ViewQuery query) in c:\jenkins\workspace\.net-sdkdclient-ng2-andrei\couchbase-net-client\Src\Couchbase\Core\Buckets\CouchbaseBucket.cs:lin
e 1141
   at Couchbase.Core.Buckets.CouchbaseBucket.Query[T](IViewQuery query) in c:\jenkins\workspace\.net-sdkdclient-ng2-andrei\couchbase-net-client\Src\Couchbase\Core\Buckets\CouchbaseBucket.cs:line 1128
   at Sdkd.Views.ViewCommand.GetViewObject(CouchbaseBucket cli, Request req, ViewOptions vo) in c:\jenkins\workspace\.net-sdkdclient-ng2-andrei\sdkd-net\src\Sdkd\Views\ViewCommand.cs:line 164
   at Sdkd.Views.ViewCommand.Run() in c:\jenkins\workspace\.net-sdkdclient-ng2-andrei\sdkd-net\src\Sdkd\Views\ViewCommand.cs:line 265
   at SdkdConsole.Daemon.Handle.DispatchCommand(Request req, CouchbaseBucket cli) in c:\jenkins\workspace\.net-sdkdclient-ng2-andrei\sdkd-net\src\SdkdConsole\Daemon\Handle.cs:line 266
   at SdkdConsole.Daemon.Handle.Run() in c:\jenkins\workspace\.net-sdkdclient-ng2-andrei\sdkd-net\src\SdkdConsole\Daemon\Handle.cs:line 146
   at System.Threading.ThreadHelper.ThreadStart_Context(Object state)
   at System.Threading.ExecutionContext.RunInternal(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean preserveSyncCtx)
   at System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean preserveSyncCtx)
   at System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state)
   at System.Threading.ThreadHelper.ThreadStart()
[1868.44 INFO] (SDKD log:137) System.OperationCanceledException: The operation was canceled.



 Comments   
Comment by Andrei Baranouski [ 19/Sep/14 ]
https://s3.amazonaws.com/bugdb/jira/NCBC-650/4b913ca6/NCBC-650.zip
Comment by Jeff Morris [ 19/Sep/14 ]
This is a timeout on a view query, so it should be handled and returned in the IViewResult.Exception field; it shouldn't be an uncaught exception.
Comment by Andrei Baranouski [ 30/Sep/14 ]
can't reproduce with commit https://github.com/couchbase/couchbase-net-client/commit/747fa5523cf0b8cbefb9f615b877c41136b4fec7
Comment by Jeff Morris [ 04/Nov/14 ]
Re-opening so I can set the fix version to Beta2
Comment by Jeff Morris [ 04/Nov/14 ]
Closing




[NCBC-649] infinite loop 'Trying again' with 'No connections currently available' for ReAdd2 test when nodes returned to cluster Created: 19/Sep/14  Updated: 04/Nov/14  Resolved: 04/Nov/14

Status: Closed
Project: Couchbase .NET client library
Component/s: library
Affects Version/s: 2.0 Beta
Fix Version/s: 2.0 Beta 2

Type: Bug Priority: Test Blocker
Reporter: Andrei Baranouski Assignee: Jeff Morris
Resolution: Fixed Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Attachments: PNG File NCBC-649_1.png     PNG File NCBC-649_2.png     PNG File NCBC-649_3.png     PNG File NCBC-649_4.png     File NCBC-649.7z     File NCBC-649_gerrit.7z     PNG File NCBC-649.png    

 Description   
run with commit https://github.com/couchbase/couchbase-net-client/commit/24714876f76207a5fc7d72e88bd1f9c57909fcdb

http://sdkbuilds.couchbase.com/job/.net-sdkdclient-ng2-andrei/102/console

Running ReAdd2-HYBRID: 2014-09-18 23:50:57
    workload=HybridWorkloadGroup
    failover/next_action=FO_READD_REBALANCE
    failover/count=2
    failover/next_delay=45
    testcase=FailoverScenario
    Logging to c:\jenkins\workspace\.net-sdkdclient-ng2-andrei\sdkdclient-ng\log\SDK-SDK\CB-3.0.0-1208\ReAdd2-HYBRID\09-18-14\024657\8c847f52905fd0bf669803f16c2dc716

    To re-run the test, copy/paste the following into the shell.
    You may also copy/paste (except the first line) into an argfile
    8<----------------------------------------
    ./stester \
        --workload HybridWorkloadGroup --failover-next_action
 \
        FO_READD_REBALANCE --failover-count 2 --failover-next_delay 45
 \
        --testcase FailoverScenario -C share\rexec --rexec_path
 \
        C:\temp\sdkd-out-debug\SdkdConsole.exe --rexec_port 8675
 \
        --cluster_node=10.3.121.134 --cluster_node=10.3.121.135
 \
        --cluster_node=10.3.121.136 --cluster_node=10.3.3.206
 \
        --cluster_ssh-username=root --cluster_ssh-password=couchbase


2014-09-18 23:56:46,364 [2] DEBUG Couchbase.CouchbaseCluster - Finalizing CouchbaseCluster
2014-09-18 23:56:46,364 [2] DEBUG Couchbase.CouchbaseCluster - Finalizing CouchbaseCluster
2014-09-18 23:56:46,614 [42] ERROR Couchbase.Core.Buckets.CouchbaseBucket - Couchbase.ServerUnavailableException: Exception of type 'Couchbase.ServerUnavailableException' was thrown.
   at Couchbase.Configuration.ConfigContextBase.GetServer() in c:\jenkins\workspace\.net-sdkdclient-ng2-andrei\couchbase-net-client\Src\Couchbase\Configuration\ConfigContextBase.cs:line 210
   at Couchbase.Core.Buckets.CouchbaseBucket.CheckForConfigUpdates[T](IOperationResult`1 operationResult, IOperation operation) in c:\jenkins\workspace\.net-sdkdclient-ng2-andrei\couchbase-net-client\Src\Couchbase\Core\Buckets\CouchbaseBucket.cs:line 241
2014-09-18 23:56:46,614 [42] DEBUG Couchbase.Core.Buckets.CouchbaseBucket - Operation retry 1 for key SimpleKeyREP4463REP4463REP4463REP4463REP4463. Reason: VBucketBelongsToAnotherServer
2014-09-18 23:56:46,614 [42] INFO Couchbase.Configuration.ConfigContextBase - Getting KeyMapper for rev#878 on thread 42
2014-09-18 23:56:46,614 [42] INFO Couchbase.Core.Buckets.VBucketKeyMapper - Using index 609 for key SimpleKeyREP4463REP4463REP4463REP4463REP4463 - rev878
2014-09-18 23:56:46,614 [42] DEBUG Couchbase.Core.Server - Sending SimpleKeyREP4463REP4463REP4463REP4463REP4463 using server 10.3.121.134:11210
2014-09-18 23:56:46,615 [42] DEBUG Couchbase.IO.ConnectionPool`1 - Acquire existing: 2059d0b9-eb1e-4163-b58a-17ae44f4ae8b | 10.3.121.134:11210 | [0, 2] - b20c68a7-f922-486e-af16-f880d88bfff6 - Disposed: False
2014-09-18 23:56:46,615 [42] INFO Couchbase.IO.ConnectionBase - Sending key SimpleKeyREP4463REP4463REP4463REP4463REP4463 using 609 on 10.3.121.134:11210
2014-09-18 23:56:46,616 [42] DEBUG Couchbase.IO.ConnectionPool`1 - Releasing: 2059d0b9-eb1e-4163-b58a-17ae44f4ae8b on 10.3.121.134:11210 - b20c68a7-f922-486e-af16-f880d88bfff6
2014-09-18 23:56:46,619 [42] INFO Couchbase.Core.Buckets.CouchbaseBucket - New config found 1736
2014-09-18 23:56:46,646 [45] DEBUG Couchbase.IO.ConnectionPool`1 - No connections currently available on 10.3.121.136:11210 - ae3a8fe3-d2b0-4a20-83bd-512e9c870573. Trying again. - Disposed: False
2014-09-18 23:56:46,880 [42] ERROR Couchbase.Core.Buckets.CouchbaseBucket - Couchbase.ServerUnavailableException: Exception of type 'Couchbase.ServerUnavailableException' was thrown.
   at Couchbase.Configuration.ConfigContextBase.GetServer() in c:\jenkins\workspace\.net-sdkdclient-ng2-andrei\couchbase-net-client\Src\Couchbase\Configuration\ConfigContextBase.cs:line 210
   at Couchbase.Core.Buckets.CouchbaseBucket.CheckForConfigUpdates[T](IOperationResult`1 operationResult, IOperation operation) in c:\jenkins\workspace\.net-sdkdclient-ng2-andrei\couchbase-net-client\Src\Couchbase\Core\Buckets\CouchbaseBucket.cs:line 241
2014-09-18 23:56:46,880 [42] DEBUG Couchbase.Core.Buckets.CouchbaseBucket - Operation retry 2 for key SimpleKeyREP4463REP4463REP4463REP4463REP4463. Reason: VBucketBelongsToAnotherServer
2014-09-18 23:56:46,880 [42] DEBUG Couchbase.Core.Buckets.CouchbaseBucket - Operation for key SimpleKeyREP4463REP4463REP4463REP4463REP4463 failed after 3 retries. Reason: VBucketBelongsToAnotherServer
2014-09-18 23:56:49,146 [45] DEBUG Couchbase.IO.ConnectionPool`1 - No connections currently available on 10.3.121.136:11210 - ae3a8fe3-d2b0-4a20-83bd-512e9c870573. Trying again. - Disposed: False
2014-09-18 23:56:51,646 [45] DEBUG Couchbase.IO.ConnectionPool`1 - No connections currently available on 10.3.121.136:11210 - ae3a8fe3-d2b0-4a20-83bd-512e9c870573. Trying again. - Disposed: False
2014-09-18 23:56:54,146 [45] DEBUG Couchbase.IO.ConnectionPool`1 - No connections currently available on 10.3.121.136:11210 - ae3a8fe3-d2b0-4a20-83bd-512e9c870573. Trying again. - Disposed: False
2014-09-18 23:56:56,646 [45] DEBUG Couchbase.IO.ConnectionPool`1 - No connections currently available on 10.3.121.136:11210 - ae3a8fe3-d2b0-4a20-83bd-512e9c870573. Trying again. - Disposed: False
2014-09-18 23:56:59,146 [45] DEBUG Couchbase.IO.ConnectionPool`1 - No connections currently available on 10.3.121.136:11210 - ae3a8fe3-d2b0-4a20-83bd-512e9c870573. Trying again. - Disposed: False
2014-09-18 23:57:01,646 [45] DEBUG Couchbase.IO.ConnectionPool`1 - No connections currently available on 10.3.121.136:11210 - ae3a8fe3-d2b0-4a20-83bd-512e9c870573. Trying again. - Disposed: False
2014-09-18 23:57:04,146 [45] DEBUG Couchbase.IO.ConnectionPool`1 - No connections currently available on 10.3.121.136:11210 - ae3a8fe3-d2b0-4a20-83bd-512e9c870573. Trying again. - Disposed: False


..................


2014-09-19 01:09:51,804 [45] DEBUG Couchbase.IO.ConnectionPool`1 - No connections currently available on 10.3.121.136:11210 - ae3a8fe3-d2b0-4a20-83bd-512e9c870573. Trying again. - Disposed: False
2014-09-19 01:09:54,304 [45] DEBUG Couchbase.IO.ConnectionPool`1 - No connections currently available on 10.3.121.136:11210 - ae3a8fe3-d2b0-4a20-83bd-512e9c870573. Trying again. - Disposed: False
2014-09-19 01:09:56,804 [45] DEBUG Couchbase.IO.ConnectionPool`1 - No connections currently available on 10.3.121.136:11210 - ae3a8fe3-d2b0-4a20-83bd-512e9c870573. Trying again. - Disposed: False
2014-09-19 01:09:59,304 [45] DEBUG Couchbase.IO.ConnectionPool`1 - No connections currently available on 10.3.121.136:11210 - ae3a8fe3-d2b0-4a20-83bd-512e9c870573. Trying again. - Disposed: False
2014-09-19 01:10:01,804 [45] DEBUG Couchbase.IO.ConnectionPool`1 - No connections currently available on 10.3.121.136:11210 - ae3a8fe3-d2b0-4a20-83bd-512e9c870573. Trying again. - Disposed: False


test stuck, not all items loaded
run was via jenkins, so I'm not able to get stacktraces



 Comments   
Comment by Jeff Morris [ 19/Sep/14 ]
Hmm, looks like connection pool exhausted, but none of the in-progress operations are timing out? Strange.
Comment by Andrei Baranouski [ 19/Sep/14 ]
right, something like that
Comment by Andrei Baranouski [ 20/Sep/14 ]
catched it in manual run


  [In a sleep, wait, or join]
  mscorlib.dll!System.Threading.WaitHandle.InternalWaitOne(System.Runtime.InteropServices.SafeHandle waitableSafeHandle, long millisecondsTimeout, bool hasThreadAffinity, bool exitContext) + 0x22 bytes
  mscorlib.dll!System.Threading.WaitHandle.WaitOne(int millisecondsTimeout, bool exitContext) + 0x28 bytes
  mscorlib.dll!System.Threading.WaitHandle.WaitOne(int millisecondsTimeout) + 0xd bytes
> Couchbase.dll!Couchbase.IO.ConnectionPool<Couchbase.IO.Strategies.EapConnection>.Acquire() Line 123 + 0x28 bytes C#
  Couchbase.dll!Couchbase.IO.ConnectionPool<Couchbase.IO.Strategies.EapConnection>.Acquire() Line 126 + 0x9 bytes C#
 
        .................................
  Couchbase.dll!Couchbase.IO.ConnectionPool<Couchbase.IO.Strategies.EapConnection>.Acquire() Line 126 + 0x9 bytes C#
  Couchbase.dll!Couchbase.IO.ConnectionPool<Couchbase.IO.Strategies.EapConnection>.Acquire() Line 126 + 0x9 bytes C#
  Couchbase.dll!Couchbase.IO.ConnectionPool<Couchbase.IO.Strategies.EapConnection>.Acquire() Line 126 + 0x9 bytes C#
  Couchbase.dll!Couchbase.IO.ConnectionPool<Couchbase.IO.Strategies.EapConnection>.Acquire() Line 126 + 0x9 bytes C#
  Couchbase.dll!Couchbase.IO.ConnectionPool<Couchbase.IO.Strategies.EapConnection>.Acquire() Line 126 + 0x9 bytes C#
  Couchbase.dll!Couchbase.IO.ConnectionPool<Couchbase.IO.Strategies.EapConnection>.Acquire() Line 126 + 0x9 bytes C#
  Couchbase.dll!Couchbase.IO.ConnectionPool<Couchbase.IO.Strategies.EapConnection>.Acquire() Line 126 + 0x9 bytes C#
  Couchbase.dll!Couchbase.IO.ConnectionPool<Couchbase.IO.Strategies.EapConnection>.Acquire() Line 126 + 0x9 bytes C#
  Couchbase.dll!Couchbase.IO.ConnectionPool<Couchbase.IO.Strategies.EapConnection>.Acquire() Line 126 + 0x9 bytes C#
  Couchbase.dll!Couchbase.IO.ConnectionPool<Couchbase.IO.Strategies.EapConnection>.Acquire() Line 126 + 0x9 bytes C#
  Couchbase.dll!Couchbase.IO.ConnectionPool<Couchbase.IO.Strategies.EapConnection>.Acquire() Line 126 + 0x9 bytes C#
  Couchbase.dll!Couchbase.IO.ConnectionPool<Couchbase.IO.Strategies.EapConnection>.Acquire() Line 126 + 0x9 bytes C#
  Couchbase.dll!Couchbase.IO.ConnectionPool<Couchbase.IO.Strategies.EapConnection>.Acquire() Line 126 + 0x9 bytes C#
  Couchbase.dll!Couchbase.IO.ConnectionPool<Couchbase.IO.Strategies.EapConnection>.Acquire() Line 126 + 0x9 bytes C#
  Couchbase.dll!Couchbase.IO.ConnectionPool<Couchbase.IO.Strategies.EapConnection>.Acquire() Line 126 + 0x9 bytes C#
  Couchbase.dll!Couchbase.IO.ConnectionPool<Couchbase.IO.Strategies.EapConnection>.Acquire() Line 126 + 0x9 bytes C#
  Couchbase.dll!Couchbase.IO.ConnectionPool<Couchbase.IO.Strategies.EapConnection>.Acquire() Line 126 + 0x9 bytes C#
  Couchbase.dll!Couchbase.IO.ConnectionPool<Couchbase.IO.Strategies.EapConnection>.Acquire() Line 126 + 0x9 bytes C#
  Couchbase.dll!Couchbase.IO.ConnectionPool<Couchbase.IO.Strategies.EapConnection>.Couchbase.IO.IConnectionPool.Acquire() Line 178 + 0x9 bytes C#
  Couchbase.dll!Couchbase.IO.Strategies.DefaultIOStrategy.Execute<object>(Couchbase.IO.Operations.IOperation<object> operation) Line 40 + 0xc bytes C#
  Couchbase.dll!Couchbase.Core.Server.Send<object>(Couchbase.IO.Operations.IOperation<object> operation) Line 88 + 0x4a bytes C#
  Couchbase.dll!Couchbase.Core.Buckets.CouchbaseBucket.SendWithRetry<object>(Couchbase.IO.Operations.IOperation<object> operation) Line 103 + 0x4a bytes C#
  Couchbase.dll!Couchbase.Core.Buckets.CouchbaseBucket.Upsert<object>(string key, object value) Line 332 + 0x31 bytes C#
  Sdkd.dll!Sdkd.Commands.SetCommand.ExecuteSingle(string key, string value) Line 78 + 0x1e bytes C#
  Sdkd.dll!Sdkd.Commands.KVCommand.Run() Line 24 + 0x36 bytes C#
  SdkdConsole.exe!SdkdConsole.Daemon.Handle.DispatchCommand(Sdkd.Protocol.Request req, Couchbase.Core.Buckets.CouchbaseBucket cli) Line 266 + 0x9 bytes C#
  SdkdConsole.exe!SdkdConsole.Daemon.Handle.Run() Line 146 + 0xf bytes C#
  mscorlib.dll!System.Threading.ThreadHelper.ThreadStart_Context(object state) + 0x6f bytes
  mscorlib.dll!System.Threading.ExecutionContext.RunInternal(System.Threading.ExecutionContext executionContext, System.Threading.ContextCallback callback, object state, bool preserveSyncCtx) + 0xa7 bytes
  mscorlib.dll!System.Threading.ExecutionContext.Run(System.Threading.ExecutionContext executionContext, System.Threading.ContextCallback callback, object state, bool preserveSyncCtx) + 0x16 bytes
  mscorlib.dll!System.Threading.ExecutionContext.Run(System.Threading.ExecutionContext executionContext, System.Threading.ContextCallback callback, object state) + 0x41 bytes
  mscorlib.dll!System.Threading.ThreadHelper.ThreadStart() + 0x44 bytes
  [Native to Managed Transition]


please note, this run was with some commits from gerrit

$ git log
commit 8afa0ace0ac366e53dcc07a62c23ffd6604f6015
Author: jeffrymorris <jeffrymorris@gmail.com>
Date: Fri Sep 12 10:43:37 2014 -0700

    NCBC-639: ThrowOperationCanceledException in SendWithRetry[T](ViewQuery query)

    Change-Id: I41bd3d93b31b98a19b8fb23d432713f5034debd7

commit 602181eed21614451ccaf0f848337f9c382ae578
Author: jeffrymorris <jeffrymorris@gmail.com>
Date: Fri Sep 12 00:10:53 2014 -0700

    NCBC-590: Refactor logging so that ODE are not raised when it references a disposed object

    Change-Id: I5d81dba00d64e4caf34d165491624e2c02a9949b

commit f9d4efb511c93a64b2a844e41849177da1f4442a
Author: jeffrymorris <jeffrymorris@gmail.com>
Date: Thu Sep 11 22:53:12 2014 -0700

    Refactor unit tests to reflect changes in exceptions when bootstrap fails

    Change-Id: I387aa3c8a0d8954102265e27dbbe4f6d84c4d104

commit 2a054aceab491ed338f1fc435d0a48eb4d31c43c
Author: jeffrymorris <jeffrymorris@gmail.com>
Date: Thu Sep 11 22:13:02 2014 -0700

    NCBC-624: Refactor View API

    From Michael's review:

    "One thing that I was confused about was the View query DSL. The required
    argument is development, but the view and design document name could be
    omitted by the DSL user since they are elements like limit and so forth. I
    think it would be better to turn this around. For example in Java there is
    ViewQuery.from('designDoc', 'view') and then the DSL starts.
    So you can never miss design doc and view name by accident. And I think
    you can go with a development = false default, since that's what people
    use most of the time. I think the main question is, if I miss adding
    design doc or view name by accident, does it blow up at runtime or at
    compile time?"

    Change-Id: I4fc9d716f674df882156cdd1763b8d43204e7d90

commit 24714876f76207a5fc7d72e88bd1f9c57909fcdb
Author: jeffrymorris <jeffrymorris@gmail.com>
Date: Thu Sep 11 19:06:31 2014 -0700

    NCBC-606: Catch and log ServerUnavailableException during failover

    Change-Id: Ie0f74d2bf69cd43ea399762fc39e7ca7f305c11c
    Reviewed-on: http://review.couchbase.org/41384
    Reviewed-by: Brett Lawson <brett19@gmail.com>
    Tested-by: Jeffry Morris <jeffrymorris@gmail.com>

commit a2cd618f125fc330db742bcb6879c85741e1b3e0
Author: jeffrymorris <jeffrymorris@gmail.com>
Date: Thu Sep 11 16:43:48 2014 -0700

    NCBC-638: If Server is null when sending an operation then retry operation

    Change-Id: Idfee0ab2852c51cb9c7de1912374d64ee1633be7
    Reviewed-on: http://review.couchbase.org/41374
    Tested-by: Jeffry Morris <jeffrymorris@gmail.com>
    Reviewed-by: Brett Lawson <brett19@gmail.com>

commit 2ca77982d595f15cfa7fe5aa0b97902c94b5f120
Author: jeffrymorris <jeffrymorris@gmail.com>
Date: Thu Sep 11 16:41:13 2014 -0700

    Update unit tests to use camel cased property values when applicable

    Change-Id: I80ae31e2bf58809574dba965063b21ffe48dc5ec
    Reviewed-on: http://review.couchbase.org/41373
    Tested-by: Jeffry Morris <jeffrymorris@gmail.com>
    Reviewed-by: Brett Lawson <brett19@gmail.com>

commit 33fc515c0248fbeb56fa7123cea954872e4c9b11
Author: jeffrymorris <jeffrymorris@gmail.com>
Date: Thu Sep 11 16:35:10 2014 -0700

    NCBC-637: When CCCP fails ensure NRE is not thrown

    Change-Id: I5ef0dbef8298675ceb92e9eb91c49303269133a2
    Reviewed-on: http://review.couchbase.org/41371
    Reviewed-by: Brett Lawson <brett19@gmail.com>
    Tested-by: Jeffry Morris <jeffrymorris@gmail.com>

commit 1e9fff367fa3eefd19069fdfa1dfaae14b4b2a42
Author: jeffrymorris <jeffrymorris@gmail.com>
Date: Wed Sep 10 23:36:43 2014 -0700

    NCBC-586: Make AddRef and Release on IBucket not public

    This commit adds an internal interface IRefCountable with AddRef and
    Release members, so that the two methods are not publically callable on an
    IBucket implementation.

    Change-Id: I11f628094aa1f65ff4780f42e00bbfb088e78898
    Reviewed-on: http://review.couchbase.org/41354
    Reviewed-by: Brett Lawson <brett19@gmail.com>
    Tested-by: Jeffry Morris <jeffrymorris@gmail.com>

commit 983b94b8acbce8eee11314542d8dcdfbb3c03e0d
Author: jeffrymorris <jeffrymorris@gmail.com>
Date: Wed Sep 10 22:34:37 2014 -0700

    NCBC-636: Make outgoing ContractResolver default to camel casing

    This commit makes the incoming and outgoing JSON IContractResolver's type
    configurable from the ClientConfiguration object. The default settings are
    to use a CamelCasedNameContractResolver for both serialization and
    deserilization.

    Change-Id: I3a82f95d5f4608aa8d05e4141a1a089bc300d4e7
    Reviewed-on: http://review.couchbase.org/41353
    Tested-by: Jeffry Morris <jeffrymorris@gmail.com>
    Reviewed-by: Brett Lawson <brett19@gmail.com>

commit 77b78aaa1550c2ea9e0dfa4085fad2cd24814721
Author: jeffrymorris <jeffrymorris@gmail.com>
Date: Wed Sep 10 18:06:55 2014 -0700

    NCBC-635: Provide better failure support for N1QL Query API

    Change-Id: I16d9a44ba653f8846b22e7c679681ab262e1e6bc
    Reviewed-on: http://review.couchbase.org/41351
    Tested-by: Jeffry Morris <jeffrymorris@gmail.com>
    Reviewed-by: Jeffry Morris <jeffrymorris@gmail.com>

commit 424a10647f5d6dd21e603fbfe8bb98de305f9491
Author: jeffrymorris <jeffrymorris@gmail.com>
Date: Wed Sep 10 15:43:24 2014 -0700

    NCBC-634: Ensure that CancellationTokenSource is Disposed

    This fix ensures that the CTS will be explicitly disposed so that the
    object does not live through to finalization.

    Change-Id: I39545b97a3c934f2c0a93587fa7147b32d2bd043
    Reviewed-on: http://review.couchbase.org/41335
    Tested-by: Jeffry Morris <jeffrymorris@gmail.com>
    Reviewed-by: Brett Lawson <brett19@gmail.com>

commit 8bd607e8cb545ace5102edf1accb5f862b5caf74
Author: jeffrymorris <jeffrymorris@gmail.com>
Date: Wed Sep 10 15:12:17 2014 -0700

    NCBC-632: Make JsonSerializerSettings configurable

    Change-Id: I21c5620a2192217faa68a62cf440a2a8f3dc8893
    Reviewed-on: http://review.couchbase.org/41331
    Tested-by: Jeffry Morris <jeffrymorris@gmail.com>
    Reviewed-by: Brett Lawson <brett19@gmail.com>

commit bebae67219460e2e3a69ad2d56c9f98afc824190
Author: jeffrymorris <jeffrymorris@gmail.com>
Date: Wed Sep 10 14:26:25 2014 -0700

    NCBC-626: HttpRequestException in queries after rebalance out

    Change-Id: I0eed00d956f231c3826a54da6a983586618d126d
    Reviewed-on: http://review.couchbase.org/41327
    Tested-by: Jeffry Morris <jeffrymorris@gmail.com>
    Reviewed-by: Brett Lawson <brett19@gmail.com>

commit 8db6085e9aecb23cd6defb672f7ec0548536d9de
Author: jeffrymorris <jeffrymorris@gmail.com>

http://www.couchbase.com/issues/secure/attachment/21870/NCBC-649_gerrit.7z


please see screenshots
Comment by Andrei Baranouski [ 26/Sep/14 ]
still see the issue with https://github.com/couchbase/couchbase-net-client/commit/72b06be3aa7b6ae8ed478f006fd7ebe89f3cae89
http://sdkbuilds.couchbase.com/job/.net-sdkdclient-ng2-andrei/106/console 2.5.0-1059
Comment by Andrei Baranouski [ 30/Sep/14 ]
unable to reproduce with https://github.com/couchbase/couchbase-net-client/commit/747fa5523cf0b8cbefb9f615b877c41136b4fec7
Comment by Jeff Morris [ 04/Nov/14 ]
Re-opening so I can set the fix version to Beta2
Comment by Jeff Morris [ 04/Nov/14 ]
Closing




[NCBC-648] Forcing JsonSerialization on non-nullable ValueTypes fails Created: 18/Sep/14  Updated: 04/Nov/14  Resolved: 22/Oct/14

Status: Resolved
Project: Couchbase .NET client library
Component/s: library
Affects Version/s: 2.0 Beta
Fix Version/s: None

Type: Bug Priority: Minor
Reporter: Jeff Morris Assignee: Jeff Morris
Resolution: Fixed Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   
If you try do to a Set on a non-nullable ValueType, NewtonSoft will throw an exception with the following error message returned in the IResult object: "No JSON content found and type 'System.Int32' is not nullable. Path '', line 0, position 0."

The work around is to use a nullable valuetype instead, for example use bucket.Insert<int?>(..) instead of bucket.Insert<int>(..).

 Comments   
Comment by Jeff Morris [ 28/Sep/14 ]
This might be resolvable through proper documentation.
Comment by Jeff Morris [ 02/Oct/14 ]
Note: Unfortunately I don't think I can constrain this to new(), INullable<T> because it's really an OR situation.
Comment by Jeff Morris [ 09/Oct/14 ]
Changed from critical to minor per discussion with Matt I. This is something that can be handled in docs I believe, unless a programmatic way can be found to force T as a reference type to be INullable 'behind the scenes'.
Comment by Jeff Morris [ 15/Oct/14 ]
Pull request from Svizel: https://github.com/couchbase/couchbase-net-client/pull/23/
Comment by Jeff Morris [ 16/Oct/14 ]
Review: http://review.couchbase.org/#/c/42196/1
Comment by Jeff Morris [ 22/Oct/14 ]
PR merged: http://review.couchbase.org/42196




[NCBC-647] Markdown Links not Rendered Created: 18/Sep/14  Updated: 31/Oct/14  Resolved: 31/Oct/14

Status: Resolved
Project: Couchbase .NET client library
Component/s: docs
Affects Version/s: 1.3.9
Fix Version/s: 1.3.10

Type: Bug Priority: Minor
Reporter: Chris Malarky Assignee: Jeff Morris
Resolution: Fixed Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   
There are some links not being rendered correctly because of missing text between the brackets in the markdown.

Three in configuring-logging.markdown:

[](https://github.com/couchbase/couchbase-net-client). If you use these Visual
[](http://logging.apache.org/log4net/release/manual/configuration.html).
See [](http://nlog-project.org/wiki/Configuration_file) for more NLog

And one in packages-for-the.net-client-library.markdown (though I can't see this section in the rendered docs):
[](https://www.couchbase.com/develop/net/current/). The download package



 Comments   
Comment by Jeff Morris [ 31/Oct/14 ]
Updated all but the last (packages-for-the.net-client-library), because I don't think it's being used.




[NCBC-646] Couchbase SDK 1.3.X and 2.X are incompatible from a data (namely flags/transcoder) perspective. Created: 17/Sep/14  Updated: 04/Nov/14  Resolved: 02/Oct/14

Status: Resolved
Project: Couchbase .NET client library
Component/s: library
Affects Version/s: 2.0 Beta
Fix Version/s: None

Type: Bug Priority: Major
Reporter: Jeff Morris Assignee: Jeff Morris
Resolution: Fixed Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Relates to
relates to NCBC-608 Implement Common Flags Resolved

 Description   
While running some unit tests on 1.3.X that used keys inserted by 2.X I noticed that the 1.3.X client could not read values written by 2.X. The problem lies with transcoding and specifically that the 2.X client doesn't respect the type of encoding set in the flags by 1.3.X.

 Comments   
Comment by Jeff Morris [ 02/Oct/14 ]
Resolved with: NCBC-608




[NCBC-645] [ssl] test Rb2Out-HYBRID stuck with 'Couchbase.Views.ViewClient - System.Net.Http.HttpRequestException' in client logs Created: 17/Sep/14  Updated: 04/Nov/14  Resolved: 04/Nov/14

Status: Closed
Project: Couchbase .NET client library
Component/s: library
Affects Version/s: 2.0 Beta
Fix Version/s: 2.0 Beta 2

Type: Bug Priority: Test Blocker
Reporter: Andrei Baranouski Assignee: Jeff Morris
Resolution: Fixed Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Attachments: Zip Archive NCBC-645.zip     Text File test_logs.txt    

 Description   
c:\jenkins\workspace\.net-sdkdclient-ng2-andrei\sdkdclient-ng>call packages\sdkdclient\bin\brun.bat -A S3Creds_tmp -I cluster_conf
ig.ini -I sdkd.args --variants HYBRID -d all:debug
[3.21 INFO] (BRun run:436) Initializing S3
[7.80 INFO] (BRun run:441) Initializing history database

============================================================
Running Rb2Out-HYBRID: 2014-09-17 02:29:58
    rebalance/mode=out
    workload=HybridWorkloadGroup
    rebalance/count=2
    testcase=RebalanceScenario
    Logging to c:\jenkins\workspace\.net-sdkdclient-ng2-andrei\sdkdclient-ng\log\SDK-SDK\CB-3.0.0-1208\Rb2Out-HYBRID\09-17-14\0341
98\28852a8b5890fe94895277f14f7f4f66

    To re-run the test, copy/paste the following into the shell.
    You may also copy/paste (except the first line) into an argfile
    8<----------------------------------------
    ./stester \
 \ --rebalance-mode out --workload HybridWorkloadGroup
 \ --rebalance-count 2 --testcase RebalanceScenario -C share\rexec
 \ --rexec_path C:\temp\sdkd-out-debug\SdkdConsole.exe --rexec_port
 \ 8675 --cluster_node=10.3.121.134 --cluster_node=10.3.121.135
 \ --cluster_node=10.3.121.136 --cluster_node=10.3.3.206
 \ --cluster_ssh-username=root --cluster_ssh-password=couchbase
        --cluster_useSSL=True

[447.89 DEBUG] (RebalanceWaiter sweepOnce:38) Rebalance Progress: 100%
[448.91 DEBUG] (RebalanceWaiter sweepOnce:38) Rebalance Progress: 100%
[449.93 INFO] (RebalanceWaiter sweepOnce:33) Rebalance complete
[449.94 INFO] (Scenario run:97) CHANGE phase done
[449.95 INFO] (Scenario run:103) Starting REBOUND for 90 seconds
[539.95 INFO] (Scenario run:105) REBOUND done. Will collect results
[539.95 DEBUG] (Handle sendMessageAsync:183) > CANCEL@103.72
[539.97 INFO] (SDKD log:137) [Sdkd.Control|Info] Cancelling command 72 for Handle 103
[539.97 DEBUG] (Handle receiveMessage:158) < CANCEL@103.72
[539.97 DEBUG] (Handle sendMessageAsync:183) > CANCEL@104.72
[539.98 INFO] (SDKD log:137) [Sdkd.Control|Info] Cancelling command 72 for Handle 104
[2705.74 DEBUG] (Handle receiveMessage:158) < CANCEL@104.72
[2706.66 DEBUG] (Handle sendMessageAsync:183) > CANCEL@105.72
[2707.19 INFO] (SDKD log:137) [Sdkd.Control|Info] Cancelling command 72 for Handle 105
Terminate batch job (Y/N)? Y




part of the client logs when test stuck(02:37 - 03:14)

2014-09-17 02:37:18,228 [7] INFO Couchbase.Configuration.ConfigContextBase - Getting KeyMapper for rev#870 on thread 7
2014-09-17 02:37:18,227 [47] DEBUG Couchbase.IO.ConnectionPool`1 - Releasing: 40d8fbd1-7b5d-4334-a688-065d2575cca6 on 10.3.3.206:11207 - a17e5df5-7c63-4030-ba02-41309e68ea55
2014-09-17 02:37:18,225 [21] DEBUG Couchbase.IO.ConnectionPool`1 - Releasing: abf3e988-cbfc-4795-8523-325094b9e719 on 10.3.121.134:11207 - 624b4df1-35dc-4842-8a23-7db2310b001b
2014-09-17 02:37:18,232 [50] INFO Couchbase.Configuration.ConfigContextBase - Getting KeyMapper for rev#808 on thread 50
2014-09-17 02:37:18,230 [9] INFO Couchbase.Configuration.ConfigContextBase - Getting KeyMapper for rev#800 on thread 9
2014-09-17 02:37:18,231 [6] INFO Couchbase.Configuration.ConfigContextBase - Getting KeyMapper for rev#820 on thread 6
2014-09-17 02:37:18,233 [43] INFO Couchbase.Configuration.ConfigContextBase - Getting KeyMapper for rev#828 on thread 43
2014-09-17 02:37:18,253 [18] INFO Couchbase.Configuration.ConfigContextBase - Getting KeyMapper for rev#840 on thread 18
2014-09-17 02:37:18,252 [28] INFO Couchbase.Configuration.ConfigContextBase - Getting KeyMapper for rev#800 on thread 28
2014-09-17 02:37:18,254 [53] INFO Couchbase.Configuration.ConfigContextBase - Getting KeyMapper for rev#798 on thread 53
2014-09-17 02:37:18,258 [42] INFO Couchbase.Configuration.ConfigContextBase - Getting KeyMapper for rev#870 on thread 42
2014-09-17 02:37:18,258 [46] INFO Couchbase.Core.Buckets.VBucketKeyMapper - Using index 981 for key SimpleKeyREP5537REP5537REP5537REP5537REP5537 - rev798
2014-09-17 02:37:18,210 [49] INFO Couchbase.Core.Buckets.VBucketKeyMapper - Using index 515 for key SimpleKeyREP5382REP5382REP5382REP5382REP5382 - rev870
2014-09-17 02:37:19,297 [59] ERROR Couchbase.Views.ViewClient - System.Net.Http.HttpRequestException: An error occurred while sending the request. ---> System.Net.WebException: Unable to connect to the remote server ---> System.Net.Sockets.SocketException: No connection could be made because the target machine actively refused it 10.3.121.135:18092
   at System.Net.Sockets.Socket.EndConnect(IAsyncResult asyncResult)
   at System.Net.ServicePoint.ConnectSocketInternal(Boolean connectFailure, Socket s4, Socket s6, Socket& socket, IPAddress& address, ConnectSocketState state, IAsyncResult asyncResult, Exception& exception)
   --- End of inner exception stack trace ---
   at System.Net.HttpWebRequest.EndGetResponse(IAsyncResult asyncResult)
   at System.Net.Http.HttpClientHandler.GetResponseCallback(IAsyncResult ar)
   --- End of inner exception stack trace ---
2014-09-17 02:37:19,298 [13] ERROR Couchbase.Views.ViewClient - System.Net.Http.HttpRequestException: An error occurred while sending the request. ---> System.Net.WebException: Unable to connect to the remote server ---> System.Net.Sockets.SocketException: No connection could be made because the target machine actively refused it 10.3.121.136:18092
   at System.Net.Sockets.Socket.EndConnect(IAsyncResult asyncResult)
   at System.Net.ServicePoint.ConnectSocketInternal(Boolean connectFailure, Socket s4, Socket s6, Socket& socket, IPAddress& address, ConnectSocketState state, IAsyncResult asyncResult, Exception& exception)
   --- End of inner exception stack trace ---
   at System.Net.HttpWebRequest.EndGetResponse(IAsyncResult asyncResult)
   at System.Net.Http.HttpClientHandler.GetResponseCallback(IAsyncResult ar)
   --- End of inner exception stack trace ---
2014-09-17 02:37:19,299 [62] ERROR Couchbase.Views.ViewClient - System.Net.Http.HttpRequestException: An error occurred while sending the request. ---> System.Net.WebException: Unable to connect to the remote server ---> System.Net.Sockets.SocketException: No connection could be made because the target machine actively refused it 10.3.121.135:18092
   at System.Net.Sockets.Socket.EndConnect(IAsyncResult asyncResult)
   at System.Net.ServicePoint.ConnectSocketInternal(Boolean connectFailure, Socket s4, Socket s6, Socket& socket, IPAddress& address, ConnectSocketState state, IAsyncResult asyncResult, Exception& exception)
   --- End of inner exception stack trace ---
   at System.Net.HttpWebRequest.EndGetResponse(IAsyncResult asyncResult)
   at System.Net.Http.HttpClientHandler.GetResponseCallback(IAsyncResult ar)
   --- End of inner exception stack trace ---
2014-09-17 02:37:19,297 [20] ERROR Couchbase.Views.ViewClient - System.Net.Http.HttpRequestException: An error occurred while sending the request. ---> System.Net.WebException: Unable to connect to the remote server ---> System.Net.Sockets.SocketException: No connection could be made because the target machine actively refused it 10.3.121.135:18092
   at System.Net.Sockets.Socket.EndConnect(IAsyncResult asyncResult)
   at System.Net.ServicePoint.ConnectSocketInternal(Boolean connectFailure, Socket s4, Socket s6, Socket& socket, IPAddress& address, ConnectSocketState state, IAsyncResult asyncResult, Exception& exception)
   --- End of inner exception stack trace ---
   at System.Net.HttpWebRequest.EndGetResponse(IAsyncResult asyncResult)
   at System.Net.Http.HttpClientHandler.GetResponseCallback(IAsyncResult ar)
   --- End of inner exception stack trace ---
2014-09-17 02:37:19,299 [12] ERROR Couchbase.Views.ViewClient - System.Net.Http.HttpRequestException: An error occurred while sending the request. ---> System.Net.WebException: Unable to connect to the remote server ---> System.Net.Sockets.SocketException: No connection could be made because the target machine actively refused it 10.3.121.135:18092
   at System.Net.Sockets.Socket.EndConnect(IAsyncResult asyncResult)
   at System.Net.ServicePoint.ConnectSocketInternal(Boolean connectFailure, Socket s4, Socket s6, Socket& socket, IPAddress& address, ConnectSocketState state, IAsyncResult asyncResult, Exception& exception)
   --- End of inner exception stack trace ---
   at System.Net.HttpWebRequest.EndGetResponse(IAsyncResult asyncResult)
   at System.Net.Http.HttpClientHandler.GetResponseCallback(IAsyncResult ar)
   --- End of inner exception stack trace ---
2014-09-17 02:37:19,297 [15] ERROR Couchbase.Views.ViewClient - System.Net.Http.HttpRequestException: An error occurred while sending the request. ---> System.Net.WebException: Unable to connect to the remote server ---> System.Net.Sockets.SocketException: No connection could be made because the target machine actively refused it 10.3.121.135:18092
   at System.Net.Sockets.Socket.EndConnect(IAsyncResult asyncResult)
   at System.Net.ServicePoint.ConnectSocketInternal(Boolean connectFailure, Socket s4, Socket s6, Socket& socket, IPAddress& address, ConnectSocketState state, IAsyncResult asyncResult, Exception& exception)
   --- End of inner exception stack trace ---
   at System.Net.HttpWebRequest.EndGetResponse(IAsyncResult asyncResult)
   at System.Net.Http.HttpClientHandler.GetResponseCallback(IAsyncResult ar)
   --- End of inner exception stack trace ---
2014-09-17 02:37:19,301 [61] ERROR Couchbase.Views.ViewClient - System.Net.Http.HttpRequestException: An error occurred while sending the request. ---> System.Net.WebException: Unable to connect to the remote server ---> System.Net.Sockets.SocketException: No connection could be made because the target machine actively refused it 10.3.121.136:18092
   at System.Net.Sockets.Socket.EndConnect(IAsyncResult asyncResult)
   at System.Net.ServicePoint.ConnectSocketInternal(Boolean connectFailure, Socket s4, Socket s6, Socket& socket, IPAddress& address, ConnectSocketState state, IAsyncResult asyncResult, Exception& exception)
   --- End of inner exception stack trace ---
   at System.Net.HttpWebRequest.EndGetResponse(IAsyncResult asyncResult)
   at System.Net.Http.HttpClientHandler.GetResponseCallback(IAsyncResult ar)
   --- End of inner exception stack trace ---
2014-09-17 02:37:19,298 [60] ERROR Couchbase.Views.ViewClient - System.Net.Http.HttpRequestException: An error occurred while sending the request. ---> System.Net.WebException: Unable to connect to the remote server ---> System.Net.Sockets.SocketException: No connection could be made because the target machine actively refused it 10.3.121.136:18092
   at System.Net.Sockets.Socket.EndConnect(IAsyncResult asyncResult)
   at System.Net.ServicePoint.ConnectSocketInternal(Boolean connectFailure, Socket s4, Socket s6, Socket& socket, IPAddress& address, ConnectSocketState state, IAsyncResult asyncResult, Exception& exception)
   --- End of inner exception stack trace ---
   at System.Net.HttpWebRequest.EndGetResponse(IAsyncResult asyncResult)
   at System.Net.Http.HttpClientHandler.GetResponseCallback(IAsyncResult ar)
   --- End of inner exception stack trace ---
2014-09-17 02:37:19,300 [11] ERROR Couchbase.Views.ViewClient - System.Net.Http.HttpRequestException: An error occurred while sending the request. ---> System.Net.WebException: Unable to connect to the remote server ---> System.Net.Sockets.SocketException: No connection could be made because the target machine actively refused it 10.3.121.136:18092
   at System.Net.Sockets.Socket.EndConnect(IAsyncResult asyncResult)
   at System.Net.ServicePoint.ConnectSocketInternal(Boolean connectFailure, Socket s4, Socket s6, Socket& socket, IPAddress& address, ConnectSocketState state, IAsyncResult asyncResult, Exception& exception)
   --- End of inner exception stack trace ---
   at System.Net.HttpWebRequest.EndGetResponse(IAsyncResult asyncResult)
   at System.Net.Http.HttpClientHandler.GetResponseCallback(IAsyncResult ar)
   --- End of inner exception stack trace ---
2014-09-17 03:14:51,391 [7] INFO Couchbase.Core.Buckets.VBucketKeyMapper - Using index 427 for key SimpleKeyREP5352REP5352REP5352REP5352REP5352 - rev870
2014-09-17 03:14:51,391 [30] INFO Couchbase.Core.Buckets.VBucketKeyMapper - Using index 226 for key SimpleKeyREP5697REP5697REP5697REP5697REP5697 - rev870
2014-09-17 03:14:51,391 [24] INFO Couchbase.Core.Buckets.VBucketKeyMapper - Using index 958 for key SimpleKeyREP5964REP5964REP5964REP5964REP5964 - rev817
2014-09-17 03:14:51,391 [48] INFO Couchbase.Core.Buckets.VBucketKeyMapper - Using index 456 for key SimpleKeyREP5799REP5799REP5799REP5799REP5799 - rev810
2014-09-17 03:14:51,391 [8] INFO Couchbase.Core.Buckets.VBucketKeyMapper - Using index 461 for key SimpleKeyREP6028REP6028REP6028REP6028REP6028 - rev799
2014-09-17 03:14:51,334 [49] DEBUG Couchbase.Core.Server - Sending SimpleKeyREP5382REP5382REP5382REP5382REP5382 using server 10.3.121.134:11207
2014-09-17 03:14:51,391 [44] INFO Couchbase.Core.Buckets.VBucketKeyMapper - Using index 246 for key SimpleKeyREP5854REP5854REP5854REP5854REP5854 - rev870
2014-09-17 03:14:51,391 [6] INFO Couchbase.Core.Buckets.VBucketKeyMapper - Using index 34 for key SimpleKeyREP5909REP5909REP5909REP5909REP5909 - rev820
2014-09-17 03:14:51,391 [9] INFO Couchbase.Core.Buckets.VBucketKeyMapper - Using index 728 for key SimpleKeyREP5752REP5752REP5752REP5752REP5752 - rev800
2014-09-17 03:14:51,391 [43] INFO Couchbase.Core.Buckets.VBucketKeyMapper - Using index 554 for key SimpleKeyREP5750REP5750REP5750REP5750REP5750 - rev828
2014-09-17 03:14:51,391 [50] INFO Couchbase.Core.Buckets.VBucketKeyMapper - Using index 109 for key SimpleKeyREP5503REP5503REP5503REP5503REP5503 - rev808
2014-09-17 03:14:51,391 [18] INFO Couchbase.Core.Buckets.VBucketKeyMapper - Using index 633 for key SimpleKeyREP5670REP5670REP5670REP5670REP5670 - rev840
2014-09-17 03:14:51,391 [28] INFO Couchbase.Core.Buckets.VBucketKeyMapper - Using index 825 for key SimpleKeyREP5706REP5706REP5706REP5706REP5706 - rev800
2014-09-17 03:14:51,391 [53] INFO Couchbase.Core.Buckets.VBucketKeyMapper - Using index 964 for key SimpleKeyREP5289REP5289REP5289REP5289REP5289 - rev798
2014-09-17 03:14:51,391 [42] INFO Couchbase.Core.Buckets.VBucketKeyMapper - Using index 610 for key SimpleKeyREP5850REP5850REP5850REP5850REP5850 - rev870
2014-09-17 03:14:51,334 [46] DEBUG Couchbase.Core.Server - Sending SimpleKeyREP5537REP5537REP5537REP5537REP5537 using server 10.3.3.206:11207
2014-09-17 03:14:51,631 [45] DEBUG Couchbase.Core.Buckets.CouchbaseBucket - Operation succeeded 0 for key SimpleKeyREP5291REP5291REP5291REP5291REP5291
2014-09-17 03:14:51,631 [47] DEBUG Couchbase.Core.Buckets.CouchbaseBucket - Operation succeeded 0 for key SimpleKeyREP5660REP5660REP5660REP5660REP5660
2014-09-17 03:14:51,631 [21] DEBUG Couchbase.Core.Buckets.CouchbaseBucket - Operation succeeded 0 for key SimpleKeyREP5520REP5520REP5520REP5520REP5520
2014-09-17 03:14:51,632 [52] DEBUG Couchbase.Core.Buckets.CouchbaseBucket - Operation succeeded 0 for key SimpleKeyREP5089REP5089REP5089REP5089REP5089
2014-09-17 02:37:19,300 [63] ERROR Couchbase.Views.ViewClient - System.Net.Http.HttpRequestException: An error occurred while sending the request. ---> System.Net.WebException: Unable to connect to the remote server ---> System.Net.Sockets.SocketException: No connection could be made because the target machine actively refused it 10.3.121.136:18092
   at System.Net.Sockets.Socket.EndConnect(IAsyncResult asyncResult)
   at System.Net.ServicePoint.ConnectSocketInternal(Boolean connectFailure, Socket s4, Socket s6, Socket& socket, IPAddress& address, ConnectSocketState state, IAsyncResult asyncResult, Exception& exception)
   --- End of inner exception stack trace ---
   at System.Net.HttpWebRequest.EndGetResponse(IAsyncResult asyncResult)
   at System.Net.Http.HttpClientHandler.GetResponseCallback(IAsyncResult ar)
   --- End of inner exception stack trace ---
2014-09-17 03:14:54,754 [7] DEBUG Couchbase.Core.Server - Sending SimpleKeyREP5352REP5352REP5352REP5352REP5352 using server 10.3.3.206:11207
2014-09-17 03:14:54,756 [49] DEBUG Couchbase.IO.ConnectionPool`1 - Acquire existing: c1a7c0f9-9ae6-406a-870f-221d1cd5abc7 | 10.3.121.134:11207 | [0, 2] - 45e4bde8-afd4-4084-b4fe-1952631c5f47 - Disposed: False
2014-09-17 03:14:54,760 [18] DEBUG Couchbase.Core.Server - Sending SimpleKeyREP5670REP5670REP5670REP5670REP5670 using server 10.3.3.206:11207
2014-09-17 03:14:54,760 [28] DEBUG Couchbase.Core.Server - Sending SimpleKeyREP5706REP5706REP5706REP5706REP5706 using server 10.3.3.206:11207
2014-09-17 03:14:54,762 [46] DEBUG Couchbase.IO.ConnectionPool`1 - Acquire existing: dfdafeeb-7f31-4104-94ea-a7c9c951aa6e | 10.3.3.206:11207 | [0, 2] - 728e6fe1-8778-4acd-b15d-832d832b0a1a - Disposed: False
2014-09-17 03:14:54,760 [53] DEBUG Couchbase.Core.Server - Sending SimpleKeyREP5289REP5289REP5289REP5289REP5289 using server 10.3.3.206:11207
2014-09-17 03:14:54,761 [42] DEBUG Couchbase.Core.Server - Sending SimpleKeyREP5850REP5850REP5850REP5850REP5850 using server 10.3.3.206:11207
2014-09-17 03:14:54,749 [20] DEBUG Couchbase.Core.Buckets.CouchbaseBucket - trying again: 1
2014-09-17 03:14:54,750 [15] DEBUG Couchbase.Core.Buckets.CouchbaseBucket - trying again: 1
2014-09-17 03:14:54,760 [59] DEBUG Couchbase.Core.Buckets.CouchbaseBucket - trying again: 1
2014-09-17 03:14:54,747 [13] DEBUG Couchbase.Core.Buckets.CouchbaseBucket - trying again: 1
2014-09-17 03:14:54,748 [62] DEBUG Couchbase.Core.Buckets.CouchbaseBucket - trying again: 1
2014-09-17 03:14:54,760 [50] DEBUG Couchbase.Core.Server - Sending SimpleKeyREP5503REP5503REP5503REP5503REP5503 using server 10.3.121.134:11207
2014-09-17 03:14:54,750 [12] DEBUG Couchbase.Core.Buckets.CouchbaseBucket - trying again: 1
2014-09-17 03:14:54,758 [9] DEBUG Couchbase.Core.Server - Sending SimpleKeyREP5752REP5752REP5752REP5752REP5752 using server 10.3.3.206:11207
2014-09-17 03:14:54,754 [30] DEBUG Couchbase.Core.Server - Sending SimpleKeyREP5697REP5697REP5697REP5697REP5697 using server 10.3.121.134:11207
2014-09-17 03:14:54,752 [60] DEBUG Couchbase.Core.Buckets.CouchbaseBucket - trying again: 1
2014-09-17 03:14:54,753 [11] DEBUG Couchbase.Core.Buckets.CouchbaseBucket - trying again: 1
2014-09-17 03:14:54,755 [48] DEBUG Couchbase.Core.Server - Sending SimpleKeyREP5799REP5799REP5799REP5799REP5799 using server 10.3.3.206:11207



 Comments   
Comment by Jeff Morris [ 17/Sep/14 ]
Hi Andrei -

Can you define "stuck"? Seeing exceptions in the logs is expected, but if the client has stopped completely, this is definitely a blocking issue.

-Jeff
Comment by Andrei Baranouski [ 17/Sep/14 ]
yes, the client has stopped completely
 I only got a new batch of activities (in logs), after I click Ctrl+c in terminal where I run the tests.
That's all I can tell you now. let me know if you need some detail on this issue
Comment by Jeff Morris [ 17/Sep/14 ]
Hi Andrei -

Can you do a "Debug->Break All" and look at the threads to see where it's blocking? I am guessing it's on one of the Wait()'s that doesn't have a timeout set.

Thanks,

Jeff
Comment by Jeff Morris [ 29/Sep/14 ]
I doubt it's related and I may create an MB, but view performance is erratic (~90ms to ~15s) during a node removal/fail-over and subsequent rebalance:

Line 338: 2014-09-29 19:12:39,724 [Runner thread] DEBUG Wintellect.OperationTimer2 - 330 (GCs= 2)
Line 340: 2014-09-29 19:12:40,134 [Runner thread] DEBUG Wintellect.OperationTimer2 - 376 (GCs= 2)
Line 342: 2014-09-29 19:12:40,484 [Runner thread] DEBUG Wintellect.OperationTimer2 - 326 (GCs= 2)
Line 344: 2014-09-29 19:12:40,860 [Runner thread] DEBUG Wintellect.OperationTimer2 - 344 (GCs= 2)
Line 346: 2014-09-29 19:12:41,297 [Runner thread] DEBUG Wintellect.OperationTimer2 - 408 (GCs= 2)
Line 348: 2014-09-29 19:12:41,656 [Runner thread] DEBUG Wintellect.OperationTimer2 - 325 (GCs= 2)
Line 350: 2014-09-29 19:12:42,070 [Runner thread] DEBUG Wintellect.OperationTimer2 - 380 (GCs= 2)
Line 352: 2014-09-29 19:12:42,519 [Runner thread] DEBUG Wintellect.OperationTimer2 - 422 (GCs= 2)
Line 354: 2014-09-29 19:12:43,112 [Runner thread] DEBUG Wintellect.OperationTimer2 - 558 (GCs= 2)
Line 356: 2014-09-29 19:12:43,767 [Runner thread] DEBUG Wintellect.OperationTimer2 - 620 (GCs= 2)
Line 358: 2014-09-29 19:12:44,311 [Runner thread] DEBUG Wintellect.OperationTimer2 - 514 (GCs= 2)
Line 360: 2014-09-29 19:12:44,889 [Runner thread] DEBUG Wintellect.OperationTimer2 - 550 (GCs= 2)
Line 362: 2014-09-29 19:12:45,555 [Runner thread] DEBUG Wintellect.OperationTimer2 - 620 (GCs= 2)
Line 364: 2014-09-29 19:12:46,457 [Runner thread] DEBUG Wintellect.OperationTimer2 - 855 (GCs= 2)
Line 366: 2014-09-29 19:12:47,389 [Runner thread] DEBUG Wintellect.OperationTimer2 - 878 (GCs= 2)
Line 368: 2014-09-29 19:12:53,148 [Runner thread] DEBUG Wintellect.OperationTimer2 - 5,712 (GCs= 2)
Line 370: 2014-09-29 19:12:53,917 [Runner thread] DEBUG Wintellect.OperationTimer2 - 739 (GCs= 2)
Line 372: 2014-09-29 19:12:54,685 [Runner thread] DEBUG Wintellect.OperationTimer2 - 733 (GCs= 2)
Line 374: 2014-09-29 19:13:00,458 [Runner thread] DEBUG Wintellect.OperationTimer2 - 5,734 (GCs= 2)
Line 376: 2014-09-29 19:13:01,153 [Runner thread] DEBUG Wintellect.OperationTimer2 - 665 (GCs= 2)
Line 378: 2014-09-29 19:13:01,805 [Runner thread] DEBUG Wintellect.OperationTimer2 - 627 (GCs= 2)
Line 380: 2014-09-29 19:13:02,406 [Runner thread] DEBUG Wintellect.OperationTimer2 - 559 (GCs= 2)
Line 382: 2014-09-29 19:13:02,834 [Runner thread] DEBUG Wintellect.OperationTimer2 - 396 (GCs= 2)
Line 384: 2014-09-29 19:13:03,476 [Runner thread] DEBUG Wintellect.OperationTimer2 - 615 (GCs= 2)
Line 386: 2014-09-29 19:13:14,271 [Runner thread] DEBUG Wintellect.OperationTimer2 - 10,763 (GCs= 2)
Line 388: 2014-09-29 19:13:14,995 [Runner thread] DEBUG Wintellect.OperationTimer2 - 693 (GCs= 2)
Line 390: 2014-09-29 19:13:20,586 [Runner thread] DEBUG Wintellect.OperationTimer2 - 5,559 (GCs= 3)
Line 392: 2014-09-29 19:13:21,353 [Runner thread] DEBUG Wintellect.OperationTimer2 - 731 (GCs= 2)
Line 394: 2014-09-29 19:13:21,933 [Runner thread] DEBUG Wintellect.OperationTimer2 - 550 (GCs= 2)
Line 396: 2014-09-29 19:13:22,508 [Runner thread] DEBUG Wintellect.OperationTimer2 - 542 (GCs= 2)
Line 398: 2014-09-29 19:13:23,228 [Runner thread] DEBUG Wintellect.OperationTimer2 - 689 (GCs= 2)
Line 400: 2014-09-29 19:13:23,739 [Runner thread] DEBUG Wintellect.OperationTimer2 - 477 (GCs= 2)
Line 402: 2014-09-29 19:13:29,418 [Runner thread] DEBUG Wintellect.OperationTimer2 - 5,649 (GCs= 3)
Line 404: 2014-09-29 19:13:30,048 [Runner thread] DEBUG Wintellect.OperationTimer2 - 590 (GCs= 2)
Line 406: 2014-09-29 19:13:30,639 [Runner thread] DEBUG Wintellect.OperationTimer2 - 557 (GCs= 2)
Line 408: 2014-09-29 19:13:31,193 [Runner thread] DEBUG Wintellect.OperationTimer2 - 524 (GCs= 2)
Line 410: 2014-09-29 19:13:31,825 [Runner thread] DEBUG Wintellect.OperationTimer2 - 599 (GCs= 2)
Line 412: 2014-09-29 19:13:32,429 [Runner thread] DEBUG Wintellect.OperationTimer2 - 573 (GCs= 2)
Line 414: 2014-09-29 19:13:48,187 [Runner thread] DEBUG Wintellect.OperationTimer2 - 15,732 (GCs= 3)
Line 416: 2014-09-29 19:13:48,806 [Runner thread] DEBUG Wintellect.OperationTimer2 - 578 (GCs= 2)
Line 418: 2014-09-29 19:13:49,433 [Runner thread] DEBUG Wintellect.OperationTimer2 - 591 (GCs= 2)
Line 420: 2014-09-29 19:13:50,060 [Runner thread] DEBUG Wintellect.OperationTimer2 - 594 (GCs= 2)
Line 422: 2014-09-29 19:13:50,912 [Runner thread] DEBUG Wintellect.OperationTimer2 - 807 (GCs= 2)
Line 424: 2014-09-29 19:13:51,553 [Runner thread] DEBUG Wintellect.OperationTimer2 - 609 (GCs= 2)
Line 426: 2014-09-29 19:13:52,447 [Runner thread] DEBUG Wintellect.OperationTimer2 - 868 (GCs= 2)
Line 428: 2014-09-29 19:13:53,022 [Runner thread] DEBUG Wintellect.OperationTimer2 - 541 (GCs= 2)
Line 430: 2014-09-29 19:13:53,711 [Runner thread] DEBUG Wintellect.OperationTimer2 - 649 (GCs= 2)
Line 432: 2014-09-29 19:13:59,399 [Runner thread] DEBUG Wintellect.OperationTimer2 - 5,655 (GCs= 3)
Line 434: 2014-09-29 19:14:00,317 [Runner thread] DEBUG Wintellect.OperationTimer2 - 882 (GCs= 2)
Line 436: 2014-09-29 19:14:00,949 [Runner thread] DEBUG Wintellect.OperationTimer2 - 600 (GCs= 2)
Line 438: 2014-09-29 19:14:01,647 [Runner thread] DEBUG Wintellect.OperationTimer2 - 669 (GCs= 2)
Line 440: 2014-09-29 19:14:02,398 [Runner thread] DEBUG Wintellect.OperationTimer2 - 712 (GCs= 2)
Line 442: 2014-09-29 19:14:03,046 [Runner thread] DEBUG Wintellect.OperationTimer2 - 616 (GCs= 2)
Line 444: 2014-09-29 19:14:03,539 [Runner thread] DEBUG Wintellect.OperationTimer2 - 462 (GCs= 2)
Line 446: 2014-09-29 19:14:03,965 [Runner thread] DEBUG Wintellect.OperationTimer2 - 395 (GCs= 2)
Line 448: 2014-09-29 19:14:04,393 [Runner thread] DEBUG Wintellect.OperationTimer2 - 395 (GCs= 2)
Line 450: 2014-09-29 19:14:04,980 [Runner thread] DEBUG Wintellect.OperationTimer2 - 562 (GCs= 2)
Line 452: 2014-09-29 19:14:10,189 [Runner thread] DEBUG Wintellect.OperationTimer2 - 5,168 (GCs= 2)
Line 454: 2014-09-29 19:14:10,368 [Runner thread] DEBUG Wintellect.OperationTimer2 - 152 (GCs= 2)
Line 456: 2014-09-29 19:14:10,555 [Runner thread] DEBUG Wintellect.OperationTimer2 - 162 (GCs= 2)
Line 458: 2014-09-29 19:14:10,714 [Runner thread] DEBUG Wintellect.OperationTimer2 - 122 (GCs= 2)
Line 460: 2014-09-29 19:14:10,920 [Runner thread] DEBUG Wintellect.OperationTimer2 - 175 (GCs= 2)
Line 462: 2014-09-29 19:14:11,088 [Runner thread] DEBUG Wintellect.OperationTimer2 - 142 (GCs= 2)
Line 464: 2014-09-29 19:14:11,240 [Runner thread] DEBUG Wintellect.OperationTimer2 - 120 (GCs= 2)
Line 466: 2014-09-29 19:14:11,443 [Runner thread] DEBUG Wintellect.OperationTimer2 - 174 (GCs= 2)
Line 468: 2014-09-29 19:14:11,620 [Runner thread] DEBUG Wintellect.OperationTimer2 - 152 (GCs= 2)
Line 470: 2014-09-29 19:14:11,805 [Runner thread] DEBUG Wintellect.OperationTimer2 - 152 (GCs= 2)
Line 472: 2014-09-29 19:14:12,008 [Runner thread] DEBUG Wintellect.OperationTimer2 - 174 (GCs= 2)
Line 474: 2014-09-29 19:14:12,190 [Runner thread] DEBUG Wintellect.OperationTimer2 - 158 (GCs= 2)
Line 476: 2014-09-29 19:14:12,353 [Runner thread] DEBUG Wintellect.OperationTimer2 - 132 (GCs= 2)
Line 478: 2014-09-29 19:14:12,530 [Runner thread] DEBUG Wintellect.OperationTimer2 - 149 (GCs= 2)
Line 480: 2014-09-29 19:14:12,724 [Runner thread] DEBUG Wintellect.OperationTimer2 - 171 (GCs= 2)
Line 482: 2014-09-29 19:14:12,883 [Runner thread] DEBUG Wintellect.OperationTimer2 - 126 (GCs= 2)
Line 484: 2014-09-29 19:14:13,053 [Runner thread] DEBUG Wintellect.OperationTimer2 - 136 (GCs= 2)
Line 486: 2014-09-29 19:14:13,221 [Runner thread] DEBUG Wintellect.OperationTimer2 - 145 (GCs= 2)
Line 488: 2014-09-29 19:14:13,349 [Runner thread] DEBUG Wintellect.OperationTimer2 - 96 (GCs= 2)

Note that all of those requests were against the node that was not removed from the cluster. They were also the same view query.
Comment by Andrei Baranouski [ 30/Sep/14 ]
can't reproduce with commit https://github.com/couchbase/couchbase-net-client/commit/747fa5523cf0b8cbefb9f615b877c41136b4fec7
Comment by Jeff Morris [ 04/Nov/14 ]
Re-opening so I can set the fix version to Beta2
Comment by Jeff Morris [ 04/Nov/14 ]
Closing




[NCBC-644] ops/sec is not restored to the expected value even when warmup completed (restart 3/4 nodes) Created: 17/Sep/14  Updated: 04/Nov/14  Resolved: 04/Nov/14

Status: Closed
Project: Couchbase .NET client library
Component/s: library
Affects Version/s: 2.0 Beta
Fix Version/s: 2.0 Beta 2

Type: Bug Priority: Blocker
Reporter: Andrei Baranouski Assignee: Jeff Morris
Resolution: Fixed Votes: 0
Labels: None
Σ Remaining Estimate: Not Specified Remaining Estimate: Not Specified
Σ Time Spent: Not Specified Time Spent: Not Specified
Σ Original Estimate: Not Specified Original Estimate: Not Specified

Attachments: HTML File c8a06f8889f4ee9408205f024dabd0fe-CB.html     HTML File c8a06f8889f4ee9408205f024dabd0fe-MC.html     Microsoft Excel report (38).xls    
Issue Links:
Duplicate
duplicates NCBC-671 During rebalance client blocks while ... Resolved
is duplicated by NCBC-673 MEMD_ENOENT errors after failover nod... Closed
Relates to
relates to NCBC-683 When a node goes on/offline ensure th... Resolved
Sub-Tasks:
Key
Summary
Type
Status
Assignee
NCBC-683 When a node goes on/offline ensure th... Technical task Resolved Jeff Morris  

 Description   
http://sdkbuilds.couchbase.com/job/.net-sdkdclient-ng2-andrei/97/consoleFull

Running SvcRestart-HYBRID: 2014-09-17 01:47:02
    service/restore_delay=5
    workload=HybridWorkloadGroup
    service/name=SYSV_SERVICE
    service/action=kill
    service/count=3
    testcase=ServiceFailureScenario
    Logging to c:\jenkins\workspace\.net-sdkdclient-ng2-andrei\sdkdclient-ng\log\SDK-SDK\CB-3.0.0-1208\SvcRestart-HYBRID\09-17-14\031622\c8a06f8889f4ee9408205f024dabd0fe

    To re-run the test, copy/paste the following into the shell.
    You may also copy/paste (except the first line) into an argfile
    8<----------------------------------------
    ./stester \
        --service-restore_delay 5 --workload HybridWorkloadGroup
 \
        --service-name SYSV_SERVICE --service-action kill --service-count
 \
        3 --testcase ServiceFailureScenario -C share\rexec --rexec_path
 \
        C:\temp\sdkd-out-debug\SdkdConsole.exe --rexec_port 8675
 \
        --cluster_node=10.3.121.134 --cluster_node=10.3.121.135
 \
        --cluster_node=10.3.121.136 --cluster_node=10.3.3.206
 \
        --cluster_ssh-username=root --cluster_ssh-password=couchbase
    ---------------------------------------->8
[1587.82 WARN] (Drivers getDriver:76) 'rexec' is now mapped to *local* execution only. Use RemoteExecutingDriver for remote execution
[1587.91 INFO] (RunContext run:102) Ramp for 30 seconds. Cluster modification: Execute '/etc/init.d/couchbase-server stop' on 3 nodes waiting 1 seconds between each invocation sleep for 5 seconds and restore the nodes. Restoring is peformed by: re-active the services by invoking /etc/init.d/couchbase-server starton each of the nodes. Rebound for 90 seconds.


..............


[1687.17 INFO] (SDKD log:137)  "ViewName": "test_view"
[1687.17 INFO] (SDKD log:137) } 
[1717.17 INFO] (Scenario run:86) Starting CHANGE phase
[1717.17 DEBUG] (SSHCommand execute:75) Running /etc/init.d/couchbase-server stop on 10.3.121.135
[1721.05 INFO] (SDKD log:137) [Sdkd.Result|Warn] Unrecognized return code 409 
[1722.70 DEBUG] (SSHCommand close:147) Closing channel com.jcraft.jsch.ChannelExec@6dc8f3cd
[1723.71 DEBUG] (SSHCommand execute:75) Running /etc/init.d/couchbase-server stop on 10.3.121.136
[1726.96 DEBUG] (SSHCommand close:147) Closing channel com.jcraft.jsch.ChannelExec@4271c5bc
[1727.98 DEBUG] (SSHCommand execute:75) Running /etc/init.d/couchbase-server stop on 10.3.3.206
[1731.62 DEBUG] (SSHCommand close:147) Closing channel com.jcraft.jsch.ChannelExec@1bb1deea
[1732.63 INFO] (Scenario sleepAndDo:109) Sleeping 5 seconds
[1737.63 INFO] (Scenario executeChange:134) Turning on services for nodes
[1737.63 DEBUG] (SSHCommand execute:75) Running /etc/init.d/couchbase-server start on 10.3.121.135
[1739.48 DEBUG] (SSHCommand close:147) Closing channel com.jcraft.jsch.ChannelExec@ab245dc
[1740.53 DEBUG] (SSHCommand execute:75) Running /etc/init.d/couchbase-server start on 10.3.121.136
[1742.20 DEBUG] (SSHCommand close:147) Closing channel com.jcraft.jsch.ChannelExec@5c538b31
[1743.25 DEBUG] (SSHCommand execute:75) Running /etc/init.d/couchbase-server start on 10.3.3.206
[1744.92 DEBUG] (SSHCommand close:147) Closing channel com.jcraft.jsch.ChannelExec@66de04cd
[1745.93 INFO] (Scenario run:97) CHANGE phase done
[1745.93 INFO] (Scenario run:103) Starting REBOUND for 90 seconds
[1751.36 INFO] (SDKD log:137) [Sdkd.ViewQuery|Error] ... System.NullReferenceException Object reference not set to an instance of an object. at Sdkd.Views.ViewCommand.Run() in c:\jenkins\workspace\.net-sdkdclient-ng2-andrei\sdkd-net\src\Sdkd\Views\ViewCommand.cs:line 268
[1835.93 INFO] (Scenario run:105) REBOUND done. Will collect results
[1835.93 DEBUG] (Handle sendMessageAsync:183) > CANCEL@278.597



please see report c8a06f8889f4ee9408205f024dabd0fe-MC.html

warmup should not take more than a minute(it should be even less 20 seconds, only 1600 items are in the bucket) but within 90 seconds ops/sec statistic is extremely slow.

in client logs I see a large number of exceptions:
2014-09-17 01:49:19,230 [27] DEBUG Couchbase.IO.ConnectionPool`1 - Acquire existing: be174e18-0c3f-4c4a-ab65-5ac8575468a8 | 10.3.121.135:11210 | [0, 2] - 8f050465-bd1e-4798-9e75-b7dced55a859 - Disposed: False
2014-09-17 01:49:19,230 [27] INFO Couchbase.IO.ConnectionBase - Sending key SimpleKeyREP3692REP3692REP3692REP3692REP3692 using 313 on 10.3.121.135:11210
2014-09-17 01:49:19,230 [27] WARN Couchbase.IO.ConnectionBase - Opcode=Set | Key=SimpleKeyREP3692REP3692REP3692REP3692REP3692 | Host=10.3.121.135:11210
System.IO.IOException: Unable to write data to the transport connection: An existing connection was forcibly closed by the remote host. ---> System.Net.Sockets.SocketException: An existing connection was forcibly closed by the remote host
   at System.Net.Sockets.Socket.BeginSend(Byte[] buffer, Int32 offset, Int32 size, SocketFlags socketFlags, AsyncCallback callback, Object state)
   at System.Net.Sockets.NetworkStream.BeginWrite(Byte[] buffer, Int32 offset, Int32 size, AsyncCallback callback, Object state)
   --- End of inner exception stack trace ---
   at System.Net.Sockets.NetworkStream.BeginWrite(Byte[] buffer, Int32 offset, Int32 size, AsyncCallback callback, Object state)
   at Couchbase.IO.Strategies.EapConnection.Send[T](IOperation`1 operation) in c:\jenkins\workspace\.net-sdkdclient-ng2-andrei\couchbase-net-client\Src\Couchbase\IO\Strategies\EapConnection.cs:line 38
2014-09-17 01:49:19,230 [27] DEBUG Couchbase.IO.ConnectionPool`1 - Releasing: be174e18-0c3f-4c4a-ab65-5ac8575468a8 on 10.3.121.135:11210 - 8f050465-bd1e-4798-9e75-b7dced55a859
2014-09-17 01:49:19,231 [27] DEBUG Couchbase.Core.Server - Sending using server 10.3.121.134:11210
2014-09-17 01:49:19,231 [27] DEBUG Couchbase.IO.ConnectionPool`1 - Acquire existing: 4be40fbd-8d82-49de-931f-598e6276e7cd | 10.3.121.134:11210 | [0, 2] - b7812f0a-380b-41a4-92f4-ac1db0e0f3a0 - Disposed: False
2014-09-17 01:49:19,231 [27] INFO Couchbase.IO.ConnectionBase - Sending key using 0 on 10.3.121.134:11210
2014-09-17 01:49:19,228 [31] INFO Couchbase.Core.Buckets.VBucketKeyMapper - Using index 457 for key SimpleKeyREP3796REP3796REP3796REP3796REP3796 - rev4
2014-09-17 01:49:19,231 [31] DEBUG Couchbase.Core.Server - Sending SimpleKeyREP3796REP3796REP3796REP3796REP3796 using server 10.3.121.135:11210
2014-09-17 01:49:19,231 [31] DEBUG Couchbase.IO.ConnectionPool`1 - Acquire existing: e63556d1-caf1-44fc-8f81-11a670a45a9b | 10.3.121.135:11210 | [0, 2] - 3cd6215b-e17c-493c-bf94-885b7cafaf1a - Disposed: False
2014-09-17 01:49:19,231 [31] INFO Couchbase.IO.ConnectionBase - Sending key SimpleKeyREP3796REP3796REP3796REP3796REP3796 using 457 on 10.3.121.135:11210
2014-09-17 01:49:19,231 [31] WARN Couchbase.IO.ConnectionBase - Opcode=Get | Key=SimpleKeyREP3796REP3796REP3796REP3796REP3796 | Host=10.3.121.135:11210
System.IO.IOException: Unable to write data to the transport connection: An existing connection was forcibly closed by the remote host. ---> System.Net.Sockets.SocketException: An existing connection was forcibly closed by the remote host
   at System.Net.Sockets.Socket.BeginSend(Byte[] buffer, Int32 offset, Int32 size, SocketFlags socketFlags, AsyncCallback callback, Object state)
   at System.Net.Sockets.NetworkStream.BeginWrite(Byte[] buffer, Int32 offset, Int32 size, AsyncCallback callback, Object state)
   --- End of inner exception stack trace ---
   at System.Net.Sockets.NetworkStream.BeginWrite(Byte[] buffer, Int32 offset, Int32 size, AsyncCallback callback, Object state)
   at Couchbase.IO.Strategies.EapConnection.Send[T](IOperation`1 operation) in c:\jenkins\workspace\.net-sdkdclient-ng2-andrei\couchbase-net-client\Src\Couchbase\IO\Strategies\EapConnection.cs:line 38
2014-09-17 01:49:19,231 [31] DEBUG Couchbase.IO.ConnectionPool`1 - Releasing: e63556d1-caf1-44fc-8f81-11a670a45a9b on 10.3.121.135:11210 - 3cd6215b-e17c-493c-bf94-885b7cafaf1a
2014-09-17 01:49:19,231 [31] DEBUG Couchbase.Core.Server - Sending using server 10.3.121.136:11210
2014-09-17 01:49:19,231 [31] DEBUG Couchbase.IO.ConnectionPool`1 - Acquire existing: 092717c9-ef47-41df-8a81-839302b58bde | 10.3.121.136:11210 | [0, 2] - df9f7db5-1e94-4d4e-ac0d-441ff1b9c698 - Disposed: False
2014-09-17 01:49:19,231 [31] INFO Couchbase.IO.ConnectionBase - Sending key using 0 on 10.3.121.136:11210



 Comments   
Comment by Andrei Baranouski [ 17/Sep/14 ]
https://s3.amazonaws.com/bugdb/jira/NCBC-644/78bc58e9/NCBC-644.zip
Comment by Andrei Baranouski [ 30/Sep/14 ]
still observe this behavior with https://github.com/couchbase/couchbase-net-client/commit/747fa5523cf0b8cbefb9f615b877c41136b4fec7

http://sdk-testresults.couchbase.com.s3.amazonaws.com/SDK-SDK/CB-2.5.0-1059/SvcRestart-HYBRID/09-30-14/049947/e0393e54abd7f02a1e20fd0712d8d722-MC.html
http://sdkbuilds.couchbase.com/job/.net-sdkdclient-ng2-andrei/119/artifact/report.xls

believe that this bug is still relevant
Comment by Jeff Morris [ 30/Sep/14 ]
http://review.couchbase.org/#/c/41787/
Comment by Jeff Morris [ 01/Oct/14 ]
I reverted my patch and no longer can reproduce; i am not sure why. I don't feel confident closing it unless I can verify it's resolved.
Comment by Andrei Baranouski [ 07/Oct/14 ]
from the latest run http://sdk-testresults.couchbase.com.s3.amazonaws.com/SDK-SDK/CB-3.0.0-1209/SvcRestart-HYBRID/10-07-14/038610/68ba548f928d0e7f97e0f181e8ff152f-MC.html
(see also http://www.couchbase.com/issues/browse/NCBC-673?focusedCommentId=102137&page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-102137)
Comment by Andrei Baranouski [ 09/Oct/14 ]
from the latest run
http://sdk-testresults.couchbase.com.s3.amazonaws.com/SDK-SDK/CB-3.0.0-1209/SvcRestart-HYBRID/10-09-14/029367/b4ca84fc5f47cff3e56920c950c58b35-MC.html
the issue could be related to NCBC-673
Comment by Jeff Morris [ 12/Oct/14 ]
These two tickets are largely the same (but different). We should have probably opened up separate, more specific tickets since there were actually several issues related to it.
Comment by Jeff Morris [ 12/Oct/14 ]
http://review.couchbase.org/#/c/42070/
Comment by Andrei Baranouski [ 13/Oct/14 ]
Hi Jeff,
it's sill reproduced
http://sdk-testresults.couchbase.com.s3.amazonaws.com/SDK-SDK/CB-3.0.0-1209/SvcRestart-HYBRID/10-13-14/040635/a4a3571d00c8fffb7d854bc6b4e671bb-MC.html
http://sdkbuilds.couchbase.com/job/.net-sdkdclient-ng2-andrei/145/console
https://s3.amazonaws.com/bugdb/jira/NCBC-673/c6f42e31/NCBC-644_SvcRestart.zip
Comment by Jeff Morris [ 13/Oct/14 ]
Ok, with a clearer understanding of what's going on WRT the test, I am able to replicate. When the nodes are shutdown, the client's connections are still in place, but each operation results in a timeout. Once the nodes are started, the connections are old and will return reset or forcibly closed, which is an indication to rebuild the internal connection pool.
Comment by Jeff Morris [ 14/Oct/14 ]
http://review.couchbase.org/#/c/42101/
Comment by Andrei Baranouski [ 14/Oct/14 ]
fixed http://sdk-testresults.couchbase.com.s3.amazonaws.com/SDK-SDK/CB-3.0.0-1209/SvcRestart-HYBRID/10-14-14/050554/0109fd730b043bf9b58b75bd627b3829-MC.html
Comment by Jeff Morris [ 04/Nov/14 ]
Re-opening so I can set the fix version to Beta2
Comment by Jeff Morris [ 04/Nov/14 ]
Closing




[NCBC-643] TimeSpan expiration under 1 sec results in an infinite timeout Created: 16/Sep/14  Updated: 31/Oct/14  Resolved: 31/Oct/14

Status: Resolved
Project: Couchbase .NET client library
Component/s: None
Affects Version/s: 1.3.6
Fix Version/s: 1.3.10

Type: Bug Priority: Major
Reporter: Jeff Dillon Assignee: Jeff Morris
Resolution: Fixed Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   
Starting in 1.3.6, when setting the TimeSpan expiration to less than 1 sec it appears to now round down to 0 which implies an infinite timeout. This does not currently have direct production impact, but this changed behavior broke the testing process for the customer.

From the customer:

"There looks to be 2 options to specify timeouts in .NET SDK, either with DateTime or with TimeSpan. Both of them technically allow users to specify timeouts with just a fraction of a second, even though internally Couchbase works with full seconds.

Example:
var result1 = client.ExecuteStore(StoreMode.Set, "a", 1, DateTime.UtcNow.AddMilliseconds(500));
var result2 = client.ExecuteStore(StoreMode.Set, "b", 1, TimeSpan.FromMilliseconds(500));

Behavior for first method remains unchanged. The DateTime value will get recalculated into UNIX time and rounded down to full seconds. The key "a" will then be stored in Couchbase with expiration equal to current time and will expire almost instantly. That is pretty much in line with what user intended.

The problem is with the second method. In .NET SDK 1.3.5 this TimeSpan value would get recalculated into a UNIX time the same way as DateTime and result in the same behavior. But NCBC-485 changed this. From .NET SDK 1.3.6 this TimeSpan is passed into Couchbase as raw seconds. You trim the 0.5 second value down to 0 seconds and Couchbase server then interprets this as infinite timeout. But that is the complete opposite of what user actually intended."

A fix suggestion is as follows:

https://github.com/couchbase/couchbase-net-client/blob/release13/src/Enyim.Caching/MemcachedClient.cs
line 1046 should be modified to:
if (TimeSpan.FromSeconds(1) <= validFor && validFor < TimeSpan.FromSeconds(((60 * 60) * 24) * 30))

 Comments   
Comment by Jeff Morris [ 31/Oct/14 ]
Jeff -

Thanks for the in-depth description and fix suggestion (which works). You can see the code in gerrit while it's being reviewed: http://review.couchbase.org/#/c/42680/

If you have a gerrit account and want to help or comment on the review, send me your username.

Thanks,

Jeff




[NCBC-642] Use IOControl to set heartbeat settings on each TCP connection Created: 15/Sep/14  Updated: 29/Oct/14

Status: Open
Project: Couchbase .NET client library
Component/s: library
Affects Version/s: 2.0 Beta
Fix Version/s: 2.0.1

Type: Task Priority: Major
Reporter: Jeff Morris Assignee: Jeff Morris
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Dependency




[NCBC-641] Update version and other assembly metadata info Created: 15/Sep/14  Updated: 04/Nov/14  Resolved: 23/Oct/14

Status: Resolved
Project: Couchbase .NET client library
Component/s: library
Affects Version/s: 2.0 Beta
Fix Version/s: None

Type: Task Priority: Major
Reporter: Jeff Morris Assignee: Jeff Morris
Resolution: Fixed Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   
The assembly version is 1.0.0.0 (the default) for the Beta release. This will be scripted in future releases.

 Comments   
Comment by Jeff Morris [ 23/Oct/14 ]
I am not going to commit this, but I bumped up the file and assembly version to 2.0.0.1. This may conflict with semver/nuget packaging, for which beta is 2.0.0...if so I'll have to bump it up again to 2.0.1.




[NCBC-640] Couchbase.CouchbaseCluster is redundant. Created: 12/Sep/14  Updated: 04/Nov/14  Resolved: 28/Sep/14

Status: Resolved
Project: Couchbase .NET client library
Component/s: library
Affects Version/s: 2.0 DP3
Fix Version/s: None

Type: Task Priority: Major
Reporter: Brett Lawson Assignee: Jeff Morris
Resolution: Fixed Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   
The CouchbaseCluster class duplicates the namespace. Should this class not be named simply 'Cluster'?

 Comments   
Comment by Jeff Morris [ 28/Sep/14 ]
http://review.couchbase.org/#/c/41742/




[NCBC-639] ThrowOperationCanceledException in SendWithRetry[T](ViewQuery query) when 3 from 4 nodes restarted Created: 12/Sep/14  Updated: 30/Sep/14  Resolved: 12/Sep/14

Status: Closed
Project: Couchbase .NET client library
Component/s: library
Affects Version/s: 2.0 DP3
Fix Version/s: 2.0 Beta

Type: Bug Priority: Critical
Reporter: Andrei Baranouski Assignee: