Re: C++ Thrift client

2013-05-21 Thread aaron morton
 Aaron, whenever I get a GCInspector event log, will it means that I'm having 
 a GC pause?
Messages about ParNew are GS pauses that went over 200ms. 
CMS GC has to relatively small pauses during it's cycle. 

All ParNew GC pauses the application threads, Cassandra is just logging the 
ones that take over 200ms. If you want to see them all enable the GC logging in 
/etc/cassanda/cassandra-env.sh

Cheers
 
-
Aaron Morton
Freelance Cassandra Consultant
New Zealand

@aaronmorton
http://www.thelastpickle.com

On 18/05/2013, at 10:29 AM, Sorin Manolache sor...@gmail.com wrote:

 On 2013-05-16 02:58, Bill Hastings wrote:
 Hi All
 
 I am doing very small inserts into Cassandra in the range of say 64
 bytes. I use a C++ Thrift client and seem consistently get latencies
 anywhere between 35-45 ms. Could some one please advise as to what
 might be happening?
 
 Sniff the network traffic in order to check whether you use the same 
 connection or you open a new connection for each new insert.
 
 Also check if the client does a set_keyspace (or use keyspace) before every 
 insert. That would be wasteful too.
 
 In the worst case, the client would perform an authentication too.
 
 Inspect timestamps of the network packets in the capture file in order to 
 determine which part takes too long: the connection phase? The 
 authentication? The interval between sending the request and getting the 
 response?
 
 I do something similar (C++ Thrift, small inserts of roughly the same size as 
 you) and I get response times of 100ms for the first request when opening the 
 connection, authentifying, and setting the keyspace. But subsequent requests 
 on the same connection have response times in the range of 8-11ms.
 
 Sorin
 



Re: C++ Thrift client

2013-05-17 Thread Víctor Hugo Oliveira Molinar
Aaron, whenever I get a GCInspector event log, will it means that I'm
having a GC pause?



*Atenciosamente,*
*Víctor Hugo Molinar - *@vhmolinar http://twitter.com/#!/vhmolinar


On Thu, May 16, 2013 at 8:53 PM, aaron morton aa...@thelastpickle.comwrote:

 (Assuming you have enabled tcp_nodelay on the client socket)

 Check the server side latency, using nodetool cfstats or nodetool
 cfhistograms.

 Check the logs for messages from the GCInspector about ParNew pauses.

 Cheers

-
 Aaron Morton
 Freelance Cassandra Consultant
 New Zealand

 @aaronmorton
 http://www.thelastpickle.com

 On 16/05/2013, at 12:58 PM, Bill Hastings bllhasti...@gmail.com wrote:

 Hi All

 I am doing very small inserts into Cassandra in the range of say 64
 bytes. I use a C++ Thrift client and seem consistently get latencies
 anywhere between 35-45 ms. Could some one please advise as to what
 might be happening?

 thanks





Re: C++ Thrift client

2013-05-17 Thread Sorin Manolache

On 2013-05-16 02:58, Bill Hastings wrote:

Hi All

I am doing very small inserts into Cassandra in the range of say 64
bytes. I use a C++ Thrift client and seem consistently get latencies
anywhere between 35-45 ms. Could some one please advise as to what
might be happening?


Sniff the network traffic in order to check whether you use the same 
connection or you open a new connection for each new insert.


Also check if the client does a set_keyspace (or use keyspace) before 
every insert. That would be wasteful too.


In the worst case, the client would perform an authentication too.

Inspect timestamps of the network packets in the capture file in order 
to determine which part takes too long: the connection phase? The 
authentication? The interval between sending the request and getting the 
response?


I do something similar (C++ Thrift, small inserts of roughly the same 
size as you) and I get response times of 100ms for the first request 
when opening the connection, authentifying, and setting the keyspace. 
But subsequent requests on the same connection have response times in 
the range of 8-11ms.


Sorin



Re: C++ Thrift client

2013-05-16 Thread aaron morton
(Assuming you have enabled tcp_nodelay on the client socket)

Check the server side latency, using nodetool cfstats or nodetool cfhistograms. 

Check the logs for messages from the GCInspector about ParNew pauses.

Cheers
 
-
Aaron Morton
Freelance Cassandra Consultant
New Zealand

@aaronmorton
http://www.thelastpickle.com

On 16/05/2013, at 12:58 PM, Bill Hastings bllhasti...@gmail.com wrote:

 Hi All
 
 I am doing very small inserts into Cassandra in the range of say 64
 bytes. I use a C++ Thrift client and seem consistently get latencies
 anywhere between 35-45 ms. Could some one please advise as to what
 might be happening?
 
 thanks



C++ Thrift client

2013-05-15 Thread Bill Hastings
Hi All

I am doing very small inserts into Cassandra in the range of say 64
bytes. I use a C++ Thrift client and seem consistently get latencies
anywhere between 35-45 ms. Could some one please advise as to what
might be happening?

thanks