2.0.3 client not handling correctly the response from server


#1

Server version : 3.0.2-1603
Client version : 2.0.3
Couchbase bucket.

I am trying to upsert a larger than usual object and i have a problem. The Byte array of the whole request has about 32KB. I suspect that the size may be the problem, beecase it is in fact an array of objects, and if i try to insert smaller araray everything is fine.

The problem is that when i try to insert this array, the serwer respoends with a very small response. It is 3 bytes [129,0,1].

I belive that the couchbase client expects that the response is at least 24 bytes, cause it tries to parse the header, and there is index out of bounds exception.

How can I deal with this problem ?

Best regards
Piotr


#2

Update: This issue occurs on Windows version 3.0.2-1603 Enterprise. It does not occur on linux 3.0.1 Community Edition (build-1444).

Regards
Piotr


#3

hey @drak25,

it could be a server issue… can you confirm (via a tcpdump, wireshark, etc…) that the response is indeed 3 bytes? That the 3.0.1 server responds differently? Did you test it with a 3.0.1 windows version? (could also be related to windows builds)

@jmorris any insight on this issue and the expectation of a 24 bytes response (header)?


#4

As i tried to reproduce this issue to provide more information about it, it turned out that the issue does not occur any more. I do not know what has changed and what is a cause of this inconsistency.

If possible, pls delete this thread.

Regards
Piotr


#5

@drak25

No problem, we can keep the thread open in case it’s encountered again.


#6

Hi,

I’m having a similar problem. I’m using the same version of the database and the client.

I haven’t any problem when I’m inserting the data, but, when I’m retrieving, I expect 1 result when I’m doing a query, but I never received data.

Any ideas?


#7

@spachecojimenez -

What are the values of IOperationResult.Message, IOperationResult.StatusCode and IOperationResult.Exception when you receive no data?

-Jeff


#8

Hi,

The status code is OK, the error value is empty.

This is how I’m doing the query:

 var query = bucket.CreateQuery("queries", "ById", false);
 var result = bucket.Query<dynamic>(query);

I’m connecting to default bucket.

Thanks.


#9

@spachecojimenez

Looks like your using the Views API…this should be a separate thread since the original question was regarding K/V. That being said, check the output of your view in the admin console or call query.RawUri() and paste the url in your browser; what is the result? I suspect it’s empty. If so, it’s probably your map function.

-Jeff


#10

Ok, I’ll create a new thread and I answer you there