Byłem ciekawy, w jaki sposób klient cienkiego klienta JDBC w terminalu Oralce realizuje limit czasu zapytania. Można to ustawić, wywołując metodę setQueryTimeout java.sql.Statement (int seconds) .W jaki sposób jest realizowany limit czasu zapytania JDBC Oracle?
Czy jest to realizowane w samym sterowniku po stronie klienta? Czy nowy wątek został zainicjowany i połączony z ? A może sterownik JDBC po prostu wysyła parametr do Oracle, a następnie egzekwuje limit czasu?
Po przekroczeniu limitu czasu, jakie zasoby na kliencie i bazy danych są wydawane, a które się kręcą? Czy firma Oracle kontynuuje , aby uruchomić zapytanie, mimo że klient go porzucił lub zakończył działanie podając ? Czy po stronie klienta nadal znajduje się obiekt kursora?
Dziękuję
Czy to oznacza, że sterownik JDBC spawnuje kolejny bieżnik dla zapytania i czeka na jego wyłączenie, a następnie wysyła OCICancel? – oneself
Nie można powiedzieć, czy jest to osobny wątek, czy tylko pętla z napisem "Cokolwiek z serwera ... czy upłynął limit czasu ... Cokolwiek z serwera ... zostało przekroczone." –