-
1. Data: 2011-07-04 16:19:40
Temat: [postgres] dziwy z ADO/ODBC
Od: Wojciech Muła <w...@p...null.onet.pl.invalid>
Do tej pory korzystałem bezpośrednio z postgresa, ale w jednej z
aplikacji muszę przez ADO/ODBC. I jestem w ciężkim szoku, banalne
zapytania potrafią wykonywać się kilka sekund, chociaż to samo
uruchomione w konsoli wykonuje się błyskawicznie (kilka milisekund).
O dziwo wrzucenie zapytania do procedury składowanej i wywołanie jej
przez ODBC jest szybkie.
Spotkał się ktoś z podobnym zachowaniem? Jak to rozwiązać?
w.
-
2. Data: 2011-07-05 21:06:02
Temat: Re: [postgres] dziwy z ADO/ODBC
Od: "Tatarak" <n...@m...pl>
Użytkownik "Wojciech Muła" <w...@p...null.onet.pl.invalid> napisał w
wiadomości news:20110704181940.66e9eda6@cat.tac...
> Do tej pory korzystałem bezpośrednio z postgresa, ale w jednej z
> aplikacji muszę przez ADO/ODBC. I jestem w ciężkim szoku, banalne
> zapytania potrafią wykonywać się kilka sekund, chociaż to samo
> uruchomione w konsoli wykonuje się błyskawicznie (kilka milisekund).
> O dziwo wrzucenie zapytania do procedury składowanej i wywołanie jej
> przez ODBC jest szybkie.
> Spotkał się ktoś z podobnym zachowaniem? Jak to rozwiązać?
Z tego co pamietam to przez ADO mozna nawiazywac polaczenia
- synchroniczne (aplikacja jest zamrozona i czeka na odpowiedz z bazy)
- asynchronicznie (aplikacja nie jest zamrozona i nie czeka na odpowiedz z bazy)
Tryb asynchroniczny jest znacznie wolniejszy (z kilku wzgledow) od synchronicznego.
Sprawdz czy nie laczysz sie z baza w trybie asynchronicznym.
Odnosnie ODBC to nie spotkalem sie ze znaczacymi roznicami w czasach wykonania
zapytan.
Sprawdz czy driver ODBC nie ma jakis specjalnych parametrow do ustawienia dla
postgresa:
- wielkosc wewnetrznego cache?
- maksymalna ilosc, zwracanych domyslnie rekordow?
-
3. Data: 2011-07-11 06:33:52
Temat: Re: [postgres] dziwy z ADO/ODBC
Od: Wojciech Muła <w...@p...null.onet.pl.invalid>
Tatarak wrote:
> Z tego co pamietam to przez ADO mozna nawiazywac polaczenia
> - synchroniczne (aplikacja jest zamrozona i czeka na odpowiedz z bazy)
> - asynchronicznie (aplikacja nie jest zamrozona i nie czeka na odpowiedz z bazy)
> Tryb asynchroniczny jest znacznie wolniejszy (z kilku wzgledow) od synchronicznego.
> Sprawdz czy nie laczysz sie z baza w trybie asynchronicznym.
>
> Odnosnie ODBC to nie spotkalem sie ze znaczacymi roznicami w czasach wykonania
zapytan.
> Sprawdz czy driver ODBC nie ma jakis specjalnych parametrow do ustawienia dla
postgresa:
> - wielkosc wewnetrznego cache?
> - maksymalna ilosc, zwracanych domyslnie rekordow?
Dzieki za sugestie.
Problem byl bardziej prozaiczny, zostala wylaczona opcja UseServedSidePrepare,
co powodowalo, ze sterownik wykonywal mase niepotrzebnej roboty. Po wlaczeniu
zaczelo dzialac ze wzglednie normalna szybkoscia.
w.