Hey Todd,

This is all happening on a single machine.  I'll post more detailed timing
information when I get a chance.

- Doug

On Tue, May 11, 2010 at 8:36 PM, Todd Lipcon <[email protected]> wrote:

> Hey Doug,
>
> Maybe TCP slow start? What's the latency between the client and server?
>
> -Todd
>
> On Tue, May 11, 2010 at 8:27 PM, Doug Judd <[email protected]> wrote:
>
> > I'm noticing some additional latency on the first thrift method call that
> > involves a data transfer.  The method has the following prototype:
> >
> > typedef list<string> CellAsArray
> > list<CellAsArray> next_cells_as_arrays(1:Scanner scanner)
> >      throws (1:ClientException e),
> >
> > The client is written in Java and calls this method four times.  Each
> call
> > returns roughly the same amount of data (~500K) and they all take about
> > 30ms
> > except for the first call which takes approximately 170ms.  If I re-order
> > the requests, I see the same latency pattern, the first request is always
> > about 170ms.  I've instrumented the client and the server and have ruled
> > out
> > the application.  It appears that the additional latency is incurred when
> > the results for next_cells_as_arrays() are sent back from the thrift
> server
> > to the client.  The problem isn't with the first Thrift method call,
> > because
> > there are a couple of methods that are called prior to the offending
> call,
> > including:
> >
> >  Scanner open_scanner(1:string name, 2:ScanSpec scan_spec,
> >                       3:bool retry_table_not_found = 0)
> >      throws (1:ClientException e),
> >
> > Any ideas what might be causing this?
> >
> > - Doug
> >
>
>
>
> --
> Todd Lipcon
> Software Engineer, Cloudera
>

Reply via email to