Thread: SSL slow when using libpq.dll

SSL slow when using libpq.dll

From
Daniel Díaz
Date:
Hi,

I'm using psqlodbc on Windows to perform a query that returns on the order of 1 million rows. 


I have noticed that, when the DSN is configured to use SSL, the query runs very slow, like three times slower. 

However, if I delete libpq.dll from the psqlodbc installation directory, the slowdown in the SSL-secured query is much less (only about 10-20% compared to the unsecured query). 

I have tried several of the latest versions of the driver, and the same thing happens in all. 

Several doubts: 

- I surmise that the absence of libpq forces the driver to use Windows' sspi service to handle the SSL, is that correct? 

- Is it normal that using sspi is that much faster? 

- Is there a way, other than deleting libpq.dll, to force the use of sspi on Windows when using the compiled distribution of the driver? 

- Can deleting libpq.dll cause problems? 

Thanks in advance, 
Daniel Díaz 

Re: SSL slow when using libpq.dll

From
Hiroshi Inoue
Date:
(2014/04/15 5:06), Daniel Díaz wrote:
> Hi,
>
> I'm using psqlodbc on Windows to perform a query that returns on the
> order of 1 million rows.
>
> I have noticed that, when the DSN is configured to use SSL, the query
> runs very slow, like three times slower.
>
> However, if I delete libpq.dll from the psqlodbc installation directory,
> the slowdown in the SSL-secured query is much less (only about 10-20%
> compared to the unsecured query).
>
> I have tried several of the latest versions of the driver, and the same
> thing happens in all.
>
> Several doubts:
>
> - I surmise that the absence of libpq forces the driver to use Windows'
> sspi service to handle the SSL, is that correct?

Yes.

> - Is it normal that using sspi is that much faster?

I can't think of the reason.

> - Is there a way, other than deleting libpq.dll, to force the use of
> sspi on Windows when using the compiled distribution of the driver?

No.

> - Can deleting libpq.dll cause problems?

Some authentication methods may be unavailable.

regards,
Hiroshi Inoue